lkml.org 
[lkml]   [2004]   [Oct]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Tasklet usage?
Pierre Ossman wrote:
> My driver needs to spend a lot of time inside the interrupt handler
> (draining a FIFO). I suspect this might cause problems blocking other
> interrupt handlers so I was thinking about moving this into a tasklet.
> Not being to familiar with tasklets, a few questions pop up.
>
> * Will a tasklet scheduled from the interrupt handler be executed as
> soon as interrupt handling is done?
I don't _think_ they are guaranteed to be executed immediately after the
interrupt handler top half is complete, but they will execute before
the next return to user space (read: they will complete before user
processes run again).

> * Can tasklets be preempted?
A tasklet can get preempted by a hard interrupt, but tasklets run in
interrupt context, so don't do anything in a tasklet that can call schedule.
> * If a tasklet gets scheduled while running, will it be executed once
> more? (Needed if I get another FIFO interrupt while the tasklet is just
> exiting).
>
IIRC, a tasklet will execute once for every time tasklet_schedule is called.

HTH
Neil

--
/***************************************************
*Neil Horman
*Software Engineer
*Red Hat, Inc.
*nhorman@redhat.com
*gpg keyid: 1024D / 0x92A74FA1
*http://pgp.mit.edu
***************************************************/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 14:07    [from the cache]
©2003-2011 Jasper Spaans