Boot hangs on ips0: resetting adapter, this may take up to 5 minutes

Scott Long scottl at samsco.org
Mon Apr 10 18:43:42 UTC 2006


John Baldwin wrote:
> On Thursday 06 April 2006 15:07, Oleg Sharoiko wrote:
> 
>>Hi, that's me again.
>>
>>John, I've got more information on my problem:
>>
>>It looks like the mis-routed interrupt is the one from ips. In my kernel 
>>ips is on vector 49 and bge is on vector 60. I've added 
>>
>>	if (vector == 60)
>>		vector = 49;
>>
>>to sys/amd64/amd64/local_apic.c and I have no more interrupt storm until 
>>bge really generates interrupt. Am I right with my conclusion about ips 
>>interrupt being mis-directed to bge?
> 
> 
> Well, the vectors is the wrong thing to mess with as vector's are IDT
> entries.
> 
> 
>>There's also another interesting point: it looks like ips triggers 
>>interrupt on both vectors (49 and 60 - irq 28 and irq 16). Why do I think 
>>so?
> 
> 
> This happens in several machines with Intel server chipsets due to a bug
> in the PXH host bridges with no real workaround.
> 

Well, the work around is to not mask the APIC and instead let the driver 
handle masking or ACKing the interrupt =-)  It sucks that there are
undocumented gotchas like this in the PC platform, but it is important
to acknowledge them.

Scott




More information about the freebsd-scsi mailing list