Page MenuHomeFreeBSD

x86/intr: Handle case of disabling MSI after release
AcceptedPublic

Authored by jhibbits on Jul 29 2025, 6:56 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Oct 12, 12:34 AM
Unknown Object (File)
Thu, Oct 9, 5:32 PM
Unknown Object (File)
Thu, Oct 9, 5:32 PM
Unknown Object (File)
Thu, Oct 9, 5:32 PM
Unknown Object (File)
Thu, Oct 9, 3:29 PM
Unknown Object (File)
Thu, Sep 25, 4:51 AM
Unknown Object (File)
Tue, Sep 23, 8:03 PM
Unknown Object (File)
Mon, Sep 22, 11:44 AM
Subscribers
None

Details

Summary

Once an interrupt source is registered it's never deregistered.
However, when an MSI is released the pointer for it becomes NULLed out,
resulting in a NULL pointer dereference when attempting to disable the
now-released MSI source. Add NULL check to avoid this.

Diff Detail

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

Event Timeline

jhibbits created this revision.
sys/x86/x86/msi.c
222

Multi-line comment should have a blank line before it. It also should formatted like this:

/*
 * Interrupt sources are always registered, but never unregistered.
...
This revision is now accepted and ready to land.Aug 13 2025, 3:48 AM