a) It depends on queuing
b) It doesn't reserve the bandwidth

Each in itself make it unacceptable.
On the other hand, neither of those is true either.  Which is
part of why I don't see any problem ... :)

With a move to non automagic resubmit, the HCD *MUST* release any
bandwidth when it's done, because that's the last URB it knows about for
that endpoint.

As a result, there will always be a race with resubmitting the URB and
acquiring the bandwidth again.
What race?  What re-acquiring?  With one urb and no queueing:

 - driver submits urb.  hcd:
    * allocates bandwidth
    * queues that transfer to the hc
 - millions of picoseconds pass
 - transfer completes.  hcd:
    * cleans up urb-specific state
    * gives back the urb (issuing completion)
 - NOW it's done, so either:
    * the endpoint has some urb queued (same one resubmitted?)
    * there's no urb queued
 - if there's no urb queued, deallocate the bandwidth

The bandwidth is unavailable so long as that driver keeps an urb
active on that endpoint -- ONE urb, queuing not required.  And
that bandwidth is sure reserved:  nobody else can use it.

- Dave







-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to