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
F162632120: D53259.diff
Wed, Jul 15, 6:50 AM
F162632119: D53259.diff
Wed, Jul 15, 6:50 AM
Unknown Object (File)
Fri, Jul 3, 8:19 AM
Unknown Object (File)
Fri, Jul 3, 6:16 AM
Unknown Object (File)
Fri, Jul 3, 6:10 AM
Unknown Object (File)
Fri, Jul 3, 5:35 AM
Unknown Object (File)
Fri, Jul 3, 2:09 AM
Unknown Object (File)
Thu, Jul 2, 2:46 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 Skipped
Unit
Tests Skipped
Build Status
Buildable 67995
Build 64878: arc lint + arc unit

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.