[GIT PULL] gpio: fixes for v6.8-rc1

From: Bartosz Golaszewski
Date: Thu Jan 18 2024 - 07:53:28 EST


From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

Linus,

Please pull the following set of fixes for the upcoming RC. Apart from
some regular driver fixes there's a relatively big revert of the locking
changes that were introduced to GPIOLIB in this merge window. This is
needed because it turned out that some legacy GPIO interfaces - that need
to translate a number from the global GPIO numberspace to the address of
the relevant descriptor, thus running a GPIO device lookup and taking the
GPIO device list lock - are still used in old code from atomic context
resulting in "scheduling while atomic" errors.

I'll try to make the read-only part of the list access entirely lockless
using SRCU but this will take some time so let's go back to the old global
spinlock for now.

Please pull,
Bartosz Golaszewski

The following changes since commit 576db73424305036a6aa9e40daf7109742fbb1df:

Merge tag 'gpio-updates-for-v6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux (2024-01-12 13:35:31 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git tags/gpio-fixes-for-v6.8-rc1

for you to fetch changes up to efb8235bfdbe661c460f803150b50840a73b5f03:

gpiolib: revert the attempt to protect the GPIO device list with an rwsem (2024-01-17 09:52:37 +0100)

----------------------------------------------------------------
gpio fixes for v6.8-rc1

- revert the changes aiming to use a read-write semaphore to protect the
list of GPIO devices due to calls to legacy API taking that lock from
atomic context in old code
- fix inverted logic in DEFINE_FREE() for GPIO device references
- check the return value of bgpio_init() in gpio-mlxbf3
- fix node address in the DT bindings example for gpio-xilinx
- fix signedness bug in gpio-rtd
- fix kernel-doc warnings in gpio-en7523

----------------------------------------------------------------
Bartosz Golaszewski (1):
gpiolib: revert the attempt to protect the GPIO device list with an rwsem

Dan Carpenter (1):
gpio: rtd: Fix signedness bug in probe

Lukas Wunner (1):
gpiolib: Fix scope-based gpio_device refcounting

Michal Simek (1):
dt-bindings: gpio: xilinx: Fix node address in gpio

Randy Dunlap (1):
gpio: EN7523: fix kernel-doc warnings

Su Hui (1):
gpio: mlxbf3: add an error code check in mlxbf3_gpio_probe

.../devicetree/bindings/gpio/xlnx,gpio-xilinx.yaml | 2 +-
drivers/gpio/gpio-en7523.c | 6 +-
drivers/gpio/gpio-mlxbf3.c | 2 +
drivers/gpio/gpio-rtd.c | 15 ++-
drivers/gpio/gpiolib-sysfs.c | 45 +++----
drivers/gpio/gpiolib-sysfs.h | 6 -
drivers/gpio/gpiolib.c | 135 +++++++++++----------
drivers/gpio/gpiolib.h | 2 -
include/linux/gpio/driver.h | 2 +-
9 files changed, 114 insertions(+), 101 deletions(-)