Page MenuHomeFreeBSD

miibus: Use a bus_child_deleted method to free ivars for children
ClosedPublic

Authored by jhb on Oct 31 2024, 8:36 PM.
Tags
None
Referenced Files
F163387433: D47371.diff
Wed, Jul 22, 6:21 PM
F163344030: D47371.diff
Wed, Jul 22, 8:17 AM
Unknown Object (File)
Wed, Jul 8, 9:13 AM
Unknown Object (File)
Tue, Jul 7, 6:58 PM
Unknown Object (File)
Jun 15 2026, 8:10 AM
Unknown Object (File)
Jun 7 2026, 3:58 PM
Unknown Object (File)
May 19 2026, 8:10 PM
Unknown Object (File)
May 19 2026, 1:41 AM
Subscribers
None

Details

Summary

If a device was detached (e.g. via devctl) and then re-attached, the
ivars would be freed by the previous bus_child_detached method during
detach, but device_get_ivars during the subsequent attach would return
a stale pointer resulting in a use after free.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 60308
Build 57192: arc lint + arc unit