From: Jeff Garzik <jgarzik@pobox.com>
To: Jesse Barnes <jbarnes@engr.sgi.com>, Dean Nelson <dcn@sgi.com>
Cc: Arjan van de Ven <arjanv@redhat.com>,
linux-kernel@vger.kernel.org, rusty@rustcorp.com.au
Subject: Re: calling kthread_create() from interrupt thread
Date: Tue, 15 Jun 2004 18:14:24 -0400 [thread overview]
Message-ID: <40CF74C0.1040409@pobox.com> (raw)
In-Reply-To: <200406151414.20565.jbarnes@engr.sgi.com>
Jesse Barnes wrote:
> On Tuesday, June 15, 2004 2:05 pm, Dean Nelson wrote:
>
>>As mentioned above, it is possible for this "simple" function to
>>sleep/block for an indefinite period of time. I was under the impression
>>that one couldn't block a work queue thread for an indefinite period of
>>time. Am I mistaken?
>
>
> For tasklets and softirqs you're not allowed to sleep, but I think it's ok for
> work queues.
Dean is correct and incorrect ;-)
If you are using schedule_work() or schedule_task(), blocking for
extended periods of time would be very undesirable. We see this on
occasion in 2.6 uniprocessor, where a long-running keventd task may
block a console or tty update.
In 2.6, the solution is easy... create your own private workqueue. No
such solution in 2.4 (though I would argue that workqueues would help
drivers, if accepted into 2.4 at this late stage).
Jeff
next prev parent reply other threads:[~2004-06-15 22:14 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-15 17:42 calling kthread_create() from interrupt thread Dean Nelson
2004-06-15 17:49 ` Arjan van de Ven
2004-06-15 18:05 ` Dean Nelson
2004-06-15 18:14 ` Jesse Barnes
2004-06-15 22:14 ` Jeff Garzik [this message]
2004-06-15 18:15 ` Richard B. Johnson
2004-06-15 19:01 ` Robin Holt
2004-06-15 19:28 ` Roland Dreier
2004-06-15 19:30 ` Chris Wright
2004-06-15 23:40 ` Rusty Russell
2004-06-15 19:14 ` Dean Nelson
2004-06-15 19:27 ` Roland Dreier
2004-06-15 19:59 ` Chris Wright
[not found] <27qex-5LX-17@gated-at.bofh.it>
[not found] ` <27qoT-5Uy-15@gated-at.bofh.it>
[not found] ` <27qxQ-67a-27@gated-at.bofh.it>
2004-06-15 20:41 ` Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=40CF74C0.1040409@pobox.com \
--to=jgarzik@pobox.com \
--cc=arjanv@redhat.com \
--cc=dcn@sgi.com \
--cc=jbarnes@engr.sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox