On Friday 12 July 2013 13:09:23 WangChen wrote: > Oliver, my understanding is the limit_sem will only cause write() to sleep and wait for other IOs to finish when there are alreay WRITES_IN_FLIGHT URBs are on going. I see code line 509: sema_init(&dev->limit_sem, WRITES_IN_FLIGHT); > My understanding of Blocking IO should block every write() when corresponding URBs is not finished, am I right? Well, no. For a disk explicitly not and for a character device there's no need to be different. Regards Oliver -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html