[PATCH] gpio: sim: Remove intermediate pointer variable and harden function
From: Maxwell Doose
Date: Thu Apr 23 2026 - 18:32:50 EST
Remove the *pdev intermediate variable and directly dereference the
pointer. While at it, replace sprintf() calls with sysfs_emit() to
harden the driver.
Signed-off-by: Maxwell Doose <m32285159@xxxxxxxxx>
---
drivers/gpio/gpio-sim.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/gpio-sim.c b/drivers/gpio/gpio-sim.c
index 13b87c8e6d0c..3c230f94eea2 100644
--- a/drivers/gpio/gpio-sim.c
+++ b/drivers/gpio/gpio-sim.c
@@ -691,15 +691,13 @@ static ssize_t gpio_sim_device_config_dev_name_show(struct config_item *item,
char *page)
{
struct gpio_sim_device *dev = to_gpio_sim_device(item);
- struct platform_device *pdev;
guard(mutex)(&dev->lock);
- pdev = dev->probe_data.pdev;
- if (pdev)
- return sprintf(page, "%s\n", dev_name(&pdev->dev));
+ if (dev->probe_data.pdev)
+ return sysfs_emit(page, "%s\n", dev_name(&dev->probe_data.pdev->dev));
- return sprintf(page, "gpio-sim.%d\n", dev->id);
+ return sysfs_emit(page, "gpio-sim.%d\n", dev->id);
}
CONFIGFS_ATTR_RO(gpio_sim_device_config_, dev_name);
--
2.53.0