Date: Fri, 5 Nov 2010 11:48:05 -0700 From: Matthew Fleming <mdf356@gmail.com> To: Hans Petter Selasky <hselasky@c2i.net> Cc: freebsd-current@freebsd.org, Weongyo Jeong <weongyo.jeong@gmail.com>, freebsd-usb@freebsd.org, Andrew Thompson <thompsa@freebsd.org>, freebsd-arch@freebsd.org Subject: Re: [RFC] Outline of USB process integration in the kernel taskqueue system Message-ID: <AANLkTimOTwtRQ_cF8WBYE6X7q0hfP37Gv7TKOXLY5k2U@mail.gmail.com> In-Reply-To: <201011051945.51393.hselasky@c2i.net> References: <201011012054.59551.hselasky@c2i.net> <201011051935.27579.hselasky@c2i.net> <AANLkTinkeCVJbijsLhutLd9TGge41ZbAbjy-kQ6g%2BSMt@mail.gmail.com> <201011051945.51393.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 5, 2010 at 11:45 AM, Hans Petter Selasky <hselasky@c2i.net> wro= te: > On Friday 05 November 2010 19:39:45 Matthew Fleming wrote: >> True, but no taskqueue(9) code can handle that. =A0Only the caller can >> prevent a task from becoming enqueued again. =A0The same issue exists >> with taskqueue_drain(). > > I find that strange, because that means if I queue a task again while it = is > running, then I doesn't get run? Are you really sure? If a task is currently running when enqueued, the task struct will be re-enqueued to the taskqueue. When that task comes up as the head of the queue, it will be run again. Thanks, matthew
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimOTwtRQ_cF8WBYE6X7q0hfP37Gv7TKOXLY5k2U>