Page MenuHomeFreeBSD

linker_kldload_busy(): allow recursion
ClosedPublic

Authored by kib on Nov 12 2021, 7:51 PM.

Details

Summary
Some drivers recursively loads modules by explicit calls to kldload
during initialization, which might occur during kldload.

PR:     259748

Diff Detail

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

Event Timeline

kib requested review of this revision.Nov 12 2021, 7:51 PM

The change looks ok, but after re-reading D30456 I wonder if busying should be done in sys_kldload() and sys_kldunload() instead. If the kernel initiates an unload at the "wrong" time then it's a bug in the initiator.

This revision is now accepted and ready to land.Nov 12 2021, 8:20 PM
This revision was automatically updated to reflect the committed changes.