Hello, I just got a PowerEdge R300, which netbooted fine with 7.2-STABLE (FreeBSD 7.2-STABLE #6: Wed Dec 2 01:25:52 CET 2009), but is dropping me into a panic right at boot with 8.0-STABLE (just built). This is what I'm getting (please forgive the lazyness of not transcribing everything..): http://lorenzo.yellowspace.net/R300_mpt_panic.gif An excerpt: Fatal trap 12: page fault while in kernel mode current process = 8 (mpt_raid0) Stopped at xpt_rescan+0x14: movq(%rsi),%rdx After just rebuilding the kernel with debug symbols, DDB and KDB, and booting with boot -d, I'm dropped into kdb but I cannot do anything there, at least not via the vKVM of the DRAC (I would have liked to trace, but it won't work..) The controller is the SAS 6i/R. If I can provide any other details please let me know. Thanx a lot for taking your time, Regards, Lorenzo
On 25.02.10 22:11, Lorenzo Perone wrote:> I just got a PowerEdge R300, which netbooted fine with 7.2-STABLE > (FreeBSD 7.2-STABLE #6: Wed Dec 2 01:25:52 CET 2009), but is dropping me > into a panic right at boot with 8.0-STABLE (just built). > > This is what I'm getting (please forgive the lazyness of not > transcribing everything..): > > http://lorenzo.yellowspace.net/R300_mpt_panic.gif > > An excerpt: > > Fatal trap 12: page fault while in kernel mode > > current process = 8 (mpt_raid0) > Stopped at xpt_rescan+0x14: movq(%rsi),%rdx > > After just rebuilding the kernel with debug symbols, DDB and KDB, and > booting with boot -d, I'm dropped into kdb but I cannot do anything > there, at least not via the vKVM of the DRAC (I would have liked to > trace, but it won't work..) > > The controller is the SAS 6i/R. > > If I can provide any other details please let me know. > > Thanx a lot for taking your time, >A follow up - I recompiled the kernel with mpt from head (svn checkout svn://svn.freebsd.org/base/head/sys/dev/mpt) and the problem still exists. Let me know if I should post a pr. I'm also available for testing patches. Regards, Lorenzo
John J. Rushford
2010-Feb-26 05:03 UTC
Panic on 8-STABLE in mpt(4) on a DELL PowerEdge R300
I'm running into the same problem, mpt(4) panic on FreeBSD 8-STABLE.
I'm running FreeBSD 8.0-STABLE, the current kernel was cvsup'd and built
@ January 14th, 2010. I cvsup'd tonight, 2/25/2010, and built a new
kernel. Attached is the panic when I tried to boot into single user
mode, I was able to boot up on the old kernel built on January 14th.
mpt0:vol0(mpt0:0:0): Using Spare Pool: 0
mpt0:vol0(mpt0:0:0): 2 Members:
(mpt0:1:0:0): Primary Online
(mpt0:1:1:0): Secondary Online
mpt0:vol0(mpt0:0:0): RAID-1 - Optimal
mpt0:vol0(mpt0:0:0): Status ( Enabled )
(mpt0:vol0:0): Physical (mpt0:0:0:0), Pass-thru (mpt0:1:0:0)
(mpt0:vol0:0): Online
(mpt0:vol0:1): Physical (mpt0:0:1:0), Pass-thru (mpt0:1:1:0)
(mpt0:vol0:1): Online
Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address = 0x10
fault code = supervisor read data, page not present
instruction pointer = 0x20:0xffffffff8019c4bd
stack pointer = 0x28:0xffffff80e81d5ba0
frame pointer = 0x28:0xffffff80e81d5bd0
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 6 (mpt_raid0)
trap number = 12
panic: page fault
cpuid = 0
Uptime: 3s
Cannot dump. Device not defined or unavailable.
Automatic reboot in 15 seconds - press a key on the console to abort
--> Press a key on the console to reboot,
--> or switch off the system now.
Alexander Motin
2010-Feb-26 12:25 UTC
Panic on 8-STABLE in mpt(4) on a DELL PowerEdge R300
John J. Rushford wrote:> I'm running into the same problem, mpt(4) panic on FreeBSD 8-STABLE. > > I'm running FreeBSD 8.0-STABLE, the current kernel was cvsup'd and built > @ January 14th, 2010. I cvsup'd tonight, 2/25/2010, and built a new > kernel. Attached is the panic when I tried to boot into single user > mode, I was able to boot up on the old kernel built on January 14th. > > Fatal trap 12: page fault while in kernel mode > cpuid = 0; apic id = 00 > fault virtual address = 0x10 > fault code = supervisor read data, page not present > instruction pointer = 0x20:0xffffffff8019c4bd > stack pointer = 0x28:0xffffff80e81d5ba0 > frame pointer = 0x28:0xffffff80e81d5bd0 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, long 1, def32 0, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 6 (mpt_raid0) > trap number = 12 > panic: page faultAttached patch should fix the problem. -- Alexander Motin -------------- next part -------------- --- mpt_raid.c.prev 2010-02-05 21:52:04.000000000 +0200 +++ mpt_raid.c 2010-02-26 14:14:30.000000000 +0200 @@ -690,7 +690,6 @@ mpt_raid_thread(void *arg) if (mpt->raid_rescan != 0) { union ccb *ccb; - struct cam_path *path; int error; mpt->raid_rescan = 0; @@ -699,7 +698,7 @@ mpt_raid_thread(void *arg) ccb = xpt_alloc_ccb(); MPT_LOCK(mpt); - error = xpt_create_path(&path, xpt_periph, + error = xpt_create_path(&ccb->ccb_h.path, xpt_periph, cam_sim_path(mpt->phydisk_sim), CAM_TARGET_WILDCARD, CAM_LUN_WILDCARD); if (error != CAM_REQ_CMP) {