FUJITA Tomonori wrote:
CC'ed James Smart,
On Tue, 26 May 2009 11:38:14 -0700
Giridhar Malavali <giridhar.malavali@xxxxxxxxxx> wrote:
Thanks for the pointer. I will check with the post-merge tree.
The crash I am seeing is because of softirq_done_fn not set in the
request queue for BSG request. Even in the post-merge tree I don't see
FC transport setting this function during the allocation of the
request queue. When BSG request times out, I see that it executes
__blk_complete_request function where check is done for its existence.
I see this getting set for SCSI request during queue allocation in
scsi_lib.c. Is this required for BSG request?
Yeah, you need to set q->softirq_done_fn if you use the block timeout
infrastructure. The current bsg user, SMP, uses bsg but it doesn't use
the timeout infrastructure so it doesn't set q->softirq_done_fn.
sg3_utils version 1.27 (and later) is a user of bsg, sending
SCSI commands through. Will timeouts works? [I didn't check.]
Doug Gilbert
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html