taskqueue_drain

John-Mark Gurney gurney_j at resnet.uoregon.edu
Sun Nov 5 20:34:37 UTC 2006


usleepless at gmail.com wrote this message on Wed, Oct 25, 2006 at 14:42 +0200:
> i am working on improving the driver for hauppauge PVR cards
> (multimedia/pvrxxx). i just implemented a "fast" interrupt using a
> taskqueue ( like the new if_em driver ).
> 
> i have a couple of questions:
> 1. if_em is using taskqueue_enqueue rather than
> taskqueue_enqueue_fast. this is contrary to what "man taskqueue"
> claims. how come?

Probably a bug...

> 2. when my capture-device is closed, i need to drain the taskqueue.
> however, taskqueue_drain needs a task as an argument. but i have
> queued 2 different tasks on the taskqueue. what to do? i guess they
> need to be processed "in order".

Just drain each of them..  of course make sure that you unregister
your interrupt (not just disable.. you could use a flag, as you may
get interrupts due to shared interrupts) before draining the taskqueue...

> 3.  when and in which version will the "fast" versions of the
> taskqueue-functions be released? will it be backported? if i create a
> patch and send-pr it, is it likely to be accepted for 6.x?

Someone else will have to answer this...

/me wishes he had machines w/ more pci slots so he could keep all his
cards attached for testing.

-- 
  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-hackers mailing list