Subject: Re: Bug in x86 ioapic interrupt code for devices with shared interrupts?
To: Jason Thorpe <thorpej@shagadelic.org>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: port-amd64
Date: 03/03/2006 12:50:38
On Fri, Mar 03, 2006 at 08:49:12AM -0800, Jason Thorpe wrote:
> 
> On Mar 1, 2006, at 11:46 AM, Thor Lancelot Simon wrote:
> 
> >One of the NetBSD Foundation servers is a dual-Opteron with an onboard
> >dual Broadcom gigabit chip.  This chip, as far as I can tell from some
> >experiments, gets seriously disturbed by the driver's tendency to
> >acknowledge interrupts even if they're not actually from the device.
> 
> This is a bug in bge(4), plain and simple.  It should not acknowledge  
> the interrupt if it did not generate it, period.

I am aware that it is *also* a bug in bge(4) -- it only requires the
deletion of #if 0 / #endif to fix -- but surely it is *also* a bug if
interrupts are being routed to the wrong devices.  There is plenty
of other interrupt-related misbehavior on amd64 machines and getting
to the bottom of this might help.

For what it's worth, I don't even know for sure that the MegaRAID-
generated interrupts are even getting routed to the amr driver in
all cases.  They may be going *only* to bge.

-- 
  Thor Lancelot Simon	                                     tls@rek.tjls.com

  "We cannot usually in social life pursue a single value or a single moral
   aim, untroubled by the need to compromise with others."      - H.L.A. Hart