Re: [PATCH] fix loop with disabled tasklets

Andrea Arcangeli (andrea@suse.de)
Mon, 12 Nov 2001 02:11:42 +0100


I'm just guessing: the scheduler isn't yet functional when
spawn_ksoftirqd is called. This is clearly a sparc32 bug, because
swapn_ksoftirqd is called via the __initcall section and the scheduler
must be fully functional by that time. Unrelated to the fact ksoftirqd
can loop on disabled tasklets, the ksoftirqd startup is only an innocent
trigger for the deadlock.

Mathijs, can you verify that? If my theory is right need_resched isn't
set even if ksoftirqd loops forever. It could be one of those two
possibilities:

1) the timer irq isn't running yet
2) "current" isn't functional

The softirq code shouldn't really be the culprit of the sparc32
deadlock (as Alexey pointed out).

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/