From owner-p4-projects@FreeBSD.ORG Mon Sep 13 22:39:24 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B60D816A4D0; Mon, 13 Sep 2004 22:39:23 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5E9AE16A4CE for ; Mon, 13 Sep 2004 22:39:23 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 42B6B43D1D for ; Mon, 13 Sep 2004 22:39:23 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8DMdN2p091270 for ; Mon, 13 Sep 2004 22:39:23 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8DMdM1j091267 for perforce@freebsd.org; Mon, 13 Sep 2004 22:39:22 GMT (envelope-from peter@freebsd.org) Date: Mon, 13 Sep 2004 22:39:22 GMT Message-Id: <200409132239.i8DMdM1j091267@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 61458 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Sep 2004 22:39:24 -0000 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) ====