On Mon, Mar 28, 2011 at 6:11 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote: >> If the process context of delayed work items provices a significant >> benefit to your execution model you can convert the timers to delayed >> work items now, and remove the irqsafe locking. Given that the >> isci code still does some non-trivial work from it's interrupt >> handlers and tasklets I'm not sure it's going to buy you much, though. > > The irqsafe locking is an external requirement imposed by libata, > although we already drop the lock > <hit 'send' too early> I was going to say we (and the other libsas drivers that call task->done() or sas_task_abort() from lldd_execute_task_context) already drop the lock in error conditions. If that is a safe operation then perhaps we could up level that lock drop or otherwise move ata submission to an unlocked context to allow libsas drivers to use sleeping locks and threaded interrupts. -- Dan -- 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