summaryrefslogtreecommitdiffstats
path: root/drivers/staging
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2011-12-19 15:23:43 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2011-12-22 13:38:07 -0800
commit5fd6218ca5928e4b59eb8a496aa1428fae1fb0d6 (patch)
tree62f88704e2776c842684c5d3ae0f79636829e185 /drivers/staging
parentd4a6882e1b9f01fa5bf7bb695081133121106dbb (diff)
downloadlinux-5fd6218ca5928e4b59eb8a496aa1428fae1fb0d6.tar.bz2
staging:iio: Disallow changing scan elements in all buffered modes
Currently we only disallow changing the scan elements, while the buffer is enabled, in triggered buffer mode. This patch changes it to disallow it for all buffered modes. Disabling or enabling scan elements while the buffer is enabled will cause undefined behavior since the reader will not be able to tell samples with the new and old scan element set apart and thus wont be able to extract any meaningful data from the buffer. Acked-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging')
-rw-r--r--drivers/staging/iio/industrialio-buffer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/staging/iio/industrialio-buffer.c b/drivers/staging/iio/industrialio-buffer.c
index 36993038b261..747b9013a666 100644
--- a/drivers/staging/iio/industrialio-buffer.c
+++ b/drivers/staging/iio/industrialio-buffer.c
@@ -153,7 +153,7 @@ static ssize_t iio_scan_el_store(struct device *dev,
state = !(buf[0] == '0');
mutex_lock(&indio_dev->mlock);
- if (indio_dev->currentmode == INDIO_BUFFER_TRIGGERED) {
+ if (iio_buffer_enabled(indio_dev)) {
ret = -EBUSY;
goto error_ret;
}
@@ -196,7 +196,7 @@ static ssize_t iio_scan_el_ts_store(struct device *dev,
state = !(buf[0] == '0');
mutex_lock(&indio_dev->mlock);
- if (indio_dev->currentmode == INDIO_BUFFER_TRIGGERED) {
+ if (iio_buffer_enabled(indio_dev)) {
ret = -EBUSY;
goto error_ret;
}