From owner-freebsd-scsi@FreeBSD.ORG Tue May 4 07:24:04 2004 Return-Path: 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 0DC5216A4CE for ; Tue, 4 May 2004 07:24:04 -0700 (PDT) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.FreeBSD.org (Postfix) with ESMTP id 68E0643D31 for ; Tue, 4 May 2004 07:24:03 -0700 (PDT) (envelope-from scottl@freebsd.org) Received: from freebsd.org (junior-wifi.samsco.home [192.168.0.11]) by pooker.samsco.org (8.12.10/8.12.10) with ESMTP id i44ES7u6018704; Tue, 4 May 2004 08:28:07 -0600 (MDT) (envelope-from scottl@freebsd.org) Message-ID: <4097A76D.2060808@freebsd.org> Date: Tue, 04 May 2004 08:23:41 -0600 From: Scott Long User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.6) Gecko/20040304 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Don Bowman References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, hits=0.0 required=3.8 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on pooker.samsco.org cc: freebsd-scsi@freebsd.org Subject: Re: [PATCH] ASR driver update X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 May 2004 14:24:04 -0000 Thanks for the report. This is fixed in rev 1.58 of asr.c. I'm not sure why I didn't see this before. Btw, do you by chance have a 2005/2015 SO-DIMM form-factor card? I'm having trouble with mine and can't figure out if it's because the card is from a very early pre-production sample. Thanks, Scott Don Bowman wrote: > From: Scott Long [mailto:scottl@freebsd.org] > >>Scott Long wrote: >> >>>All, >>> >>>In case you've been watching the CVS commit mail, I've started a >>>massive cleanup effort on the ASR driver. Nearly all of the work >>>so far has been cosmetic and non-functional (which trimmed nearly >>>1000 lines off of asr.c!). Now I have a patch that converts the >>>driver to using the bus_space_*() API. While this should, in >>>theory, not change any functionality, it is a much more fundamental >>>change to the driver, so I'd appreciate more testing of it before >>>I commit. The patch can be found at >>> >>>http://people.freebsd.org/~scottl/asr_bus_space.diff >>> >>>I'm espeically interested in testing with the 20xx ZCR >> >>adapters since >> >>>they appear to be especially troublesome to the API. >>> >>>Thanks, >>> >>>Scott >> >> >>One thing that I forgot to mention is that the patch is only for the >>latest 5.2-CURRENT sources. You'll need revision 1.57 of asr.c in >>order for the patch to apply cleanly. >> > > Here are the resuls, a panic during bootup. System is a dual xeon. > Unfortunately, this was before dumpdev was setup, so i don't > have a stack trace. > > asr0: [GIANT-LOCKED] > > Fatal trap 12: page fault while in kernel mode > cpuid = 0; apic id = 00 > fault virtual address = 0xe0001 > fault code = supervisor write, page not present > instruction pointer = 0x8:0xc04738d2 > stack pointer = 0x10:0xc0c21918 > frame pointer = 0x10:0xc0c21930 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 0 (swapper) > trap number = 12 > panic: page fault > at line 815 in file /usr/src/sys/i386/i386/trap.c > cpuid = 0; > Uptime: 1s > Shutting down ACPI > Automatic reboot in 15 seconds - press a key on the console to abort > > (kgdb) info line *0xc04738d2 > Line 1957 of "/usr/src/sys/dev/asr/asr.c" > starts at address 0xc04738cf > and ends at 0xc04738d5 . > > > (void)ASR_fillMessage((void *)&Message_Ptr, > sizeof(I2O_EXEC_SYS_TAB_SET_MESSAGE) - sizeof(I2O_SG_ELEMENT) > + ((3+SystemTable->NumberEntries) * > sizeof(I2O_SGE_SIMPLE_ELEMENT))); > >>>I2O_MESSAGE_FRAME_setVersionOffset(&(Message_Ptr->StdMessageFrame), > (I2O_VERSION_11 + > (((sizeof(I2O_EXEC_SYS_TAB_SET_MESSAGE) - sizeof(I2O_SG_ELEMENT)) > / sizeof(U32)) << 4))); > > > > >