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
F153542079: D49270.id152093.diff
Tue, Apr 21, 6:56 PM
F153484386: D49270.id151982.diff
Tue, Apr 21, 10:25 AM
Unknown Object (File)
Tue, Apr 21, 2:49 AM
Unknown Object (File)
Tue, Apr 21, 12:24 AM
Unknown Object (File)
Sat, Apr 18, 11:57 AM
Unknown Object (File)
Tue, Apr 14, 4:35 AM
Unknown Object (File)
Tue, Apr 7, 7:47 PM
Unknown Object (File)
Mon, Apr 6, 9:25 AM
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 Skipped
Unit
Tests Skipped
Build Status
Buildable 62806
Build 59690: arc lint + arc unit