[PATCH] ipmi: Fix sysfs file leak on maintenance_mode creation failure

From: Felix Gu

Date: Fri Mar 27 2026 - 09:46:29 EST


When device_create_file() for maintenance_mode_devattr fails, the error
handler only removes nr_users_devattr but forgets to remove
nr_msgs_devattr, causing a sysfs file leak.

Fixes: 627118470fcc ("ipmi: Add a maintenance mode sysfs file")
Signed-off-by: Felix Gu <ustc.gu@xxxxxxxxx>
---
drivers/char/ipmi/ipmi_msghandler.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
index 869ac87a4b6a..f59db5df69da 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -3734,6 +3734,7 @@ int ipmi_add_smi(struct module *owner,
sysfs_attr_init(&intf->maintenance_mode_devattr.attr);
rv = device_create_file(intf->si_dev, &intf->maintenance_mode_devattr);
if (rv) {
+ device_remove_file(intf->si_dev, &intf->nr_msgs_devattr);
device_remove_file(intf->si_dev, &intf->nr_users_devattr);
goto out_err_bmc_reg;
}

---
base-commit: 66ba480978ce390e631e870b740a3406e3eb6b01
change-id: 20260327-ipmi-4851eac6305f

Best regards,
--
Felix Gu <ustc.gu@xxxxxxxxx>