Re: [PATCH v6 1/2] driver core: Introduce device_link_wait_removal()

From: Greg Kroah-Hartman
Date: Mon Mar 25 2024 - 14:48:39 EST


On Mon, Mar 25, 2024 at 04:21:25PM +0100, Herve Codina wrote:
> The commit 80dd33cf72d1 ("drivers: base: Fix device link removal")
> introduces a workqueue to release the consumer and supplier devices used
> in the devlink.
> In the job queued, devices are release and in turn, when all the
> references to these devices are dropped, the release function of the
> device itself is called.
>
> Nothing is present to provide some synchronisation with this workqueue
> in order to ensure that all ongoing releasing operations are done and
> so, some other operations can be started safely.
>
> For instance, in the following sequence:
> 1) of_platform_depopulate()
> 2) of_overlay_remove()

So this is only an issue for overlays? Why has no one noticed this in
the years since 80dd33cf72d1 was added? Why is this an issue now
suddenly?

thanks,

greg k-h