Page MenuHomeFreeBSD

ice: Defer RDMA critical-error notifications
ClosedPublic

Authored by kbowling on Sep 3 2026, 12:03 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Oct 7, 8:51 AM
Unknown Object (File)
Mon, Oct 5, 1:14 AM
Unknown Object (File)
Sat, Oct 3, 5:21 PM
Unknown Object (File)
Fri, Oct 2, 5:02 AM
Unknown Object (File)
Tue, Sep 29, 10:28 PM
Unknown Object (File)
Tue, Sep 29, 5:29 AM
Unknown Object (File)
Tue, Sep 29, 4:16 AM
Unknown Object (File)
Mon, Sep 28, 5:19 PM
Subscribers

Details

Reviewers
kgalazka
Group Reviewers
Intel Networking
Restricted Owners Package(Owns No Changed Paths)
Commits
rGaae5b168820a: ice: Defer RDMA critical error notifications
Summary
ice_msix_admin() runs as an interrupt filter inside a critical section.
ice_rdma_notify_pe_intr() acquires the global RDMA sx and invokes the
client event handler, both of which require sleepable thread context.  A
PE or HMC critical error could therefore panic under WITNESS or sleep
from interrupt context.

Accumulate OICR causes atomically in the interrupt filter and mark them
pending in the driver state.  Deliver the notification from the iflib
admin task before processing reset events.  This preserves the existing
ordering, lets an iRDMA-requested reset run in the same admin pass, and
coalesces causes from multiple interrupts.

MFC after:      2 weeks
Sponsored by:   BBOX.io

Diff Detail

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

Event Timeline

Owners added a reviewer: Restricted Owners Package.Sep 3 2026, 12:03 PM
This revision was not accepted when it landed; it landed in state Needs Review.Thu, Sep 17, 12:57 AM
This revision was automatically updated to reflect the committed changes.