On 10/6/06, David Brownell <[EMAIL PROTECTED]> wrote:

> Nope; not a tradeoff.  For one thing, the pointers _are_ typed;
> for another, we have no option to trade _to_ since the hardware
> requires using those typed pointers.

You cannot tell the type of the object you currently have.  You can
only tell its type if you walked to it from the object that pointed to
it; *that* is the typed pointer.

> I'll disagree with that.  Since typed pointer model is inescapable
> in hardware, we have to cope with it ... and the way it's currently
> done ensures that we never have the nasty situation of software
> traversal working, where hardware traversal doesn't.

No, but I often have the problem where hardware traversal works, but
software traversal oopses the kernel.

> On top of that, the traversals are easily encapsulated ... so that
> it's a case of "get it right once, then don't touch the code".  Just
> like <linux/list.h>, pagetables, and similar complex data structure.

I'm not arguing it's broken; I'm arguing that it's needlessly tricky.
Also, it means you can only traverse the list in one direction.
Building the QH side of the schedule is an operation that needs to
traverse *back* not *forward*, and as such, we end up having to parse
the schedule into temporary lists that are repeatedly thrown away
anyway.

Monty

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to