linux-mips
[Top] [All Lists]

Re: custom ide driver causes "Badness in smp_call_function"

To: Bryan Althouse <bryan.althouse@3phoenix.com>
Subject: Re: custom ide driver causes "Badness in smp_call_function"
From: Ralf Baechle <ralf@linux-mips.org>
Date: Thu, 25 Aug 2005 16:42:49 +0100
Cc: linux-mips@linux-mips.org
In-reply-to: <20050825152131Z8225298-3678+7482@linux-mips.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20050824152444.GE2783@linux-mips.org> <20050825152131Z8225298-3678+7482@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.4.2.1i
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

<Prev in Thread] Current Thread [Next in Thread>