Page MenuHomeFreeBSD

linker_kldload_busy(): allow recursion
ClosedPublic

Authored by kib on Nov 12 2021, 7:51 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Oct 10, 3:07 PM
Unknown Object (File)
Fri, Oct 10, 3:07 PM
Unknown Object (File)
Fri, Oct 10, 3:07 PM
Unknown Object (File)
Fri, Oct 10, 8:43 AM
Unknown Object (File)
Sep 6 2025, 6:27 PM
Unknown Object (File)
Aug 24 2025, 11:04 PM
Unknown Object (File)
Aug 24 2025, 7:17 PM
Unknown Object (File)
Aug 20 2025, 5:56 PM
Subscribers

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.