lkml.org 
[lkml]   [2019]   [Aug]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 005/157] iio: Fix scan mask selection
    3.16.72-rc1 review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Lars-Peter Clausen <lars@metafoo.de>

    commit 20ea39ef9f2f911bd01c69519e7d69cfec79fde3 upstream.

    The trialmask is expected to have all bits set to 0 after allocation.
    Currently kmalloc_array() is used which does not zero the memory and so
    random bits are set. This results in random channels being enabled when
    they shouldn't. Replace kmalloc_array() with kcalloc() which has the same
    interface but zeros the memory.

    Note the fix is actually required earlier than the below fixes tag, but
    will require a manual backport due to move from kmalloc to kmalloc_array.

    Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
    Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
    Fixes commit 057ac1acdfc4 ("iio: Use kmalloc_array() in iio_scan_mask_set()").
    Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    drivers/iio/industrialio-buffer.c | 5 ++---
    1 file changed, 2 insertions(+), 3 deletions(-)

    --- a/drivers/iio/industrialio-buffer.c
    +++ b/drivers/iio/industrialio-buffer.c
    @@ -836,9 +836,8 @@ int iio_scan_mask_set(struct iio_dev *in
    const unsigned long *mask;
    unsigned long *trialmask;

    - trialmask = kmalloc_array(BITS_TO_LONGS(indio_dev->masklength),
    - sizeof(*trialmask),
    - GFP_KERNEL);
    + trialmask = kcalloc(BITS_TO_LONGS(indio_dev->masklength),
    + sizeof(*trialmask), GFP_KERNEL);
    if (trialmask == NULL)
    return -ENOMEM;
    if (!indio_dev->masklength) {
    \
     
     \ /
      Last update: 2019-08-10 22:44    [W:2.071 / U:0.644 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site