Page MenuHomeFreeBSD

Only assert locked for many async events.
ClosedPublic

Authored by imp on Nov 4 2018, 6:17 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 24 2024, 2:26 PM
Unknown Object (File)
Feb 10 2024, 5:47 PM
Unknown Object (File)
Jan 27 2024, 6:41 AM
Unknown Object (File)
Jan 3 2024, 11:49 PM
Unknown Object (File)
Jan 1 2024, 9:12 AM
Unknown Object (File)
Dec 20 2023, 4:01 AM
Unknown Object (File)
Dec 13 2023, 2:23 PM
Unknown Object (File)
Dec 11 2023, 3:24 AM
Subscribers
None

Details

Summary

Many async events that we see are called for this specific path. When
calling an async callback for a targetted device, XTP will lock that
specific device's path lock (same as what cam_periph_lock does). For
those AC_ events, assert we have the lock rather than trying to
recusrively take it (which causes panics since it's not recursive).

Add annotations about this and about the fact that AC_SCSI_AEN events
are generated now only in the ata stack (which cannot have a scsi_da
attachment). Leave it in place in case I've overlooked something as
the code is harmless.

This is fallout from my attempts to "fix" locking for softc->flags in
r330796 that's not been triggered often enough to get my attention
until now.

Sponsored by: Netflix
MFC After: 3 days

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

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