lkml.org 
[lkml]   [2001]   [Nov]   [10]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSat, 10 Nov 2001 05:37:20 -0800 (PST)
SubjectRe: [PATCH] fix loop with disabled tasklets
From"David S. Miller" <>
   From: Mathijs Mohlmann <mathijs@knoware.nl>
   Date: Sat, 10 Nov 2001 13:21:56 +0100

   	i'm not sure about the enable_tasklet bit. I think it will prevent
   people from calling tasklet_enable from within an interrupt handler. But then
   again, why do you want to do that? Thanx, velco and

   	Any comments?

I've been looking at this and I sent Andrea+Linus private mail on this
to try and work out a fix.

You can't simply stop enabling the softirq when you hit the "locked
tasklet" condition.  That could deadlock the tasklet.

What really needs to happen is:

1) If tasklet is scheduled, but disabled, simply ignore it
   during tasklet processing.  Do not resignal softirq.
   But do leave it on the pending lists.

2) When tasklet enable brings t->count back to zero and
   tasklet is found to be scheduled, signal a local softirq.

To me, that would be the proper fix.  But I still haven't heard back
from Andrea or Linus yet :-)

Franks a lot,
David S. Miller
davem@redhat.com
-
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 12:13    [W:0.222 / U:0.410 seconds]
©2003-2008 Jasper Spaans