On Fri, 22 Nov 2019 15:24:10 +0200 Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx> wrote: > There is a general effort for cleaning up `indio_dev->mlock` usage in IIO > drivers. As part of that some ADIS drivers also need to do that. > > This changeset does a little more, by reworking the `txrx_lock` from the > ADIS library to be used as a general `state_lock` to protect state between > consecutive read/write ops. > > As such, all users of the ADIS lib have been verified to have their usage > of mlock checked. Some just needed the mlock usage removed (as done in > > Changelog v1 -> v2: > * this patchset has got more testing in our repo since last time - also > found a bug in v1 > * tested with `make ARCH=x86_64 allmodconfig` ; seems this is how Greg > found the issue and we didn't > > Alexandru Ardelean (11): > iio: imu: adis: rename txrx_lock -> state_lock > iio: imu: adis: add unlocked read/write function versions > iio: imu: adis[16480]: group RW into a single lock in > adis_enable_irq() > iio: imu: adis: create an unlocked version of adis_check_status() > iio: imu: adis: create an unlocked version of adis_reset() > iio: imu: adis: protect initial startup routine with state lock > iio: imu: adis: group single conversion under a single state lock > iio: imu: adis16400: rework locks using ADIS library's state lock > iio: gyro: adis16136: rework locks using ADIS library's state lock > iio: imu: adis16480: use state lock for filter freq set > iio: gyro: adis16260: replace mlock with ADIS lib's state_lock > > drivers/iio/gyro/adis16136.c | 31 ++++--- > drivers/iio/gyro/adis16260.c | 6 +- > drivers/iio/imu/adis.c | 94 +++++++++++---------- > drivers/iio/imu/adis16400.c | 51 ++++++------ > drivers/iio/imu/adis16480.c | 17 ++-- > drivers/iio/imu/adis_buffer.c | 4 +- > include/linux/iio/imu/adis.h | 150 ++++++++++++++++++++++++++++++++-- > 7 files changed, 258 insertions(+), 95 deletions(-) > All applied to the togreg branch of iio.git and pushed out as testing to get some build coverage. Thanks, Jonathan