Re: [PATCH] 2.5.21 IDE 91

Linus Torvalds (torvalds@transmeta.com)
Fri, 14 Jun 2002 09:43:11 -0700 (PDT)


On Fri, 14 Jun 2002, Jens Axboe wrote:
>
> - current 2.5 bk deadlocks reading partition info off disk. Again a
> locking problem I suppose, to be honest I just got very tired when
> seeing it happen and didn't want to spend tim looking into it.

Hmm. There's a bug in "balance_irq()" if you are trying to run a SMP
kernel on an UP machine right now, and it _might_ be that the lockup has
nothing to do with the IDE layer, but simple with the first PCI interrupt
(as opposed to local timer interrupt) coming in.

One-liner from Zwane Mwaikambo (cut-and-paste, so space is wrong, please
apply by hand).

--- linux-2.5.19/arch/i386/kernel/io_apic.c.orig Fri Jun 14 17:43:20 2002
+++ linux-2.5.19/arch/i386/kernel/io_apic.c Fri Jun 14 17:42:23 2002
@@ -251,7 +251,7 @@
irq_balance_t *entry = irq_balance + irq;
unsigned long now = jiffies;

- if (unlikely(entry->timestamp != now)) {
+ if ((entry->timestamp != now) && (smp_num_cpus > 1)) {
unsigned long allowed_mask;
int random_number;

I don't know. Might be the IDE code too, of course.

Linus

-
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/