Page MenuHomeFreeBSD

ena: Trigger reset when mbuf is NULL error happens
Needs ReviewPublic

Authored by osamaabb_amazon.com on Aug 20 2024, 8:47 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Aug 12, 5:26 PM
Unknown Object (File)
Mon, Aug 10, 5:38 PM
Unknown Object (File)
Mon, Aug 10, 8:59 AM
Unknown Object (File)
Mon, Aug 10, 7:00 AM
Unknown Object (File)
Sun, Aug 9, 6:34 PM
Unknown Object (File)
Sat, Aug 8, 2:34 AM
Unknown Object (File)
Wed, Aug 5, 4:57 AM
Unknown Object (File)
Tue, Aug 4, 9:04 AM
Subscribers

Details

Reviewers
cperciva
Summary

The mbuf is NULL issue happens when the device sends the driver
a completion with a wrong request id.
Trigger a reset whenever this happens.

Approved by: cperciva
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 59092
Build 55979: arc lint + arc unit

Event Timeline

This seems like it could be a kernel panic rather than merely logging an error and resetting the device.

This seems like it could be a kernel panic rather than merely logging an error and resetting the device.

We're using the same approach as in [1] here, in case theres a single bit flip causing a funny RX request ID being processed by the driver (hence the null mbuf) we'd like to maintain networking availability
[1] https://reviews.freebsd.org/D46337