On Thu, Aug 25, 2005 at 11:26:58AM -0400, Bryan Althouse wrote:
> From: "Bryan Althouse" <bryan.althouse@3phoenix.com>
> To: "'Ralf Baechle'" <ralf@linux-mips.org>
> Cc: <linux-mips@linux-mips.org>
> Subject: RE: custom ide driver causes "Badness in smp_call_function"
> Date: Thu, 25 Aug 2005 11:26:58 -0400
> Content-Type: text/plain;
> charset="us-ascii"
>
> Ralf,
>
> Thank you for your help.
> I'm doing MMIO, not PIO, but it looks like your assessment is still valid.
... which still is programmed io ...
> I've been searching for places where ide MMIO is performed with interrupts
> disabled. I got excited when I found these lines in probe_hwif() of
> ide-probe.c:
>
> irqd = hwif->irq;
> if (irqd)
> disable_irq(hwif->irq);
>
> I was not initializing hwif->irq in my driver, so probably the interrupts
> were being disabled here, and subsequent lines were causing the SMP badness.
> I added the line "hwif->irq = 0" to my driver. Interrupts are no longer
> disabled here, but still I get the SMP badness. I'll keep looking for other
> places where the interrupts might be disabled.
>
> Does anyone know if the mips/swarm.c driver has this problem with SMP?
> Thanks!
No, SB1 has sane caches.
Ralf
|