Page MenuHomeFreeBSD

mmc: Use bus_topo_lock and taskqueue_bus while adding/removing child devices
ClosedPublic

Authored by jhb on Mar 6 2025, 10:07 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Oct 4, 3:10 PM
Unknown Object (File)
Sun, Oct 4, 1:41 AM
Unknown Object (File)
Sat, Oct 3, 11:30 PM
Unknown Object (File)
Sat, Sep 26, 9:52 AM
Unknown Object (File)
Thu, Sep 24, 6:09 AM
Unknown Object (File)
Fri, Sep 18, 10:52 PM
Unknown Object (File)
Sep 2 2026, 10:11 PM
Unknown Object (File)
Aug 27 2026, 12:20 PM
Subscribers
None

Details

Summary

Some drivers held regular mutexes across some new-bus calls, instead
depend on bus_topo_lock to protect the relevant softc members. This
also fixes the bus_topo_lock to be explicit in these drivers rather
than relying on the implicit Giant from taskqueue_swi_giant, and it
avoids calling sleepable routines like device_probe_and_attach from an
swi context.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable