Re: [PATCH 1/2] Revert "drivers: core: synchronize really_probe() and dev_uevent()"
From: Greg Kroah-Hartman
Date: Thu Feb 20 2025 - 02:18:35 EST
On Wed, Feb 19, 2025 at 10:46:44PM -0800, Dmitry Torokhov wrote:
> This reverts commit c0a40097f0bc81deafc15f9195d1fb54595cd6d0.
>
> Probing a device can take arbitrary long time. In the field we observed
> that, for example, probing a bad micro-SD cards in an external USB card
> reader (or maybe cards were good but cables were flaky) sometimes takes
> longer than 2 minutes due to multiple retries at various levels of the
> stack. We can not block uevent_show() method for that long because udev
> is reading that attribute very often and that blocks udev and interferes
> with booting of the system.
>
> The change that introduced locking was concerned with dev_uevent()
> racing with unbinding the driver. However we can handle it without
> locking (which will be done in subsequent patch).
So shouldn't we take the second patch first to prevent any issues here?
> There was also claim that synchronization with probe() is needed to
> properly load USB drivers, however this is a red herring: the change
> adding the lock was introduced in May of last year and USB loading and
> probing worked properly for many years before that.
>
> Revert the harmful locking.
>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
No Fixes: or cc: stable for this?
thanks,
greg k-h