xpt_done() and Giant?

Thomas Quinot thomas at FreeBSD.ORG
Wed Feb 28 23:24:00 UTC 2007


* Scott Long, 2007-02-28 :

> I overlooked this, sorry.  Can you survive with it as it is for now?

Well, the current situation has been current for quite some time, so I
think I can survive it :-)

On the other hand, the ATAPI/CAM interrupt routine runs outside of Giant
and calls xpt_done (and also calls CAM_DEBUGGED itself), and it would be
nice if CAMDEBUG worked with it. Is there any compelling reason for
having GIANT_REQUIRED in xpt_path_comp? The only case I can see this as
useful is when called in the context of CAM_DEBUG or CAM_DEBUGGED, to
protect against a concurrent update of cam_dpath, but this really looks
to me like a really tiny corner case.

Thomas.



More information about the freebsd-scsi mailing list