Re: [PATCH v2 0/5] gpiolib: cdev: guard tidying

From: Bartosz Golaszewski
Date: Wed Dec 27 2023 - 09:46:55 EST


On Thu, Dec 21, 2023 at 2:20 AM Kent Gibson <warthog618@xxxxxxxxx> wrote:
>
> This series contains some tidying up of gpiolib-cdev following the
> recent adoption of guard().
>
> The first patch is a fix to protect gpio_ioctl() from having the
> gpio chip removed while the ioctl is in progress.
>
> The next couple of patches are minor fixes inspired by recent
> submissions and reviews for gpiolib.c.
>
> Patch 2 adds a missing include.
>
> Patch 3 switches allocation of struct linereq from kzalloc() to
> kvzalloc() as it can be larger than one page - even more so after the
> recent relocation of debounce_period_us.
>
> The final two patches replace wrapper functions with guards.
>
> Patch 4 tidies up the functions that use a guard on the linereq
> config_mutex.
>
> Patch 5 tidies up the functions that use a guard on the gpio_device.
>
> Changes v1 -> v2:
> - add patch 1 to protect gpio_ioctl() from chip removal
> - improve commit comment (patch 3)
> - use guard(rwsem_read) rather than rolling our own (patch 5)
>
> Cheers,
> Kent.
>
> Kent Gibson (5):
> gpiolib: cdev: add gpio_device locking wrapper around gpio_ioctl()
> gpiolib: cdev: include overflow.h
> gpiolib: cdev: allocate linereq using kvzalloc()
> gpiolib: cdev: replace locking wrappers for config_mutex with guards
> gpiolib: cdev: replace locking wrappers for gpio_device with guards
>
> drivers/gpio/gpiolib-cdev.c | 257 ++++++++++--------------------------
> 1 file changed, 70 insertions(+), 187 deletions(-)
>
> --
> 2.39.2
>

I applied the remaining patches, thanks.

Bart