]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ACPI: TAD: Add missing sysfs_remove_group() for ACPI_TAD_RT
authorDaniel Tang <danielzgtg.opensource@gmail.com>
Thu, 28 Aug 2025 05:38:14 +0000 (01:38 -0400)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 4 Sep 2025 18:19:36 +0000 (20:19 +0200)
Previously, after `rmmod acpi_tad`, `modprobe acpi_tad` would fail
with this dmesg:

sysfs: cannot create duplicate filename '/devices/platform/ACPI000E:00/time'
Call Trace:
 <TASK>
 dump_stack_lvl+0x6c/0x90
 dump_stack+0x10/0x20
 sysfs_warn_dup+0x8b/0xa0
 sysfs_add_file_mode_ns+0x122/0x130
 internal_create_group+0x1dd/0x4c0
 sysfs_create_group+0x13/0x20
 acpi_tad_probe+0x147/0x1f0 [acpi_tad]
 platform_probe+0x42/0xb0
 </TASK>
acpi-tad ACPI000E:00: probe with driver acpi-tad failed with error -17

Fixes: 3230b2b3c1ab ("ACPI: TAD: Add low-level support for real time capability")
Signed-off-by: Daniel Tang <danielzgtg.opensource@gmail.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Link: https://patch.msgid.link/2881298.hMirdbgypa@daniel-desktop3
Cc: 5.2+ <stable@vger.kernel.org> # 5.2+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpi_tad.c

index 91d7d90c47dacc4c04a7f749584875f5383005be..33418dd6768a1b112486ee2c875fee71583b6029 100644 (file)
@@ -565,6 +565,9 @@ static void acpi_tad_remove(struct platform_device *pdev)
 
        pm_runtime_get_sync(dev);
 
+       if (dd->capabilities & ACPI_TAD_RT)
+               sysfs_remove_group(&dev->kobj, &acpi_tad_time_attr_group);
+
        if (dd->capabilities & ACPI_TAD_DC_WAKE)
                sysfs_remove_group(&dev->kobj, &acpi_tad_dc_attr_group);