Mike Christie <micha...@cs.wisc.edu> wrote: > The scsi_host_template->queuecommand function is called by scsi-ml with > irqs disabled spin_lock_irqsave(host->host_lock, flags)
thanks for clarifying that, specifically do you refer to scsi.c :: scsi_dispatch_cmd()? at some point I was LXR-ing for queuecommand and somehow got a bit confused thinking that this isn't the only flow the invokes queuecommand. If this --is-- the case, then I'm back to my 2nd question... why iscsi_queuecommand does spin_unlock(host->host_lock) in its beginning and spin_lock(host->host_lock) in its end? > I thought bhs are run from interrupt context, so scsi-mls disabling irqs did > what we > needed (see the bottom of Rusty Russells locking guide > http://www.kernel.org/pub/linux/kernel/people/rusty/kernel-locking/c188.html#HARDIRQ- > SOFTIRQ I think there is more detail in the Linux Device Driver book). mmm, understood, yes from Rusty's wording I understand that indeed the ML irq disabling does what we want for the cpu queuecommand runs on. Or. -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-is...@googlegroups.com. To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/open-iscsi?hl=en.