usb with fast interrupts
John-Mark Gurney
gurney_j at resnet.uoregon.edu
Mon Nov 15 00:01:57 PST 2004
Scott Long wrote this message on Fri, Nov 12, 2004 at 14:48 -0700:
> M. Warner Losh wrote:
> >Our usb system supports soft interrupts, but we currently don't make
> >productive use of them. The following makes interrupts fast
> >interrupts and uses taskqueues to queue data to a SWI.
> >
> >Lemme know if it works for you.
>
> Taskqueues aren't good for timing-sensitive operations. Even though USB
> may not be terribly sensitive, I bet you'll actually see performance
> drops with things like umass with this. Could you instead just put the
> real handler into a kthread and wake it up, or use a swi?
If you need low latency, I made taskqueue's easier to create:
TASKQUEUE_DEFINE_THREAD(kqueue);
and then use:
taskqueue_enqueue(taskqueue_kqueue, &kq->kq_task);
of course replace kqueue w/ your own string... Check the taskqueue(9)
man page for more details.
--
John-Mark Gurney Voice: +1 415 225 5579
"All that I will do, has been done, All that I have, has not."
More information about the freebsd-current
mailing list