On Thu, Jan 10 2008 at 21:45 +0200, Andre Noll <maan@xxxxxxxxxxxxxxx> wrote: > On 20:29, Andi Kleen wrote: > >>> Sure, I can do that if James likes the idea. Since not all case >>> statements need the BKL, we could add it only to those for which it >>> isn't clear that it is unnecessary. >>> >>> And this would actually improve something. >> I still think it would be a good strategy to first add it to all >> (in a essentially nop semantics patch) and then later eliminate >> it from the cases that obviously don't need it. > > James, would you accept such a patch? > > Andre Andre hi. All the scsi calls do not need any locks. The scsi LLDS never see these threads since commands are queued through the block layer. What's left is what you see, here in sg.c. you must have the best knowledge about the possible races between ioctl and open/release and probe/remove. And all these put_user() copy_user() etc... Why don't you have a hard look and fix them properly. please don't *lock_kernel();* for scsi's sake. Also note that sg is not a scsi device it is a block device. It used to Q commands directly to scsi but it does not do that any more. Again I think SCSI neto is safe and tested. My $0.02. Boaz - 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