Re: [PATCH] driver core: fix async device shutdown hang

From: stuart hayes
Date: Tue Sep 17 2024 - 20:20:59 EST




On 9/17/2024 3:42 PM, Greg Kroah-Hartman wrote:
On Tue, Sep 17, 2024 at 03:15:17PM -0500, Stuart Hayes wrote:
Modify device_shutdown() so that supplier devices do not wait for
consumer devices to be shut down first when the devlink is sync state
only, since the consumer is not dependent on the supplier in this case.

Without this change, a circular dependency could hang the system.

Signed-off-by: Stuart Hayes <stuart.w.hayes@xxxxxxxxx>

What commit id does this fix? Should it go to stable?

And what driver is causing this problem, is this a regression or for
something new that just got added to the tree?

thanks,

greg k-h

This fixes commit 8064952c65045f05ee2671fe437770e50c151776, in
driver-core-next & linux-next... it's problem with code that was just
added to the tree (in drivers/base/core.c). It is not in stable.

Apologies, I should have mentioned that from the start.

The issue was found using qemu... a pl061 device (supplier) and
gpio-keys device (consumer), from a qemu-generated device tree with
the aarch64 architecture. I don't know why the devlink is in the
sync_state_only state in this case. I didn't dig into that, because
I figured the shutdown code shouldn't hang regardless.