Re: Tasklet usage?
From: Neil Horman
Date: Fri Oct 15 2004 - 09:18:00 EST
Pierre Ossman wrote:
Neil Horman wrote:
Pierre Ossman wrote:
* 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.
Being preempted by hard interrupts is sort of the point of moving the
stuff to a tasklet. Just as long as other tasklets and user space cannot
preempt it.
Are there any concerns when it comes to locking and tasklets? I've tried
finding kernel-locking-HOWTO referenced in kernel-docs.txt but the link
is dead and I can't find a mirror.
Locking in tasklets needs to be done the same way locking in interrupt
handlers is done. The only caveat that I can think of is that in the
event that you are accessing data shared with code that runs outisde of
the tasklet, you probably need to use spin_lock_bh to disable softirqs
in the latter code. In your environment, it would typically replace the
use of spin_lock_irq[save|restore].
HTH
Neil
Rgds
Pierre
--
/***************************************************
*Neil Horman
*Software Engineer
*Red Hat, Inc.
*nhorman@xxxxxxxxxx
*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@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/