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