Page MenuHomeFreeBSD

iflib: don't update the admin status in if_media_status
ClosedPublic

Authored by gallatin on Dec 6 2025, 2:12 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Sep 7, 2:25 AM
Unknown Object (File)
Sat, Sep 5, 5:04 AM
Unknown Object (File)
Sat, Sep 5, 12:07 AM
Unknown Object (File)
Fri, Sep 4, 9:53 PM
Unknown Object (File)
Fri, Sep 4, 9:46 PM
Unknown Object (File)
Fri, Sep 4, 7:21 PM
Unknown Object (File)
Fri, Sep 4, 4:13 PM
Unknown Object (File)
Fri, Sep 4, 4:03 AM

Details

Summary

When _task_fn_admin() is active, it will regularly call IFDI_UPDATE_ADMIN_STATUS(). So there is no need to do it in iflib_media_status. This can be fairly expensive on some drivers (long DELAY bussywait loops waiting for a NIC command), and there is no need to pause a userspace app in this DELAY() if it is happening asynchronously anyway.

Note the logic to detect if _task_fn_admin() is regularly calling IFDI_UPDATE_ADMIN_STATUS() was copied from that function.

Diff Detail

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