On Wed, Nov 16 2005, Jeff Garzik wrote: > Jens Axboe wrote: > >I updated that patch, and converted IDE and SCSI to use it. See the > >results here: > > > >http://brick.kernel.dk/git/?p=linux-2.6-block.git;a=shortlog;h=blk-softirq > > > >The main change from the version posted last october is killing the > >'slightly' overdesigned completion queue hashing. > > Nifty, I like. Comments: > > * use of spin_lock_irq() in all completion paths now makes me nervous. Should be fine from the paths originating from blk_done_softirq(), as we know interrupts are enabled in the first place. But generally I agree, whenever in doubt always always use the irq saving variants. > * certainly it's what SCSI does now, but is a softirq really necessary? > Using a tasklet would kill all that per-cpu code, and notifier. It would work fine with a tasklet of course, but it's going to generate a _lot_ of traffic on io busy systems so I felt a dedicated softirq was the way to go. -- Jens Axboe - : 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