Patch "firmware: arm_scmi: Fix duplicate workqueue name" has been added to the 5.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    firmware: arm_scmi: Fix duplicate workqueue name

to the 5.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     firmware-arm_scmi-fix-duplicate-workqueue-name.patch
and it can be found in the queue-5.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit fc09a2cdda481caa5a027a4e2314596d4e708bc4
Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
Date:   Tue Oct 13 19:17:37 2020 -0700

    firmware: arm_scmi: Fix duplicate workqueue name
    
    [ Upstream commit b9ceca6be43233845be70792be9b5ab315d2e010 ]
    
    When more than a single SCMI device are present in the system, the
    creation of the notification workqueue with the WQ_SYSFS flag will lead
    to the following sysfs duplicate node warning:
    
     sysfs: cannot create duplicate filename '/devices/virtual/workqueue/scmi_notify'
     CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.9.0-gdf4dd84a3f7d #29
     Hardware name: Broadcom STB (Flattened Device Tree)
     Workqueue: events deferred_probe_work_func
     Backtrace:
       show_stack + 0x20/0x24
       dump_stack + 0xbc/0xe0
       sysfs_warn_dup + 0x70/0x80
       sysfs_create_dir_ns + 0x15c/0x1a4
       kobject_add_internal + 0x140/0x4d0
       kobject_add + 0xc8/0x138
       device_add + 0x1dc/0xc20
       device_register + 0x24/0x28
       workqueue_sysfs_register + 0xe4/0x1f0
       alloc_workqueue + 0x448/0x6ac
       scmi_notification_init + 0x78/0x1dc
       scmi_probe + 0x268/0x4fc
       platform_drv_probe + 0x70/0xc8
       really_probe + 0x184/0x728
       driver_probe_device + 0xa4/0x278
       __device_attach_driver + 0xe8/0x148
       bus_for_each_drv + 0x108/0x158
       __device_attach + 0x190/0x234
       device_initial_probe + 0x1c/0x20
       bus_probe_device + 0xdc/0xec
       deferred_probe_work_func + 0xd4/0x11c
       process_one_work + 0x420/0x8f0
       worker_thread + 0x4fc/0x91c
       kthread + 0x21c/0x22c
       ret_from_fork + 0x14/0x20
     kobject_add_internal failed for scmi_notify with -EEXIST, don't try to
            register things with the same name in the same directory.
     arm-scmi brcm_scmi@1: SCMI Notifications - Initialization Failed.
     arm-scmi brcm_scmi@1: SCMI Notifications NOT available.
     arm-scmi brcm_scmi@1: SCMI Protocol v1.0 'brcm-scmi:' Firmware version 0x1
    
    Fix this by using dev_name(handle->dev) which guarantees that the name is
    unique and this also helps correlate which notification workqueue corresponds
    to which SCMI device instance.
    
    Link: https://lore.kernel.org/r/20201014021737.287340-1-f.fainelli@xxxxxxxxx
    Fixes: bd31b249692e ("firmware: arm_scmi: Add notification dispatch and delivery")
    Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
    [sudeep.holla: trimmed backtrace to remove all unwanted hexcodes and timestamps]
    Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/firmware/arm_scmi/notify.c b/drivers/firmware/arm_scmi/notify.c
index 4d9f6de3a7fae..51c5a376fb472 100644
--- a/drivers/firmware/arm_scmi/notify.c
+++ b/drivers/firmware/arm_scmi/notify.c
@@ -1474,7 +1474,7 @@ int scmi_notification_init(struct scmi_handle *handle)
 	ni->gid = gid;
 	ni->handle = handle;
 
-	ni->notify_wq = alloc_workqueue("scmi_notify",
+	ni->notify_wq = alloc_workqueue(dev_name(handle->dev),
 					WQ_UNBOUND | WQ_FREEZABLE | WQ_SYSFS,
 					0);
 	if (!ni->notify_wq)



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux