Panic on 8-STABLE in mpt(4) on a DELL PowerEdge R300
Alexander Motin
mav at FreeBSD.org
Fri Feb 26 12:25:37 UTC 2010
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 fault
Attached 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) {
More information about the freebsd-stable
mailing list