regression from commit b0ce9ce408b6 ("gpiolib: Do not unexport GPIO on freeing")

From: Marek Behún
Date: Tue Aug 08 2023 - 16:50:53 EST


Hi,

the commit b0ce9ce408b6 ("gpiolib: Do not unexport GPIO on freeing")

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b0ce9ce408b6

causes a regression on my mvebu arm board (haven't tested on other
systems), wherein if I export a GPIO to sysfs and then unexport it, it
does not disasppear from the /sys/class/gpio directory, and subsequent
writes to the export and unexport files for the gpio fail.

$ cd /sys/class/gpio
$ ls
export gpiochip0 gpiochip32 gpiochip512 unexport
$ echo 43 >export
$ ls
export gpio43 gpiochip0 gpiochip32 gpiochip512
unexport
$ cat gpio43/value
1
$ echo 43 >unexport
$ ls
export gpio43 gpiochip0 gpiochip32 gpiochip512
unexport
$ echo 43 >unexport
ash: write error: Invalid argument
$ echo 43 >export
ash: write error: Operation not permitted

Marek