On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@xxxxxxxxxx> wrote: > > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > No reason any driver should ever need access to this field, so hide it. > Reviewed-by: Alexandru Ardelean <ardeleanalex@xxxxxxxxx> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > --- > drivers/iio/industrialio-core.c | 6 +++--- > include/linux/iio/iio-opaque.h | 2 ++ > include/linux/iio/iio.h | 2 -- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c > index 6fbe29f0b1de..4a4c02fea152 100644 > --- a/drivers/iio/industrialio-core.c > +++ b/drivers/iio/industrialio-core.c > @@ -1720,7 +1720,7 @@ static int iio_chrdev_open(struct inode *inode, struct file *filp) > struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev; > struct iio_dev_buffer_pair *ib; > > - if (test_and_set_bit(IIO_BUSY_BIT_POS, &indio_dev->flags)) > + if (test_and_set_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags)) > return -EBUSY; > > iio_device_get(indio_dev); > @@ -1728,7 +1728,7 @@ static int iio_chrdev_open(struct inode *inode, struct file *filp) > ib = kmalloc(sizeof(*ib), GFP_KERNEL); > if (!ib) { > iio_device_put(indio_dev); > - clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags); > + clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags); > return -ENOMEM; > } > > @@ -1754,7 +1754,7 @@ static int iio_chrdev_release(struct inode *inode, struct file *filp) > container_of(inode->i_cdev, struct iio_dev_opaque, chrdev); > struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev; > kfree(ib); > - clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags); > + clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags); > iio_device_put(indio_dev); > > return 0; > diff --git a/include/linux/iio/iio-opaque.h b/include/linux/iio/iio-opaque.h > index 2f8ef5d15a66..d7c3036861ac 100644 > --- a/include/linux/iio/iio-opaque.h > +++ b/include/linux/iio/iio-opaque.h > @@ -25,6 +25,7 @@ > * @legacy_buffer_group: attribute group for legacy buffer attributes group > * @scan_index_timestamp: cache of the index to the timestamp > * @chrdev: associated character device > + * @flags: file ops related flags including busy flag. > * @debugfs_dentry: device specific debugfs dentry > * @cached_reg_addr: cached register address for debugfs reads > * @read_buf: read buffer to be used for the initial reg read > @@ -51,6 +52,7 @@ struct iio_dev_opaque { > > unsigned int scan_index_timestamp; > struct cdev chrdev; > + unsigned long flags; > > #if defined(CONFIG_DEBUG_FS) > struct dentry *debugfs_dentry; > diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h > index 586e2dc4fbf3..ed0537015eee 100644 > --- a/include/linux/iio/iio.h > +++ b/include/linux/iio/iio.h > @@ -512,7 +512,6 @@ struct iio_buffer_setup_ops { > * @clock_id: [INTERN] timestamping clock posix identifier > * @setup_ops: [DRIVER] callbacks to call before and after buffer > * enable/disable > - * @flags: [INTERN] file ops related flags including busy flag. > * @priv: [DRIVER] reference to driver's private information > * **MUST** be accessed **ONLY** via iio_priv() helper > */ > @@ -542,7 +541,6 @@ struct iio_dev { > clockid_t clock_id; > const struct iio_buffer_setup_ops *setup_ops; > > - unsigned long flags; > void *priv; > }; > > -- > 2.31.1 >