Page MenuHomeFreeBSD

igc: Fix a bogus register write in igc_if_queues_free()
ClosedPublic

Authored by markj on Oct 26 2024, 5:22 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Jan 19, 2:18 AM
Unknown Object (File)
Mon, Jan 5, 4:46 PM
Unknown Object (File)
Thu, Jan 1, 10:10 AM
Unknown Object (File)
Sat, Dec 27, 10:17 AM
Unknown Object (File)
Thu, Dec 25, 8:19 PM
Unknown Object (File)
Thu, Dec 25, 7:31 AM
Unknown Object (File)
Thu, Dec 25, 12:26 AM
Unknown Object (File)
Dec 20 2025, 2:19 AM
Subscribers

Details

Summary

As explained in PR 277038, iflib calls IFDI_DETACH() and then
IFDI_QUEUES_FREE(). With igc, the latter writes to a register after it
has been unmapped.

igc_if_detach() already calls igc_release_hw_control(), and looking at
callers of igc_if_queues_free(), that appears to be sufficient. So,
just remove the igc_release_hw_control() call.

PR: 277038
Diagnosed by: Mike Belanger <mibelanger@qnx.com>

Test Plan

I have no igc hardware and can't test this, any testing would be appreciated.

Diff Detail

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