Re: PCI rerouting

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Fri, 16 Jan 2004 17:21:29 -0500
On Friday 16 January 2004 03:25 pm, Bjoern A. Zeeb wrote:
> Hi,
>
> back last year I had trouble with some PCI rerouting:
> http://lists.freebsd.org/pipermail/freebsd-current/2003-July/thread.html#71
>55
>
> Noriyoshi Kawano came up with the attached patch but it hadn't been
> committed because it was unknown why a kernel panic happens at boot
> time.
>
> Today I rebuilt a kernel from HEAD and still had trouble so the
> tunable saved my weekend.
>
> Can we somehow get this debugged and sorted out ?

You need to do a gdb listing of the actual faulting IP address printed out in
the panic messages (part after colon of instruction pointer line).  Ah, I
think I know what is happening perhaps.  Your BIOS might be broken when we try
to route an interrupt.  Have you tried enabling ACPI?  The panic you are
getting I think comes from not having a valid curpcb yet, but that seems odd.

Ah, we never set it for proc0 during boot.  Try this patch:

Index: machdep.c
===================================================================
RCS file: /usr/cvs/src/sys/i386/i386/machdep.c,v
retrieving revision 1.585
diff -u -r1.585 machdep.c
--- machdep.c	3 Jan 2004 02:02:24 -0000	1.585
+++ machdep.c	16 Jan 2004 22:19:25 -0000
_at__at_ -2010,6 +2010,7 _at__at_
 	pcpu_init(pc, 0, sizeof(struct pcpu));
 	PCPU_SET(prvspace, pc);
 	PCPU_SET(curthread, &thread0);
+	PCPU_SET(curpcb, thread0.td_pcb);
 
 	/*
 	 * Initialize mutexes.
 

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Fri Jan 16 2004 - 13:33:18 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:38 UTC