Date: Mon, 13 Sep 2004 22:39:22 GMT From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 61458 for review Message-ID: <200409132239.i8DMdM1j091267@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=61458 Change 61458 by peter@peter_daintree on 2004/09/13 22:38:59 Integrate/sync i386 and hammer branches. There is some work to do still. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/busdma_machdep.c#17 integrate .. //depot/projects/hammer/sys/amd64/amd64/db_trace.c#19 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#102 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#72 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#105 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#54 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#56 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#46 integrate .. //depot/projects/hammer/sys/amd64/include/in_cksum.h#10 integrate .. //depot/projects/hammer/sys/amd64/include/param.h#26 integrate .. //depot/projects/hammer/sys/amd64/include/pmap.h#46 integrate .. //depot/projects/hammer/sys/amd64/include/profile.h#22 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/busdma_machdep.c#17 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/db_trace.c#19 (text+ko) ==== @@ -190,6 +190,7 @@ #define TRAP 1 #define INTERRUPT 2 #define SYSCALL 3 +#define DOUBLE_FAULT 4 static void db_nextframe(struct amd64_frame **, db_addr_t *, struct thread *); static int db_numargs(struct amd64_frame *); @@ -317,6 +318,8 @@ frame_type = INTERRUPT; else if (strcmp(name, "Xfast_syscall") == 0) frame_type = SYSCALL; + else if (strcmp(name, "dblfault_handler") == 0) + frame_type = DOUBLE_FAULT; } /* @@ -331,6 +334,23 @@ db_print_stack_entry(name, 0, 0, 0, rip); /* + * For a double fault, we have to snag the values from the + * previous TSS since a double fault uses a task gate to + * switch to a known good state. + */ + if (frame_type == DOUBLE_FAULT) { + esp = PCPU_GET(common_tss.tss_esp); + eip = PCPU_GET(common_tss.tss_eip); + ebp = PCPU_GET(common_tss.tss_ebp); + db_printf( + "--- trap 0x17, eip = %#r, esp = %#r, ebp = %#r ---\n", + eip, esp, ebp); + *ip = (db_addr_t) eip; + *fp = (struct i386_frame *) ebp; + return; + } + + /* * Point to base of trapframe which is just above the * current frame. */ ==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#102 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#72 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#105 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/trap.c#54 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/GENERIC#56 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/NOTES#46 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# (XXX from i386:NOTES,v 1.1170) +# (XXX from i386:NOTES,v 1.1172) # $FreeBSD: src/sys/amd64/conf/NOTES,v 1.19 2004/08/27 21:29:20 arved Exp $ # @@ -218,7 +218,7 @@ # for AGP r128 and radeon cards. device mgadrm -device "r128drm" +device r128drm device radeondrm device sisdrm device tdfxdrm @@ -327,6 +327,13 @@ # I2C Bus # +# +# Hardware watchdog timers: +# +# ichwd: Intel ICH watchdog timer +# +device ichwd + #--------------------------------------------------------------------------- # ISDN4BSD # @@ -366,20 +373,20 @@ # ifpi2 driver for AVM Fritz!Card PCI version 2 # # AVM Fritz!Card PCI version 2 -#XXX#device "ifpi2" +#XXX#device ifpi2 # #--------------------------------------------------------------------------- # iwic driver for Winbond W6692 chipset # # ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards) -#XXX#device iwic +#XXX#device iwic # #--------------------------------------------------------------------------- # itjc driver for Siemens ISAC / TJNet Tiger300/320 chipset # # Traverse Technologies NETjet-S # Teles PCI-TJ -#XXX#device itjc +#XXX#device itjc # #--------------------------------------------------------------------------- # iavc driver (AVM active cards, needs i4bcapi driver!) @@ -390,34 +397,38 @@ # ISDN Protocol Stack - mandatory for all hardware drivers # # Q.921 / layer 2 - i4b passive cards D channel handling -#XXX#device "i4bq921" +#XXX#device i4bq921 # # Q.931 / layer 3 - i4b passive cards D channel handling -#XXX#device "i4bq931" +#XXX#device i4bq931 # # layer 4 - i4b common passive and active card handling -#XXX#device "i4b" +#XXX#device i4b # #--------------------------------------------------------------------------- # ISDN devices - mandatory for all hardware drivers # # userland driver to do ISDN tracing (for passive cards only) -#XXX#device "i4btrc" 4 +#XXX#device i4btrc +#XXX#options NI4BTRC=4 # # userland driver to control the whole thing -#XXX#device "i4bctl" +#XXX#device i4bctl # #--------------------------------------------------------------------------- # ISDN devices - optional # # userland driver for access to raw B channel -#XXX#device "i4brbch" 4 +#XXX#device i4brbch +#XXX#options NI4BRBCH=4 # # userland driver for telephony -#XXX#device "i4btel" 2 +#XXX#device i4btel +#XXX#options NI4BTEL=2 # # network driver for IP over raw HDLC ISDN -#XXX#device "i4bipr" 4 +#XXX#device i4bipr +#XXX#options NI4BIPR=4 # enable VJ header compression detection for ipr i/f options IPR_VJ # enable logging of the first n IP packets to isdnd (n=32 here) @@ -425,10 +436,15 @@ # # network driver for sync PPP over ISDN; requires an equivalent # number of sppp device to be configured -#XXX#device "i4bisppp" 4 +#XXX#device i4bisppp +#XXX#options NI4BISPPP=4 # # B-channel interface to the netgraph subsystem -#XXX#device "i4bing" 2 +#XXX#device i4bing +#XXX#options NI4BING=2 +# +# CAPI driver needed for active ISDN cards (see iavc driver above) +#XXX#device i4bcapi # #--------------------------------------------------------------------------- ==== //depot/projects/hammer/sys/amd64/include/in_cksum.h#10 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/param.h#26 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/pmap.h#46 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/profile.h#22 (text+ko) ====
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409132239.i8DMdM1j091267>