From owner-freebsd-scsi@FreeBSD.ORG Thu Apr 6 20:12:04 2006 Return-Path: X-Original-To: freebsd-scsi@freebsd.org Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2985C16A406; Thu, 6 Apr 2006 20:12:04 +0000 (UTC) (envelope-from os@rsu.ru) Received: from mail.r61.net (mail.r61.net [195.208.245.235]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0860843D86; Thu, 6 Apr 2006 20:12:00 +0000 (GMT) (envelope-from os@rsu.ru) Received: from brain.cc.rsu.ru (brain.cc.rsu.ru [195.208.252.154]) (authenticated bits=0) by mail.r61.net (8.13.4/8.13.4) with ESMTP id k36KBsqX029583 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 7 Apr 2006 00:11:57 +0400 (MSD) (envelope-from os@rsu.ru) Date: Fri, 7 Apr 2006 00:11:55 +0400 (MSD) From: Oleg Sharoiko To: John Baldwin In-Reply-To: <20060406223724.S1099@wolf.os.rsu.ru> Message-ID: <20060407000934.R17852@brain.cc.rsu.ru> References: <20060215102749.D58480@brain.cc.rsu.ru> <200603271607.09550.jhb@freebsd.org> <20060328185449.F763@brain.cc.rsu.ru> <200603281108.25548.jhb@freebsd.org> <20060328201134.S763@brain.cc.rsu.ru> <20060406223724.S1099@wolf.os.rsu.ru> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: ClamAV version 0.86.2, clamav-milter version 0.86 on asterix.r61.net X-Virus-Status: Clean Cc: freebsd-scsi@freebsd.org, Andrey Beresovsky Subject: Re: Boot hangs on ips0: resetting adapter, this may take up to 5 minutes X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Apr 2006 20:12:04 -0000 On Thu, 6 Apr 2006, Oleg Sharoiko wrote: OS>It looks like the mis-routed interrupt is the one from ips. In my kernel OS>ips is on vector 49 and bge is on vector 60. I've added OS> if (vector == 60) OS> vector = 49; OS>to sys/amd64/amd64/local_apic.c and I have no more interrupt storm until I forgot to mention that I inserted this 'if' into lapic_handle_intr(). OS>bge really generates interrupt. Am I right with my conclusion about ips OS>interrupt being mis-directed to bge? OS> OS>There's also another interesting point: it looks like ips triggers OS>interrupt on both vectors (49 and 60 - irq 28 and irq 16). Why do I think OS>so? OS> OS>1. ips works fine even when there's no bge in kernel (I suppose irq 16 is OS>not activated in this case). I suppose this should mean that interrupts OS>are properly delivered to ips driver. OS> OS>2. I've added debug printf to bge_intr and in single mode when preemption OS>is disabled I see exact the same number of interrupts delivered to ips OS>(checked counters with showintrcnt) and to bge (incorrectly delivered - OS>bge is not in UP state and bge registers say "no interrupt"). OS> OS>This seems really strange to me, how can this be possible? Is there any OS>way to fix this? OS> OS>On Tue, 28 Mar 2006, Oleg Sharoiko wrote: OS> OS>OS> OS>OS>On Tue, 28 Mar 2006, John Baldwin wrote: OS>OS> OS>OS>JB>Is this an Intel box? OS>OS> OS>OS>This is IBM xSeries 226. Motherboard is labeled 'MS 9151 Ver.1'. It OS>OS>appears to be MSI E7525 Master-S2 or a modification of it. I couldn't find OS>OS>information about it in the net. Just few short notes and nothing else. I OS>OS>suppose it's based on Intel's E7525 chipset. OS>OS> OS>OS>JB>It only detects it if the interrupt line is constantly on. If the interrupt OS>OS>JB>line goes off for a little bit and then back on often enough the istorm logic OS>OS>JB>won't kick in. You can try lowering the threshold via the tunable to see if OS>OS>JB>you can get it to kick in perhaps. OS>OS> OS>OS>No luck here. OS>OS> OS>OS> OS> OS> -- Oleg Sharoiko. Software and Network Engineer Computer Center of Rostov State University.