HomeFreeBSD

If the SIM freezes the queue at exactly the wrong moment, after

Description

If the SIM freezes the queue at exactly the wrong moment, after
another thread has started to send in a CCB and already checked
the queue wasn't frozen, we would end up with iscsi_action()
being called despite the queue is now frozen.

Add a check to make sure this doesn't happen . Perhaps this should
be fixed at the CAM level instead, but given how the send queue and
SIM are governed by two separate mutexes, it is somewhat hard to do.

Reviewed by: imp, mav
MFC after: 2 weeks
Sponsored by: NetApp, Inc.
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D26750

Details

Provenance
traszAuthored on
Reviewer
imp
Differential Revision
D26750: iscsi(4) freeze vs action race workaround
Parents
rS366811: Make g_attach() return ENXIO for orphaned providers; update various
Branches
Unknown
Tags
Unknown