summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-02-21sctp: Fix port hash table size computationNeil Horman
Dmitry Vyukov noted recently that the sctp_port_hashtable had an error in its size computation, observing that the current method never guaranteed that the hashsize (measured in number of entries) would be a power of two, which the input hash function for that table requires. The root cause of the problem is that two values need to be computed (one, the allocation order of the storage requries, as passed to __get_free_pages, and two the number of entries for the hash table). Both need to be ^2, but for different reasons, and the existing code is simply computing one order value, and using it as the basis for both, which is wrong (i.e. it assumes that ((1<<order)*PAGE_SIZE)/sizeof(bucket) is still ^2 when its not). To fix this, we change the logic slightly. We start by computing a goal allocation order (which is limited by the maximum size hash table we want to support. Then we attempt to allocate that size table, decreasing the order until a successful allocation is made. Then, with the resultant successful order we compute the number of buckets that hash table supports, which we then round down to the nearest power of two, giving us the number of entries the table actually supports. I've tested this locally here, using non-debug and spinlock-debug kernels, and the number of entries in the hashtable consistently work out to be powers of two in all cases. Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Reported-by: Dmitry Vyukov <dvyukov@google.com> CC: Dmitry Vyukov <dvyukov@google.com> CC: Vladislav Yasevich <vyasevich@gmail.com> CC: "David S. Miller" <davem@davemloft.net> Signed-off-by: David S. Miller <davem@davemloft.net>
2016-02-21dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq pathsMike Snitzer
Using request-based DM mpath configured with the following stacking (.request_fn DM mpath ontop of scsi-mq paths): echo Y > /sys/module/scsi_mod/parameters/use_blk_mq echo N > /sys/module/dm_mod/parameters/use_blk_mq 'struct dm_rq_target_io' would leak if a request is requeued before a blk-mq clone is allocated (or fails to allocate). free_rq_tio() wasn't being called. kmemleak reported: unreferenced object 0xffff8800b90b98c0 (size 112): comm "kworker/7:1H", pid 5692, jiffies 4295056109 (age 78.589s) hex dump (first 32 bytes): 00 d0 5c 2c 03 88 ff ff 40 00 bf 01 00 c9 ff ff ..\,....@....... e0 d9 b1 34 00 88 ff ff 00 00 00 00 00 00 00 00 ...4............ backtrace: [<ffffffff81672b6e>] kmemleak_alloc+0x4e/0xb0 [<ffffffff811dbb63>] kmem_cache_alloc+0xc3/0x1e0 [<ffffffff8117eae5>] mempool_alloc_slab+0x15/0x20 [<ffffffff8117ec1e>] mempool_alloc+0x6e/0x170 [<ffffffffa00029ac>] dm_old_prep_fn+0x3c/0x180 [dm_mod] [<ffffffff812fbd78>] blk_peek_request+0x168/0x290 [<ffffffffa0003e62>] dm_request_fn+0xb2/0x1b0 [dm_mod] [<ffffffff812f66e3>] __blk_run_queue+0x33/0x40 [<ffffffff812f9585>] blk_delay_work+0x25/0x40 [<ffffffff81096fff>] process_one_work+0x14f/0x3d0 [<ffffffff81097715>] worker_thread+0x125/0x4b0 [<ffffffff8109ce88>] kthread+0xd8/0xf0 [<ffffffff8167cb8f>] ret_from_fork+0x3f/0x70 [<ffffffffffffffff>] 0xffffffffffffffff crash> struct -o dm_rq_target_io struct dm_rq_target_io { ... } SIZE: 112 Fixes: e5863d9ad7 ("dm: allocate requests in target when stacking on blk-mq devices") Cc: stable@vger.kernel.org # 4.0+ Signed-off-by: Mike Snitzer <snitzer@redhat.com>
2016-02-21iio: hmc5843: Add ABI documentation file for hmc5843Cristina Moraru
Add ABI file documenting hmc5843 non-standard attributes meas_conf and meas_conf_available for bias current configuration. Signed-off-by: Cristina Moraru <cristina.moraru09@gmail.com> Cc: Daniel Baluta <daniel.baluta@intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2016-02-21iio: hmc5843: Add attributes for measurement config of bias currentCristina Moraru
Change static attribute meas_conf for bias current configuration to channel attribute in_magn_meas_conf and also add in_magn_meas_conf_available attribute to view available configurations. This patch solves functionality bug: driver was using same function hmc5843_set_measurement_configuration for setting bias current config for all device types but the function was returning -EINVAL for any setting >= 0x03 although, for sensor HMC5983, value 3 is valid. API for setting bias measurement configuration: normal - Normal measurement configuration (default): In normal measurement configuration the device follows normal measurement flow. Pins BP and BN are left floating and high impedance. positivebias - Positive bias configuration: In positive bias configuration, a positive current is forced across the resistive load on pins BP and BN. negativebias - Negative bias configuration. In negative bias configuration, a negative current is forced across the resistive load on pins BP and BN. disabled - Only available on HMC5983. Magnetic sensor is disabled. Temperature sensor is enabled. Signed-off-by: Cristina Moraru <cristina.moraru09@gmail.com> Cc: Daniel Baluta <daniel.baluta@intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2016-02-21Merge tag 'irqchip-urgent-4.5' of ↵Thomas Gleixner
git://git.infradead.org/users/jcooper/linux into irq/urgent Pull irqchip fixes for v4.5 from Jason Cooper: - mxs: Add a missing set_handle_irq()
2016-02-21power: bq27xxx_battery: Restore device nameIvaylo Dimitrov
Patch <703df6c09795> ("power: bq27xxx_battery: Reorganize I2C into a module") has removed the device name numbering from bq27xxx_battery_i2c_probe. Fix that by restoring the code. Fixes: 703df6c097956d17a818e63961c82e8e9eef9fef Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> Reviewed-by: Pali Rohár <pali.rohar@gmail.com> Tested-by: Pali Rohár <pali.rohar@gmail.com> Signed-off-by: Sebastian Reichel <sre@kernel.org>
2016-02-21MAINTAINERS: update bq27xxx driverSebastian Reichel
Update reviewers for bq27xxx, so that Pali and Andrew are reviewers with status and maintainer inherited from the power supply subsystem entry. Signed-off-by: Sebastian Reichel <sre@kernel.org> Acked-by: Pali Rohár <pali.rohar@gmail.com> Acked-by: Andrew F. Davis <afd@ti.com>
2016-02-21can: ems_usb: Fix possible tx overflowGerhard Uttenthaler
This patch fixes the problem that more CAN messages could be sent to the interface as could be send on the CAN bus. This was more likely for slow baud rates. The sleeping _start_xmit was woken up in the _write_bulk_callback. Under heavy TX load this produced another bulk transfer without checking the free_slots variable and hence caused the overflow in the interface. Signed-off-by: Gerhard Uttenthaler <uttenthaler@ems-wuensche.com> Cc: linux-stable <stable@vger.kernel.org> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-02-20drivers: android: correct the size of struct binder_uintptr_t for ↵Lisa Du
BC_DEAD_BINDER_DONE There's one point was missed in the patch commit da49889deb34 ("staging: binder: Support concurrent 32 bit and 64 bit processes."). When configure BINDER_IPC_32BIT, the size of binder_uintptr_t was 32bits, but size of void * is 64bit on 64bit system. Correct it here. Signed-off-by: Lisa Du <cldu@marvell.com> Signed-off-by: Nicolas Boichat <drinkcat@chromium.org> Fixes: da49889deb34 ("staging: binder: Support concurrent 32 bit and 64 bit processes.") Cc: <stable@vger.kernel.org> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: gdm72xx: Remove wrapper function put_event_entryShraddha Barke
put_event_entry is used only once. Replace it's usage with direct call to list_add_tail(). Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: gdm72xx: Remove unnecessary parenthesis around function pointerShraddha Barke
No need for the parentheses around any function pointer. Detected using checkpatch. Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: gdm72xx: Add space around that "+", "&" and "/"Shraddha Barke
Add missing spaces around "+", "&" and "/" to follow kernel coding style. Warning detected by checkpatch. Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: gdm72xx: Add space around that "+", "&" and "|"Shraddha Barke
Add missing spaces around "+", "&" and "|" to follow kernel coding style. Warning detected by checkpatch. Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Fix comparisons to NULLShaun Ren
This patch changes all comparsions to NULL with !..., as reported by checkpatch.pl. Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Remove unnecessary parenthesesShaun Ren
This patch removes all unnecessary parentheses found by checkpatch.pl. Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Fix label naming conventionShaun Ren
This patch fixes the following naming convention issue in rtsx_transport.c, as reported by checkpatch.pl: CHECK: Avoid CamelCase: <Handle_Errors> Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Remove extra newlinesShaun Ren
This patch fixes the following issues in rtsx_transport.c as reported by checkpatch.pl: CHECK: Blank lines aren't necessary after an open brace '{' CHECK: Please don't use multiple blank lines Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Add spaces around -Shaun Ren
This patch fixes the following styling issue in rtsx_transport.c as reported by checkpatch.pl: CHECK: spaces preferred around that '-' (ctx:VxV) Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Remove spaces after castsShaun Ren
This patch removes all spaces after casts in rtsx_transport.c, as reported by checkpatch.pl: CHECK: No space is necessary after a cast Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Align to open parenthesisShaun Ren
This patch fixes the alignment issue reported by checkpatch.pl: CHECK: Alignment should match open parenthesis Add a unsigned char *sgbuffer in rtsx_stor_access_xfer_buffer to make the following memcpy logic easier to read. Add a struct scatterlist *sg in the use_sg branch of rtsx_transfer_data_partial to make the parameters of the rtsx_transfer_sglist_adma_partial call fit in 80 character lines after aligning them to the open parenthesis. Refactor memcpy logic in rtsx_stor_access_xfer_buf to make it more legible. Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: rts5208: rtsx_transport.c: Cleanup commentsShaun Ren
This patch fixes all multiline comments to conform to the coding style, which states that multiline comments should start with "/*" and end with "*/" on a separate line. Also cleans up some comments to make them more clear and/or reflect what the code is doing. Signed-off-by: Shaun Ren <shaun.ren@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: sm750fb: remove sm750_help.hMike Rapoport
This header only contains unused FIELD_*() macros and friends and may be removed Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: sm750fb: move MHz() and roundedDiv() close to their usageMike Rapoport
The MHz() and roundedDiv macros are used only by ddk750_chip.c, so move their definition there. Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: sm750fb: replace absDiff with kernel standard abs macroMike Rapoport
<linux/kernel.h> already has 'abs', use it instead of custom absDiff Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: sm750: change definition of multi-bit register fieldsMike Rapoport
Use stratigh-forward of multi-bit register fields Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: sm750fb: use BIT() macro for single-bit fields definitionMike Rapoport
Replace complex definition of single-bit fields with BIT() macro for the registers that are not currently referenced by the driver. Signed-off-by: Mike Rapoport <mike.rapoport@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: nvec: Fix alignment with the open parenthesisLaura Garcia Liebana
Alignment should match open parenthesis. Checkpatch detected these issues. Signed-off-by: Laura Garcia Liebana <nevola@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: nvec: Use the BIT macroLaura Garcia Liebana
Prefer using the BIT macro instead of (1 << X). Checkpatch detected this issue. Signed-off-by: Laura Garcia Liebana <nevola@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: terminate "write" command when stoppedIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the current position. An asynchronous command in the "read" direction is terminated automatically once it has stopped and information about the final position and error has been reported back to the user. That is not currently done for commands in the "write" direction. Change it to terminate the command in the "write" direction automatically. If the command stopped with an error, report an `EPIPE` error back to the user, otherwise just report the final buffer position back to the user. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: return -EPIPE for abnormal readIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the current position. If an asynchronous command in the "read" direction has stopped normally, the command is terminated as soon as the position has been advanced to the end of all available data. This is not currently done if the command terminated with an error. Change it to allow the command to be terminated even if it stopped with an error, but report an `EPIPE` error to the user first. The `EPIPE` error will not be reported until the "read" position reported back to the user has been advanced to the end of all available data. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: become non-busy even if bytes_read is 0Ian Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the new position. On input, the `bytes_read` member of `struct comedi_bufinfo` specified the amount to advance the "read" position for an asynchronous command in the "read" direction. If the command has already stopped normally, and the "read" position has been advanced to the end of all available data, the command is terminated by calling `do_become_nonbusy()`. (That is not currently done if the command stopped with an error.) Currently, the command is only terminated if the user is trying to advance the "read" position by a non-zero amount. Change it to allow the command to be terminated even if the user is not trying to advance the "read" position. This is justifiable, as the only time a command stops without error is when it has been set up to read a finite amount of data. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: return error if no active commandIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer and/or get the current buffer position. If no asynchronous command is active (started via the file object that issued this ioctl), this information is meaningless. Change it to return an error (`-EINVAL`) in this case. Prior to this change, if a command was started via a different file object, the ioctl returned `-EACCES`, but now it will return `-EINVAL`, which is consistent with the current behavior of the "read" and "write" file operation handlers. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: force bytes_written to 0 if stoppedIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the new position. On input, the `bytes_written` member of `struct comedi_bufinfo` specifies the amount to advance the "write" position for an asynchronous command in the "write" direction. On output, the member indicates the amount the "write" position has actually been advanced. Advancing the "write" position is current done even if the command has stopped and cannot use any more written data. Change it to force the amount successfully written to 0 in that case. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: update buffer before becoming non-busyIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the new position. For an asynchronous command in the "read" direction, if the command has finished acquiring data normally, `do_become_nonbusy()` is called to terminate the command. That resets the buffer position, and currently, the position information returned back to the user is after the buffer has been reset. It should be more useful to return the buffer position before the reset, so move the call to `do_become_nonbusy()` after the code that gets the updated buffer position. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: force bytes_read or bytes_written to 0Ian Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the new position. On input, the `bytes_read` member of `struct comedi_bufinfo` specifies the amount to advance the "read" position for an asynchronous command in the "read" direction, and the `bytes_written` member specifies the amount to advance the "write" position for a command in the "write" direction. The handler `do_bufinfo_ioctl()` may adjust these by the amount the position is actually advanced before copying them back to the user. Currently, it ignores the specified `bytes_read` value for a command in the "write" direction, and ignores the specified `bytes_written` for a command in the "read" direction, so the values copied back to the user are unchanged. Change it to force the ignored value to 0 before copying the values back to the user. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: COMEDI_BUFINFO: get amount freed, not amount allocatedIan Abbott
The `COMEDI_BUFINFO` ioctl is used to advance the current position in the buffer by a specified amount (which can be 0) and get the new position. On input, the `bytes_read` member of `struct comedi_bufinfo` specifies the amount to advance the "read" position for an asynchronous command in the "read" direction, and the `bytes_written` member specifies the amount to advance the "write" position for a command in the "write" direction. The handler `do_bufinfo_ioctl()` may limit the specified values according to amount of readable or writable space in the buffer. On output, the `struct comedi_bufinfo` is filled in with the updated position information, along with the adjusted `bytes_read` and `bytes_written` members. Advancing the buffer position occurs in two steps: first, some buffer space is allocated, and second, it is freed, advancing the current "read" or "write" position. Currently, `do_bufinfo_ioctl()` limits `bytes_read` or `bytes_written` to the amount it could allocate in the first step, but that is invisible and irrelevant to the ioctl user. It's mostly irrelevant to the COMEDI internals as well, apart from limiting how much can be freed in the second step. Change it to ignore how much it managed to allocate in the first step and just use the amount that was actually freed in the second step, which is the amount the current buffer position was actually moved by this ioctl call. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: drivers: Use DIV_ROUND_CLOSESTAmitoj Kaur Chawla
The kernel.h macro DIV_ROUND_CLOSEST performs the computation `(x +d/2)/d` but is perhaps more readable. The Coccinelle script used is as follows: // <smpl> @@ expression x,__divisor; @@ - (((x) + ((__divisor) / 2)) / (__divisor)) + DIV_ROUND_CLOSEST(x,__divisor) // </smpl> Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: comedi: drivers: Remove unnecessary else following returnJanani Ravichandran
Else is unnecessary when there is a return statement in the corresponding if block. Coccinelle patch: @rule1@ expression e1; @@ if (e1) { ... return ...; } - else{ ... - } @rule2@ expression e2; statement s1; @@ if(e2) { ... return ...; } - else s1 Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: android: Remove unneeded else following a returnJanani Ravichandran
Remove unnecessary else when there is a return statement in the corresponding if block. Coccinelle patch used: @rule1@ expression e1; @@ if (e1) { ... return ...; } - else{ ... - } @rule2@ expression e2; statement s1; @@ if(e2) { ... return ...; } - else s1 Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: mt29f_spinand: Remove unneeded else following returnJanani Ravichandran
Remove unnecessary else when there is a return statement in the corresponding if block. Coccinelle patch used: @rule1@ expression e1; @@ if (e1) { ... return ...; } - else{ ... - } @rule2@ expression e2; statement s1; @@ if(e2) { ... return ...; } - else s1 Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: vt6656: simplify tests of successful urb statusAlison Schofield
Use if (status) in tests for successful urb status. This replaces (status != 0) and (status == STATUS_SUCCESS). (STATUS_SUCCESS is defined for NDIS status in this driver, but was being misused) Signed-off-by: Alison Schofield <amsfield22@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: rtl8712: Replace explicit NULL comparisonBhaktipriya Shridhar
Replace explicit NULL comparison with ! operator. Found with Coccinelle. @@ expression e; @@ - e == NULL + !e Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: rtl8712: reduce stack usageArnd Bergmann
The "translate_scan" function in rtl8712 uses a lot of stack, and gets inlined into its single caller, r8711_wx_get_scan, which in some configurations now blows the 1024 byte stack warning limit: drivers/staging/rtl8712/rtl871x_ioctl_linux.c: In function 'r8711_wx_get_scan': drivers/staging/rtl8712/rtl871x_ioctl_linux.c:1227:1: error: the frame size of 1032 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] This somewhat reduces the stack usage by moving the translate_scan function out of line with the noinline_for_stack annotation. It might be possible to modify translate_scan() a little further to reduce the stack usage, but with this patch, we can build without the warning, the the call chain to get here is rather predictable (sys_ioctl->vfs_ioctl->sock_ioctl->dev_ioctl->wext_ioctl-> r8711_wx_get_scan). Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: rtl8712: Improve suspend/resume functionality.Hemmo Nieminen
Fix a driver hang caused by earlier suspend/resume cycles. By handling a ENODEV error during suspend as a real error we eventually end up stopping the whole driver. Fix this by handling the ENODEV error (during suspend) essentially by retrying. Signed-off-by: Hemmo Nieminen <hemmo.nieminen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: rtl8712: Declare function as staticAmitoj Kaur Chawla
Declare rtl871x_intf_resume() function static since it is defined and called in this file only. This fixes the following sparse warning: warning: symbol 'rtl871x_intf_resume' was not declared. Should it be static? Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: fsl-mc: Remove unneeded else following a returnJanani Ravichandran
Remove unnecessary else when there is a return statement in the corresponding if block. Coccinelle patch used: @rule1@ expression e1; @@ if (e1) { ... return ...; } - else{ ... - } @rule2@ expression e2; statement s1; @@ if(e2) { ... return ...; } - else s1 Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: fsl-mc: bus: Drop owner assignment from platform_driverBhumika Goyal
For platform_driver, we don't need to set .owner field as is set by platform driver core. The semantic patch used here first checks whether platform_driver struct was actually used in a call to set the .owner field. The coccinelle script that generated the patch can be found here: http://www.spinics.net/lists/kernel/msg2029903.html Signed-off-by: Bhumika Goyal <bhumirks@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20Staging: octeon: Remove blank lines after open bracesDilek Uzulmez
This patch fixes "blank lines aren't necessary after an open brace '{'" checkpatch.pl warning in ethernet.c Signed-off-by: Dilek Uzulmez <dilekuzulmez@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon: drop atomic usage from rx countersAaro Koskinen
We have only one NAPI poll running at a time, so virtual port rx counters can be updated normally. Update of rx_dropped can still race with the gathering of statistics, but full accuracy is not required there. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Acked-by: David Daney <david.daney@cavium.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: make driver name to match the file nameAaro Koskinen
Make driver name to match the file name. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>