On Thu, Aug 25, 2005 at 11:26:58AM -0400, Bryan Althouse wrote:
> From: "Bryan Althouse" <email@example.com>
> To: "'Ralf Baechle'" <firstname.lastname@example.org>
> Cc: <email@example.com>
> Subject: RE: custom ide driver causes "Badness in smp_call_function"
> Date: Thu, 25 Aug 2005 11:26:58 -0400
> Content-Type: text/plain;
> 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
> irqd = hwif->irq;
> if (irqd)
> 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?
No, SB1 has sane caches.