Re: [PATCH v2 0/6] gpio: cdev: bail out of poll() if the device goes down

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

 



On Thu, Aug 17, 2023 at 08:49:52PM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>
> 
> Wake up all three wake queues (the one associated with the character
> device file, the one for V1 line events and the V2 line request one)
> when the underlying GPIO device is unregistered. This way we won't get
> stuck in poll() after the chip is gone as user-space will be forced to
> go back into a new system call and will see that gdev->chip is NULL.
> 
> v1 -> v2:
> - not much is left from v1, this time we don't repurpose the existing
>   gpio_device notifier but add a new one so that cdev structures don't
>   get unwanted events
> 
> Bartosz Golaszewski (6):
>   gpiolib: rename the gpio_device notifier
>   gpio: cdev: open-code to_gpio_chardev_data()
>   gpiolib: add a second blocking notifier to struct gpio_device
>   gpio: cdev: wake up chardev poll() on device unbind
>   gpio: cdev: wake up linereq poll() on device unbind
>   gpio: cdev: wake up lineevent poll() on device unbind
> 
>  drivers/gpio/gpiolib-cdev.c | 101 ++++++++++++++++++++++++++++++------
>  drivers/gpio/gpiolib.c      |   7 +--
>  drivers/gpio/gpiolib.h      |   9 ++--
>  3 files changed, 94 insertions(+), 23 deletions(-)
> 

I'm happier with this version.

Reviewed-by: Kent Gibson <warthog618@xxxxxxxxx>

Cheers,
Kent.



[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux