can you apply this patch on top of the ksoftirqd patch and see if you
can trigger the BUG() again when based on pre2? (I want to make sure to
be as strict as mainline) Then if you apply the same patches on top of
pre3 the BUG() should go away.
--- 2.4.7pre2aa1/kernel/softirq.c.~1~ Thu Jul 5 17:13:47 2001
+++ 2.4.7pre2aa1/kernel/softirq.c Fri Jul 6 14:39:49 2001
@@ -173,7 +173,8 @@
if (!tasklet_trylock(t))
BUG();
if (!atomic_read(&t->count)) {
- clear_bit(TASKLET_STATE_SCHED, &t->state);
+ if (!test_and_clear_bit(TASKLET_STATE_SCHED, &t->state))
+ BUG();
t->func(t->data);
tasklet_unlock(t);
continue;
@@ -210,7 +211,8 @@
if (!tasklet_trylock(t))
BUG();
if (!atomic_read(&t->count)) {
- clear_bit(TASKLET_STATE_SCHED, &t->state);
+ if (!test_and_clear_bit(TASKLET_STATE_SCHED, &t->state))
+ BUG();
t->func(t->data);
tasklet_unlock(t);
continue;
Thanks!
Andrea
-
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/