Page MenuHomeFreeBSD

cam: Add a number of asserts to catch bad transactions
ClosedPublic

Authored by imp on Oct 22 2025, 3:28 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 2, 12:18 PM
Unknown Object (File)
Mon, Mar 2, 11:31 AM
Unknown Object (File)
Mon, Mar 2, 11:27 AM
Unknown Object (File)
Mon, Mar 2, 11:27 AM
Unknown Object (File)
Sun, Mar 1, 10:54 PM
Unknown Object (File)
Sun, Mar 1, 2:38 PM
Unknown Object (File)
Sun, Mar 1, 8:50 AM
Unknown Object (File)
Jan 30 2026, 7:15 PM
Subscribers
None

Details

Summary

Ensure that we're in the right state / priority for each of the states
in the driver. These asserts assured that a prior patch that I committed
to fix a priority leak worked when a drive departed (and bounced back
too!). These have been running in our production since I committed the
change and haven't trigged.

Sponsored by: Netflix

Diff Detail

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

Event Timeline

imp requested review of this revision.Oct 22 2025, 3:28 PM
sys/cam/ata/ata_da.c
2347

I was torn on this one. Maybe it should be an assert instead.
However, over the past couple of years since I pushed the fix for this bug, these messages have not appeared in our fleet (before, we'd see a bunch a week, some subset of which would lead to a badly lost race that panic'd the machine).

This revision was not accepted when it landed; it landed in state Needs Review.Nov 6 2025, 6:56 PM
This revision was automatically updated to reflect the committed changes.