]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
gpiolib: fix debugfs newline separators
authorJohan Hovold <johan+linaro@kernel.org>
Mon, 28 Oct 2024 12:49:58 +0000 (13:49 +0100)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 31 Oct 2024 18:14:17 +0000 (19:14 +0100)
The gpiolib debugfs interface exports a list of all gpio chips in a
system and the state of their pins.

The gpio chip sections are supposed to be separated by a newline
character, but a long-standing bug prevents the separator from
being included when output is generated in multiple sessions, making the
output inconsistent and hard to read.

Make sure to only suppress the newline separator at the beginning of the
file as intended.

Fixes: f9c4a31f6150 ("gpiolib: Use seq_file's iterator interface")
Cc: stable@vger.kernel.org # 3.7
Cc: Thierry Reding <treding@nvidia.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20241028125000.24051-2-johan+linaro@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpiolib.c

index d5952ab7752c2a8ecc1b04abaa2588455d24e578..e27488a90bc97d4ccbd2acadef949b29d2d776fa 100644 (file)
@@ -4926,6 +4926,8 @@ static void *gpiolib_seq_start(struct seq_file *s, loff_t *pos)
                return NULL;
 
        s->private = priv;
+       if (*pos > 0)
+               priv->newline = true;
        priv->idx = srcu_read_lock(&gpio_devices_srcu);
 
        list_for_each_entry_srcu(gdev, &gpio_devices, list,