> > > > >       struct usb_device->serialize will become a read-write semaphore.
> > 
> > The only reason to go for an rw-semaphore is contention. If contention is
> > low, there's no point in going for the extra overhead of such a lock.
> 
> No, there can be other reasons too.  For example, suppose one routine that 
> gets a read lock calls another that does the same thing.  That works well 
> with rw-semaphores but not with regular ones.  That's not contention, it's 
> something else (poor design perhaps -- but Duncan has his reasons).

NO ! You are running to Mount Doom and dragging along the horses.

rw-semaphores are fair. If you have this sequence:
TASK A                          TASK B
down_read()
                                        down_write()
down_read() --> DEADLOCK

You must not do this. Debugging such a thing will drive programmers
to madness in incredible numbers.

        Regards
                Oliver



-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to