Re: [PATCH] iio: querying buffer scan_mask should return 0/1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ah, an obscure platform used by hardly anyone ;)

Oops.

Given timing this will be post the merge window, but I'll mark it for stable.

On 19/03/14 21:33, Alec Berg wrote:
I'm using x86, not sure what other architectures, if any, that it affects.

Thanks.


On Wed, Mar 19, 2014 at 1:31 PM, Jonathan Cameron <jic23@xxxxxxxxxx <mailto:jic23@xxxxxxxxxx>> wrote:



    On March 19, 2014 6:50:44 PM GMT+00:00, Alec Berg <alecaberg@xxxxxxxxxxxx <mailto:alecaberg@xxxxxxxxxxxx>> wrote:
     >Ensure that querying the IIO buffer scan_mask returns a value of
     >0 or 1. Currently querying the scan mask has the value returned
     >by test_bit(), which returns either true or false. For some
     >architectures test_bit() may return -1 for true, which will appear
     >to return an error when returning from iio_scan_mask_query().
    I'm curious now.  Which architectures?  Change is fine BTW. Will pick when I get a few mins...
     >
     >Additionally, it's important for the sysfs interface to consistently
     >return the same thing when querying the scan_mask.
     >
     >Signed-off-by: Alec Berg <alecaberg@xxxxxxxxxxxx <mailto:alecaberg@xxxxxxxxxxxx>>
     >---
     > drivers/iio/industrialio-buffer.c | 6 ++++--
     > 1 file changed, 4 insertions(+), 2 deletions(-)
     >
     >diff --git a/drivers/iio/industrialio-buffer.c
     >b/drivers/iio/industrialio-buffer.c
     >index c67d83b..fe25042 100644
     >--- a/drivers/iio/industrialio-buffer.c
     >+++ b/drivers/iio/industrialio-buffer.c
     >@@ -165,7 +165,8 @@ static ssize_t iio_scan_el_show(struct device *dev,
     >       int ret;
     >       struct iio_dev *indio_dev = dev_to_iio_dev(dev);
     >
     >-      ret = test_bit(to_iio_dev_attr(attr)->address,
     >+      /* Ensure ret is 0 or 1. */
     >+      ret = !!test_bit(to_iio_dev_attr(attr)->address,
     >                      indio_dev->buffer->scan_mask);
     >
     >       return sprintf(buf, "%d\n", ret);
     >@@ -866,7 +867,8 @@ int iio_scan_mask_query(struct iio_dev *indio_dev,
     >       if (!buffer->scan_mask)
     >               return 0;
     >
     >-      return test_bit(bit, buffer->scan_mask);
     >+      /* Ensure return value is 0 or 1. */
     >+      return !!test_bit(bit, buffer->scan_mask);
     > };
     > EXPORT_SYMBOL_GPL(iio_scan_mask_query);
     >

    --
    Sent from my Android phone with K-9 Mail. Please excuse my brevity.



--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux