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)
Sat, Dec 20, 2:19 AM
Unknown Object (File)
Fri, Dec 5, 5:26 AM
Unknown Object (File)
Wed, Nov 26, 10:32 PM
Unknown Object (File)
Tue, Nov 25, 5:31 PM
Unknown Object (File)
Sun, Nov 23, 2:20 AM
Unknown Object (File)
Nov 18 2025, 11:30 AM
Unknown Object (File)
Nov 18 2025, 8:00 AM
Unknown Object (File)
Nov 16 2025, 2:22 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