Re: PCI rerouting

From: Bjoern A. Zeeb <bzeeb-lists_at_lists.zabbadoz.net>
Date: Mon, 19 Jan 2004 08:40:18 +0000 (UTC)
On Fri, 16 Jan 2004, John Baldwin wrote:

> 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.

it's a compaq deskpro - BIOS obviously not the best.

>   Have you tried enabling ACPI?

Yes have done this morning; works w/o panic.


>  The panic you are
> getting I think comes from not having a valid curpcb yet, but that seems odd.

here is the faulty instruction w/o acpi enabled and w/o your patch:

(kgdb) l *0xc0708134
0xc0708134 is in trap (/usr/src/sys/i386/i386/trap.c:457).
452                                     break;
453
454                             /* FALL THROUGH */
455
456                     case T_SEGNPFLT:        /* segment not present fault */
457                             if (PCPU_GET(curpcb)->pcb_flags & PCB_VM86CALL)
458                                     break;
459
460                             /*
461                              * Invalid %fs's and %gs's can be created using


It seems curpcb has been a good guess.


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

will give me a Fatal trap 9: gen. protection fault while in km
gdk -k says: no source file for address.

even if moving the newly added PCPU_SET a bit further to the end of
init386() after td_pcb {->pcb_flags} had been initialized  it will
give the same panic (fat. trap 9 with the same IP as before).

Any more ideas ?

-- 
Greetings

Bjoern A. Zeeb				bzeeb at Zabbadoz dot NeT
56 69 73 69 74				http://www.zabbadoz.net/
Received on Sun Jan 18 2004 - 23:50:28 UTC

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