Page MenuHomeFreeBSD

iflib: don't update the admin status in if_media_status
Needs ReviewPublic

Authored by gallatin on Sat, Dec 6, 2:12 AM.

Details

Reviewers
kbowling
markj
mjg
glebius
shurd
Group Reviewers
iflib
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 Skipped
Unit
Tests Skipped