Nate Lawson writes: > Scott Long wrote: > > Andrew Gallatin wrote: > > > >> Scott Long writes: > >> > However, taskqueues are really just a proof of concept for what I > >> really > >> > want, which is to allow drivers to register both a fast handler and an > >> > ithread handler. For drivers doing this, the ithread would be private > >> > >> Ah, the darwin / MacOSX model. That would be very cool. > > > > > > Yep. Working in IOKit was very interesting, and this is one of the few > > things that transfers well to FreeBSD. C++ does have a certain elagence > > for drivers, but the cost of virtual methods in the fast path of the > > driver and stack is still far too high to justify using it. > > Yeah, that's why newbus is only for configuration but interrupt handlers > are called directly. It's nice to have OO for config and relationships > between devices but just direct calls for the fast path.
Amusingly, I was just today trying to figure out how to get at my Darwin driver's if_output() routine so I can cut out the interposing layers of C++ crud and improve transmit performance :) Drew _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"