From owner-p4-projects@FreeBSD.ORG Sun Nov 20 12:41:40 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E3DB816A422; Sun, 20 Nov 2005 12:41:39 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 BF53B16A420 for ; Sun, 20 Nov 2005 12:41:39 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8164143D45 for ; Sun, 20 Nov 2005 12:41:39 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAKCfdB2027422 for ; Sun, 20 Nov 2005 12:41:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAKCfd0q027419 for perforce@freebsd.org; Sun, 20 Nov 2005 12:41:39 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 20 Nov 2005 12:41:39 GMT Message-Id: <200511201241.jAKCfd0q027419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 86995 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Nov 2005 12:41:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=86995 Change 86995 by rwatson@rwatson_zoo on 2005/11/20 12:41:22 Remove MAC_BIBA from 'MAC' kernel, which is intended only to enable MAC and illustrate the generic framework options, not select a particular policy. Affected files ... .. //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#56 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#56 (text+ko) ==== @@ -3,7 +3,6 @@ options MAC #options MAC_ALWAYS_LABEL_MBUF -options MAC_BIBA options MAC_DEBUG options MAC_TEST #options MAC_STATIC From owner-p4-projects@FreeBSD.ORG Sun Nov 20 12:43:43 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6C1F16A421; Sun, 20 Nov 2005 12:43:42 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 9FDCA16A41F for ; Sun, 20 Nov 2005 12:43:42 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 74EF143D46 for ; Sun, 20 Nov 2005 12:43:42 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAKChg1R027573 for ; Sun, 20 Nov 2005 12:43:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAKChgv2027570 for perforce@freebsd.org; Sun, 20 Nov 2005 12:43:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 20 Nov 2005 12:43:42 GMT Message-Id: <200511201243.jAKChgv2027570@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 86996 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Nov 2005 12:43:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=86996 Change 86996 by rwatson@rwatson_zoo on 2005/11/20 12:42:44 Revert MAC configuration to vendor version from csjp, which is much better. Leave a few extra lines on the end illustrating debugging and UFS options (etc) relevant to the MAC development branch. Affected files ... .. //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#57 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#57 (text+ko) ==== @@ -1,10 +1,34 @@ -include GENERIC -ident MAC +# MAC -- Generic kernel configuration file for FreeBSD/i386 MAC +# +# The Mandatory Access Control, or MAC, framework allows administrators to +# finely control system security by providing for a loadable security pol- +# icy architecture. +# +# For more information see: +# +# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/mac.html +# +# $FreeBSD: src/sys/i386/conf/MAC,v 1.1 2005/09/18 03:15:35 csjp Exp $ + +include GENERIC +ident MAC options MAC + +#options MAC_BIBA # BIBA data integrity policy +#options MAC_BSDEXTENDED # File system firewall policy +#options MAC_IFOFF # Network interface silencing policy +#options MAC_LOMAC # Low-watermark data integrity policy +#options MAC_MLS # Multi-level confidentiality policy +#options MAC_NONE # NULL policy +#options MAC_PARTITION # Process partition policy +#options MAC_PORTACL # Network port access control policy +#options MAC_SEEOTHERUIDS # UID visibility policy +#options MAC_STUB # Stub policy +#options MAC_TEST # Testing policy for the MAC framework + #options MAC_ALWAYS_LABEL_MBUF options MAC_DEBUG -options MAC_TEST #options MAC_STATIC options UFS_EXTATTR options UFS_EXTATTR_AUTOSTART From owner-p4-projects@FreeBSD.ORG Sun Nov 20 18:11:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F110816A422; Sun, 20 Nov 2005 18:11:23 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 AE75C16A41F for ; Sun, 20 Nov 2005 18:11:23 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 22D2D43D49 for ; Sun, 20 Nov 2005 18:11:23 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAKIBM3x054947 for ; Sun, 20 Nov 2005 18:11:23 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAKIBMJv054932 for perforce@freebsd.org; Sun, 20 Nov 2005 18:11:22 GMT (envelope-from csjp@freebsd.org) Date: Sun, 20 Nov 2005 18:11:22 GMT Message-Id: <200511201811.jAKIBMJv054932@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 87006 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Nov 2005 18:11:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=87006 Change 87006 by csjp@csjp_xor on 2005/11/20 18:11:21 Add the MAC_CHKEXEC kernel option to the MAC kernel configuration file, so users know about the file system trusted executable policy. Affected files ... .. //depot/projects/trustedbsd/mac/sys/alpha/conf/MAC#2 edit .. //depot/projects/trustedbsd/mac/sys/amd64/conf/MAC#2 edit .. //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#58 edit .. //depot/projects/trustedbsd/mac/sys/ia64/conf/MAC#2 edit .. //depot/projects/trustedbsd/mac/sys/pc98/conf/MAC#2 edit .. //depot/projects/trustedbsd/mac/sys/powerpc/conf/MAC#2 edit .. //depot/projects/trustedbsd/mac/sys/sparc64/conf/MAC#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/alpha/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy ==== //depot/projects/trustedbsd/mac/sys/amd64/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy ==== //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#58 (text+ko) ==== @@ -26,6 +26,7 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy #options MAC_ALWAYS_LABEL_MBUF options MAC_DEBUG ==== //depot/projects/trustedbsd/mac/sys/ia64/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy ==== //depot/projects/trustedbsd/mac/sys/pc98/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy ==== //depot/projects/trustedbsd/mac/sys/powerpc/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy ==== //depot/projects/trustedbsd/mac/sys/sparc64/conf/MAC#2 (text+ko) ==== @@ -26,3 +26,4 @@ #options MAC_SEEOTHERUIDS # UID visibility policy #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework +#options MAC_CHKEXEC # File system trusted executable policy From owner-p4-projects@FreeBSD.ORG Sun Nov 20 18:16:30 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6398616A421; Sun, 20 Nov 2005 18:16:30 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 388EF16A41F for ; Sun, 20 Nov 2005 18:16:30 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DFDFF43D46 for ; Sun, 20 Nov 2005 18:16:29 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAKIGT2b055225 for ; Sun, 20 Nov 2005 18:16:29 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAKIGTeU055222 for perforce@freebsd.org; Sun, 20 Nov 2005 18:16:29 GMT (envelope-from csjp@freebsd.org) Date: Sun, 20 Nov 2005 18:16:29 GMT Message-Id: <200511201816.jAKIGTeU055222@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 87007 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Nov 2005 18:16:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=87007 Change 87007 by csjp@csjp_xor on 2005/11/20 18:15:58 sync the rest of the kernel configs with robert's i386 changes Affected files ... .. //depot/projects/trustedbsd/mac/sys/alpha/conf/MAC#3 edit .. //depot/projects/trustedbsd/mac/sys/amd64/conf/MAC#3 edit .. //depot/projects/trustedbsd/mac/sys/ia64/conf/MAC#3 edit .. //depot/projects/trustedbsd/mac/sys/pc98/conf/MAC#3 edit .. //depot/projects/trustedbsd/mac/sys/powerpc/conf/MAC#3 edit .. //depot/projects/trustedbsd/mac/sys/sparc64/conf/MAC#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/alpha/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/mac/sys/amd64/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/mac/sys/ia64/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/mac/sys/pc98/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/mac/sys/powerpc/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/mac/sys/sparc64/conf/MAC#3 (text+ko) ==== @@ -27,3 +27,9 @@ #options MAC_STUB # Stub policy #options MAC_TEST # Testing policy for the MAC framework #options MAC_CHKEXEC # File system trusted executable policy + +#options MAC_ALWAYS_LABEL_MBUF +options MAC_DEBUG +#options MAC_STATIC +options UFS_EXTATTR +options UFS_EXTATTR_AUTOSTART From owner-p4-projects@FreeBSD.ORG Mon Nov 21 19:15:29 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E60AA16A47D; Mon, 21 Nov 2005 19:15:28 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 A511816A47A for ; Mon, 21 Nov 2005 19:15:28 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5B89043D5F for ; Mon, 21 Nov 2005 19:15:07 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALJF7FK066224 for ; Mon, 21 Nov 2005 19:15:07 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALJF7pH066221 for perforce@freebsd.org; Mon, 21 Nov 2005 19:15:07 GMT (envelope-from cognet@freebsd.org) Date: Mon, 21 Nov 2005 19:15:07 GMT Message-Id: <200511211915.jALJF7pH066221@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 87032 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 19:15:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=87032 Change 87032 by cognet@cognet on 2005/11/21 19:14:53 Bring in more AT91RM92 bits. It now goes to the point where it asks for the root partition, and only needs a real UART driver to go single user. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91rm92.c#4 edit .. //depot/projects/arm/src/sys/arm/at91/at91rm92reg.h#4 edit .. //depot/projects/arm/src/sys/arm/at91/at91rm92timer.c#2 edit .. //depot/projects/arm/src/sys/arm/at91/files.at91rm92#2 edit .. //depot/projects/arm/src/sys/arm/at91/files.kb920x#2 edit .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#2 edit .. //depot/projects/arm/src/sys/arm/at91/uart_bus_at91rm92usart.c#1 add .. //depot/projects/arm/src/sys/arm/at91/uart_cpu_at91rm92usart.c#1 add .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91rm92usart.c#1 add .. //depot/projects/arm/src/sys/arm/conf/KB920X#2 edit .. //depot/projects/arm/src/sys/arm/conf/SKYEYE#1 add Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91rm92.c#4 (text+ko) ==== @@ -86,7 +86,7 @@ bs_protos(generic); bs_protos(generic_armv4); -static struct bus_space at91rm92_bs_tag = { +struct bus_space at91rm92_bs_tag = { /* cookie */ (void *) 0, @@ -226,6 +226,7 @@ device_add_child(dev, "at91rm92_timer", 0); bus_generic_probe(dev); bus_generic_attach(dev); + enable_interrupts(I32_bit | F32_bit); return (0); } ==== //depot/projects/arm/src/sys/arm/at91/at91rm92reg.h#4 (text+ko) ==== @@ -55,11 +55,34 @@ #define AT91RM92_USART_SIZE 0x4000 #define USART_CR 0x00 /* Control register */ +#define USART_CR_RSTRX (1 << 2) /* Reset Receiver */ +#define USART_CR_RSTTX (1 << 3) /* Reset Transmitter */ +#define USART_CR_RXEN (1 << 4) /* Receiver Enable */ +#define USART_CR_RXDIS (1 << 5) /* Receiver Disable */ +#define USART_CR_TXEN (1 << 6) /* Transmitter Enable */ +#define USART_CR_TXDIS (1 << 7) /* Transmitter Disable */ +#define USART_CR_RSTSTA (1 << 8) /* Reset Status Bits */ +#define USART_CR_STTBRK (1 << 9) /* Start Break */ +#define USART_CR_STPBRK (1 << 10) /* Stop Break */ +#define USART_CR_STTTO (1 << 11) /* Start Time-out */ +#define USART_CR_SENDA (1 << 12) /* Send Address */ +#define USART_CR_RSTIT (1 << 13) /* Reset Iterations */ +#define USART_CR_RSTNACK (1 << 14) /* Reset Non Acknowledge */ +#define USART_CR_RETTO (1 << 15) /* Rearm Time-out */ +#define USART_CR_DTREN (1 << 16) /* Data Terminal ready Enable */ +#define USART_CR_DTRDIS (1 << 17) /* Data Terminal ready Disable */ +#define USART_CR_RTSEN (1 << 18) /* Request to Send enable */ +#define USART_CR_RTSDIS (1 << 19) /* Request to Send Disable */ + #define USART_MR 0x04 /* Mode register */ #define USART_IER 0x08 /* Interrupt enable register */ #define USART_IDR 0x0c /* Interrupt disable register */ #define USART_IMR 0x10 /* Interrupt mask register */ #define USART_CSR 0x14 /* Channel status register */ + +#define USART_CSR_RXRDY (1 << 0) /* Receiver ready */ +#define USART_CSR_TXRDY (1 << 1) /* Transmitter ready */ + #define USART_RHR 0x18 /* Receiver holding register */ #define USART_THR 0x1c /* Transmitter holding register */ #define USART_BRGR 0x20 /* Baud rate generator register */ @@ -96,166 +119,166 @@ #define AT91RM92_SYS_BASE 0xffff000 #define AT91RM92_SYS_SIZE 0x1000 /* Interrupt Controller */ -#define IC_SMR (AT91RM92_SYS_BASE) /* Source mode register */ -#define IC_SVR (AT91RM92_SYS_BASE + 128) /* Source vector register */ -#define IC_IVR (AT91RM92_SYS_BASE + 256) /* IRQ vector register */ -#define IC_FVR (AT91RM92_SYS_BASE + 260) /* FIQ vector register */ -#define IC_ISR (AT91RM92_SYS_BASE + 264) /* Interrupt status register */ -#define IC_IPR (AT91RM92_SYS_BASE + 268) /* Interrupt pending register */ -#define IC_IMR (AT91RM92_SYS_BASE + 272) /* Interrupt status register */ -#define IC_CISR (AT91RM92_SYS_BASE + 276) /* Core interrupt status register */ -#define IC_IECR (AT91RM92_SYS_BASE + 288) /* Interrupt enable command register */ -#define IC_IDCR (AT91RM92_SYS_BASE + 292) /* Interrupt disable command register */ -#define IC_ICCR (AT91RM92_SYS_BASE + 296) /* Interrupt clear command register */ -#define IC_ISCR (AT91RM92_SYS_BASE + 300) /* Interrupt set command register */ -#define IC_EOICR (AT91RM92_SYS_BASE + 304) /* End of interrupt command register */ -#define IC_SPU (AT91RM92_SYS_BASE + 308) /* Spurious vector register */ -#define IC_DCR (AT91RM92_SYS_BASE + 312) /* Debug control register */ -#define IC_FFER (AT91RM92_SYS_BASE + 320) /* Fast forcing enable register */ -#define IC_FFDR (AT91RM92_SYS_BASE + 324) /* Fast forcing disable register */ -#define IC_FFSR (AT91RM92_SYS_BASE + 328) /* Fast forcing status register */ +#define IC_SMR (0) /* Source mode register */ +#define IC_SVR (128) /* Source vector register */ +#define IC_IVR (256) /* IRQ vector register */ +#define IC_FVR (260) /* FIQ vector register */ +#define IC_ISR (264) /* Interrupt status register */ +#define IC_IPR (268) /* Interrupt pending register */ +#define IC_IMR (272) /* Interrupt status register */ +#define IC_CISR (276) /* Core interrupt status register */ +#define IC_IECR (288) /* Interrupt enable command register */ +#define IC_IDCR (292) /* Interrupt disable command register */ +#define IC_ICCR (296) /* Interrupt clear command register */ +#define IC_ISCR (300) /* Interrupt set command register */ +#define IC_EOICR (304) /* End of interrupt command register */ +#define IC_SPU (308) /* Spurious vector register */ +#define IC_DCR (312) /* Debug control register */ +#define IC_FFER (320) /* Fast forcing enable register */ +#define IC_FFDR (324) /* Fast forcing disable register */ +#define IC_FFSR (328) /* Fast forcing status register */ /* DBGU */ -#define DBGU_CR (AT91RM92_SYS_BASE + 0x200) /* Control register */ -#define DBGU_MR (AT91RM92_SYS_BASE + 0x200 + 4) /* Mode register */ -#define DBGU_IER (AT91RM92_SYS_BASE + 0x200 + 8) /* Interrupt Enable Register */ -#define DBGU_IDR (AT91RM92_SYS_BASE + 0x200 + 12) /* Interrupt Disable Register */ -#define DBGU_IMR (AT91RM92_SYS_BASE + 0x200 + 16) /* Interrupt Mask Register */ -#define DBGU_CSR (AT91RM92_SYS_BASE + 0x200 + 20) /* Channel Status Register */ -#define DBGU_RHR (AT91RM92_SYS_BASE + 0x200 + 24) /* Receiver Holding Register */ -#define DBGU_THR (AT91RM92_SYS_BASE + 0x200 + 28) /* Transmitter Holding Register */ -#define DBGU_BRGR (AT91RM92_SYS_BASE + 0x200 + 32) /* Baud Rate Generator Register */ -#define DBGU_C1R (AT91RM92_SYS_BASE + 0x200 + 64) /* Chip ID1 Register */ -#define DBGU_C2R (AT91RM92_SYS_BASE + 0x200 + 68) /* Chip ID2 Register */ -#define DBGU_FNTR (AT91RM92_SYS_BASE + 0x200 + 72) /* Force NTRST Register */ -#define DBGU_RPR (AT91RM92_SYS_BASE + 0x200 + 256) /* Receive Pointer Register */ -#define DBGU_RCR (AT91RM92_SYS_BASE + 0x200 + 260) /* Receive Counter Register */ -#define DBGU_TPR (AT91RM92_SYS_BASE + 0x200 + 264) /* Transmit Pointer Register */ -#define DBGU_TCR (AT91RM92_SYS_BASE + 0x200 + 268) /* Transmit Counter Register */ -#define DBGU_RNPR (AT91RM92_SYS_BASE + 0x200 + 272) /* Receive Next Pointer Register */ -#define DBGU_RNCR (AT91RM92_SYS_BASE + 0x200 + 276) /* Receive Next Counter Register */ -#define DBGU_TNPR (AT91RM92_SYS_BASE + 0x200 + 280) /* Transmit Next Pointer Register */ -#define DBGU_TNCR (AT91RM92_SYS_BASE + 0x200 + 284) /* Transmit Next Counter Register */ -#define DBGU_PTCR (AT91RM92_SYS_BASE + 0x200 + 288) /* PDC Transfer Control Register */ -#define DBGU_PTSR (AT91RM92_SYS_BASE + 0x200 + 292) /* PDC Transfer Status Register */ +#define DBGU_CR (0x200) /* Control register */ +#define DBGU_MR (0x200 + 4) /* Mode register */ +#define DBGU_IER (0x200 + 8) /* Interrupt Enable Register */ +#define DBGU_IDR (0x200 + 12) /* Interrupt Disable Register */ +#define DBGU_IMR (0x200 + 16) /* Interrupt Mask Register */ +#define DBGU_CSR (0x200 + 20) /* Channel Status Register */ +#define DBGU_RHR (0x200 + 24) /* Receiver Holding Register */ +#define DBGU_THR (0x200 + 28) /* Transmitter Holding Register */ +#define DBGU_BRGR (0x200 + 32) /* Baud Rate Generator Register */ +#define DBGU_C1R (0x200 + 64) /* Chip ID1 Register */ +#define DBGU_C2R (0x200 + 68) /* Chip ID2 Register */ +#define DBGU_FNTR (0x200 + 72) /* Force NTRST Register */ +#define DBGU_RPR (0x200 + 256) /* Receive Pointer Register */ +#define DBGU_RCR (0x200 + 260) /* Receive Counter Register */ +#define DBGU_TPR (0x200 + 264) /* Transmit Pointer Register */ +#define DBGU_TCR (0x200 + 268) /* Transmit Counter Register */ +#define DBGU_RNPR (0x200 + 272) /* Receive Next Pointer Register */ +#define DBGU_RNCR (0x200 + 276) /* Receive Next Counter Register */ +#define DBGU_TNPR (0x200 + 280) /* Transmit Next Pointer Register */ +#define DBGU_TNCR (0x200 + 284) /* Transmit Next Counter Register */ +#define DBGU_PTCR (0x200 + 288) /* PDC Transfer Control Register */ +#define DBGU_PTSR (0x200 + 292) /* PDC Transfer Status Register */ -#define PIOA_PER (AT91RM92_SYS_BASE + 0x400) /* PIO Enable Register */ -#define PIOA_PDR (AT91RM92_SYS_BASE + 0x400 + 4) /* PIO Disable Register */ -#define PIOA_PSR (AT91RM92_SYS_BASE + 0x400 + 8) /* PIO status register */ -#define PIOA_OER (AT91RM92_SYS_BASE + 0x400 + 12) /* Output enable register */ -#define PIOA_ODR (AT91RM92_SYS_BASE + 0x400 + 20) /* Output disable register */ -#define PIOA_OSR (AT91RM92_SYS_BASE + 0x400 + 24) /* Output status register */ -#define PIOA_IFER (AT91RM92_SYS_BASE + 0x400 + 28) /* Input filter enable register */ -#define PIOA_IFDR (AT91RM92_SYS_BASE + 0x400 + 36) /* Input filter disable register */ -#define PIOA_IFSR (AT91RM92_SYS_BASE + 0x400 + 40) /* Input filter status register */ -#define PIOA_SODR (AT91RM92_SYS_BASE + 0x400 + 48) /* Set output data register */ -#define PIOA_CODR (AT91RM92_SYS_BASE + 0x400 + 52) /* Clear output data register */ -#define PIOA_ODSR (AT91RM92_SYS_BASE + 0x400 + 56) /* Output data status register */ -#define PIOA_PDSR (AT91RM92_SYS_BASE + 0x400 + 60) /* Pin data status register */ -#define PIOA_IER (AT91RM92_SYS_BASE + 0x400 + 64) /* Interrupt enable register */ -#define PIOA_IDR (AT91RM92_SYS_BASE + 0x400 + 68) /* Interrupt disable register */ -#define PIOA_IMR (AT91RM92_SYS_BASE + 0x400 + 72) /* Interrupt mask register */ -#define PIOA_ISR (AT91RM92_SYS_BASE + 0x400 + 76) /* Interrupt status register */ -#define PIOA_MDER (AT91RM92_SYS_BASE + 0x400 + 80) /* Multi driver enable register */ -#define PIOA_MDDR (AT91RM92_SYS_BASE + 0x400 + 84) /* Multi driver disable register */ -#define PIOA_MDSR (AT91RM92_SYS_BASE + 0x400 + 88) /* Multi driver status register */ -#define PIOA_PPUDR (AT91RM92_SYS_BASE + 0x400 + 96) /* Pull-up disable register */ -#define PIOA_PPUER (AT91RM92_SYS_BASE + 0x400 + 100) /* Pull-up enable register */ -#define PIOA_PPUSR (AT91RM92_SYS_BASE + 0x400 + 104) /* Pad pull-up status register */ -#define PIOA_ASR (AT91RM92_SYS_BASE + 0x400 + 112) /* Select A register */ -#define PIOA_BSR (AT91RM92_SYS_BASE + 0x400 + 116) /* Select B register */ -#define PIOA_ABSR (AT91RM92_SYS_BASE + 0x400 + 120) /* AB Select status register */ -#define PIOA_OWER (AT91RM92_SYS_BASE + 0x400 + 160) /* Output Write enable register */ -#define PIOA_OWDR (AT91RM92_SYS_BASE + 0x400 + 164) /* Output write disable register */ -#define PIOA_OWSR (AT91RM92_SYS_BASE + 0x400 + 168) /* Output write status register */ -#define PIOB_PER (AT91RM92_SYS_BASE + 0x400) /* PIO Enable Register */ -#define PIOB_PDR (AT91RM92_SYS_BASE + 0x600 + 4) /* PIO Disable Register */ -#define PIOB_PSR (AT91RM92_SYS_BASE + 0x600 + 8) /* PIO status register */ -#define PIOB_OER (AT91RM92_SYS_BASE + 0x600 + 12) /* Output enable register */ -#define PIOB_ODR (AT91RM92_SYS_BASE + 0x600 + 20) /* Output disable register */ -#define PIOB_OSR (AT91RM92_SYS_BASE + 0x600 + 24) /* Output status register */ -#define PIOB_IFER (AT91RM92_SYS_BASE + 0x600 + 28) /* Input filter enable register */ -#define PIOB_IFDR (AT91RM92_SYS_BASE + 0x600 + 36) /* Input filter disable register */ -#define PIOB_IFSR (AT91RM92_SYS_BASE + 0x600 + 40) /* Input filter status register */ -#define PIOB_SODR (AT91RM92_SYS_BASE + 0x600 + 48) /* Set output data register */ -#define PIOB_CODR (AT91RM92_SYS_BASE + 0x600 + 52) /* Clear output data register */ -#define PIOB_ODSR (AT91RM92_SYS_BASE + 0x600 + 56) /* Output data status register */ -#define PIOB_PDSR (AT91RM92_SYS_BASE + 0x600 + 60) /* Pin data status register */ -#define PIOB_IER (AT91RM92_SYS_BASE + 0x600 + 64) /* Interrupt enable register */ -#define PIOB_IDR (AT91RM92_SYS_BASE + 0x600 + 68) /* Interrupt disable register */ -#define PIOB_IMR (AT91RM92_SYS_BASE + 0x600 + 72) /* Interrupt mask register */ -#define PIOB_ISR (AT91RM92_SYS_BASE + 0x600 + 76) /* Interrupt status register */ -#define PIOB_MDER (AT91RM92_SYS_BASE + 0x600 + 80) /* Multi driver enable register */ -#define PIOB_MDDR (AT91RM92_SYS_BASE + 0x600 + 84) /* Multi driver disable register */ -#define PIOB_MDSR (AT91RM92_SYS_BASE + 0x600 + 88) /* Multi driver status register */ -#define PIOB_PPUDR (AT91RM92_SYS_BASE + 0x600 + 96) /* Pull-up disable register */ -#define PIOB_PPUER (AT91RM92_SYS_BASE + 0x600 + 100) /* Pull-up enable register */ -#define PIOB_PPUSR (AT91RM92_SYS_BASE + 0x600 + 104) /* Pad pull-up status register */ -#define PIOB_ASR (AT91RM92_SYS_BASE + 0x600 + 112) /* Select A register */ -#define PIOB_BSR (AT91RM92_SYS_BASE + 0x600 + 116) /* Select B register */ -#define PIOB_ABSR (AT91RM92_SYS_BASE + 0x600 + 120) /* AB Select status register */ -#define PIOB_OWER (AT91RM92_SYS_BASE + 0x600 + 160) /* Output Write enable register */ -#define PIOB_OWDR (AT91RM92_SYS_BASE + 0x600 + 164) /* Output write disable register */ -#define PIOB_OWSR (AT91RM92_SYS_BASE + 0x600 + 168) /* Output write status register */ -#define PIOC_PER (AT91RM92_SYS_BASE + 0x800) /* PIO Enable Register */ -#define PIOC_PDR (AT91RM92_SYS_BASE + 0x800 + 4) /* PIO Disable Register */ -#define PIOC_PSR (AT91RM92_SYS_BASE + 0x800 + 8) /* PIO status register */ -#define PIOC_OER (AT91RM92_SYS_BASE + 0x800 + 12) /* Output enable register */ -#define PIOC_ODR (AT91RM92_SYS_BASE + 0x800 + 20) /* Output disable register */ -#define PIOC_OSR (AT91RM92_SYS_BASE + 0x800 + 24) /* Output status register */ -#define PIOC_IFER (AT91RM92_SYS_BASE + 0x800 + 28) /* Input filter enable register */ -#define PIOC_IFDR (AT91RM92_SYS_BASE + 0x800 + 36) /* Input filter disable register */ -#define PIOC_IFSR (AT91RM92_SYS_BASE + 0x800 + 40) /* Input filter status register */ -#define PIOC_SODR (AT91RM92_SYS_BASE + 0x800 + 48) /* Set output data register */ -#define PIOC_CODR (AT91RM92_SYS_BASE + 0x800 + 52) /* Clear output data register */ -#define PIOC_ODSR (AT91RM92_SYS_BASE + 0x800 + 56) /* Output data status register */ -#define PIOC_PDSR (AT91RM92_SYS_BASE + 0x800 + 60) /* Pin data status register */ -#define PIOC_IER (AT91RM92_SYS_BASE + 0x800 + 64) /* Interrupt enable register */ -#define PIOC_IDR (AT91RM92_SYS_BASE + 0x800 + 68) /* Interrupt disable register */ -#define PIOC_IMR (AT91RM92_SYS_BASE + 0x800 + 72) /* Interrupt mask register */ -#define PIOC_ISR (AT91RM92_SYS_BASE + 0x800 + 76) /* Interrupt status register */ -#define PIOC_MDER (AT91RM92_SYS_BASE + 0x800 + 80) /* Multi driver enable register */ -#define PIOC_MDDR (AT91RM92_SYS_BASE + 0x800 + 84) /* Multi driver disable register */ -#define PIOC_MDSR (AT91RM92_SYS_BASE + 0x800 + 88) /* Multi driver status register */ -#define PIOC_PPUDR (AT91RM92_SYS_BASE + 0x800 + 96) /* Pull-up disable register */ -#define PIOC_PPUER (AT91RM92_SYS_BASE + 0x800 + 100) /* Pull-up enable register */ -#define PIOC_PPUSR (AT91RM92_SYS_BASE + 0x800 + 104) /* Pad pull-up status register */ -#define PIOC_ASR (AT91RM92_SYS_BASE + 0x800 + 112) /* Select A register */ -#define PIOC_BSR (AT91RM92_SYS_BASE + 0x800 + 116) /* Select B register */ -#define PIOC_ABSR (AT91RM92_SYS_BASE + 0x800 + 120) /* AB Select status register */ -#define PIOC_OWER (AT91RM92_SYS_BASE + 0x800 + 160) /* Output Write enable register */ -#define PIOC_OWDR (AT91RM92_SYS_BASE + 0x800 + 164) /* Output write disable register */ -#define PIOC_OWSR (AT91RM92_SYS_BASE + 0x800 + 168) /* Output write status register */ -#define PIOD_PER (AT91RM92_SYS_BASE + 0xa00) /* PIO Enable Register */ -#define PIOD_PDR (AT91RM92_SYS_BASE + 0xa00 + 4) /* PIO Disable Register */ -#define PIOD_PSR (AT91RM92_SYS_BASE + 0xa00 + 8) /* PIO status register */ -#define PIOD_OER (AT91RM92_SYS_BASE + 0xa00 + 12) /* Output enable register */ -#define PIOD_ODR (AT91RM92_SYS_BASE + 0xa00 + 20) /* Output disable register */ -#define PIOD_OSR (AT91RM92_SYS_BASE + 0xa00 + 24) /* Output status register */ -#define PIOD_IFER (AT91RM92_SYS_BASE + 0xa00 + 28) /* Input filter enable register */ -#define PIOD_IFDR (AT91RM92_SYS_BASE + 0xa00 + 36) /* Input filter disable register */ -#define PIOD_IFSR (AT91RM92_SYS_BASE + 0xa00 + 40) /* Input filter status register */ -#define PIOD_SODR (AT91RM92_SYS_BASE + 0xa00 + 48) /* Set output data register */ -#define PIOD_CODR (AT91RM92_SYS_BASE + 0xa00 + 52) /* Clear output data register */ -#define PIOD_ODSR (AT91RM92_SYS_BASE + 0xa00 + 56) /* Output data status register */ -#define PIOD_PDSR (AT91RM92_SYS_BASE + 0xa00 + 60) /* Pin data status register */ -#define PIOD_IER (AT91RM92_SYS_BASE + 0xa00 + 64) /* Interrupt enable register */ -#define PIOD_IDR (AT91RM92_SYS_BASE + 0xa00 + 68) /* Interrupt disable register */ -#define PIOD_IMR (AT91RM92_SYS_BASE + 0xa00 + 72) /* Interrupt mask register */ -#define PIOD_ISR (AT91RM92_SYS_BASE + 0xa00 + 76) /* Interrupt status register */ -#define PIOD_MDER (AT91RM92_SYS_BASE + 0xa00 + 80) /* Multi driver enable register */ -#define PIOD_MDDR (AT91RM92_SYS_BASE + 0xa00 + 84) /* Multi driver disable register */ -#define PIOD_MDSR (AT91RM92_SYS_BASE + 0xa00 + 88) /* Multi driver status register */ -#define PIOD_PPUDR (AT91RM92_SYS_BASE + 0xa00 + 96) /* Pull-up disable register */ -#define PIOD_PPUER (AT91RM92_SYS_BASE + 0xa00 + 100) /* Pull-up enable register */ -#define PIOD_PPUSR (AT91RM92_SYS_BASE + 0xa00 + 104) /* Pad pull-up status register */ -#define PIOD_ASR (AT91RM92_SYS_BASE + 0xa00 + 112) /* Select A register */ -#define PIOD_BSR (AT91RM92_SYS_BASE + 0xa00 + 116) /* Select B register */ -#define PIOD_ABSR (AT91RM92_SYS_BASE + 0xa00 + 120) /* AB Select status register */ -#define PIOD_OWER (AT91RM92_SYS_BASE + 0xa00 + 160) /* Output Write enable register */ -#define PIOD_OWDR (AT91RM92_SYS_BASE + 0xa00 + 164) /* Output write disable register */ -#define PIOD_OWSR (AT91RM92_SYS_BASE + 0xa00 + 168) /* Output write status register */ +#define PIOA_PER (0x400) /* PIO Enable Register */ +#define PIOA_PDR (0x400 + 4) /* PIO Disable Register */ +#define PIOA_PSR (0x400 + 8) /* PIO status register */ +#define PIOA_OER (0x400 + 12) /* Output enable register */ +#define PIOA_ODR (0x400 + 20) /* Output disable register */ +#define PIOA_OSR (0x400 + 24) /* Output status register */ +#define PIOA_IFER (0x400 + 28) /* Input filter enable register */ +#define PIOA_IFDR (0x400 + 36) /* Input filter disable register */ +#define PIOA_IFSR (0x400 + 40) /* Input filter status register */ +#define PIOA_SODR (0x400 + 48) /* Set output data register */ +#define PIOA_CODR (0x400 + 52) /* Clear output data register */ +#define PIOA_ODSR (0x400 + 56) /* Output data status register */ +#define PIOA_PDSR (0x400 + 60) /* Pin data status register */ +#define PIOA_IER (0x400 + 64) /* Interrupt enable register */ +#define PIOA_IDR (0x400 + 68) /* Interrupt disable register */ +#define PIOA_IMR (0x400 + 72) /* Interrupt mask register */ +#define PIOA_ISR (0x400 + 76) /* Interrupt status register */ +#define PIOA_MDER (0x400 + 80) /* Multi driver enable register */ +#define PIOA_MDDR (0x400 + 84) /* Multi driver disable register */ +#define PIOA_MDSR (0x400 + 88) /* Multi driver status register */ +#define PIOA_PPUDR (0x400 + 96) /* Pull-up disable register */ +#define PIOA_PPUER (0x400 + 100) /* Pull-up enable register */ +#define PIOA_PPUSR (0x400 + 104) /* Pad pull-up status register */ +#define PIOA_ASR (0x400 + 112) /* Select A register */ +#define PIOA_BSR (0x400 + 116) /* Select B register */ +#define PIOA_ABSR (0x400 + 120) /* AB Select status register */ +#define PIOA_OWER (0x400 + 160) /* Output Write enable register */ +#define PIOA_OWDR (0x400 + 164) /* Output write disable register */ +#define PIOA_OWSR (0x400 + 168) /* Output write status register */ +#define PIOB_PER (0x400) /* PIO Enable Register */ +#define PIOB_PDR (0x600 + 4) /* PIO Disable Register */ +#define PIOB_PSR (0x600 + 8) /* PIO status register */ +#define PIOB_OER (0x600 + 12) /* Output enable register */ +#define PIOB_ODR (0x600 + 20) /* Output disable register */ +#define PIOB_OSR (0x600 + 24) /* Output status register */ +#define PIOB_IFER (0x600 + 28) /* Input filter enable register */ +#define PIOB_IFDR (0x600 + 36) /* Input filter disable register */ +#define PIOB_IFSR (0x600 + 40) /* Input filter status register */ +#define PIOB_SODR (0x600 + 48) /* Set output data register */ +#define PIOB_CODR (0x600 + 52) /* Clear output data register */ +#define PIOB_ODSR (0x600 + 56) /* Output data status register */ +#define PIOB_PDSR (0x600 + 60) /* Pin data status register */ +#define PIOB_IER (0x600 + 64) /* Interrupt enable register */ +#define PIOB_IDR (0x600 + 68) /* Interrupt disable register */ +#define PIOB_IMR (0x600 + 72) /* Interrupt mask register */ +#define PIOB_ISR (0x600 + 76) /* Interrupt status register */ +#define PIOB_MDER (0x600 + 80) /* Multi driver enable register */ +#define PIOB_MDDR (0x600 + 84) /* Multi driver disable register */ +#define PIOB_MDSR (0x600 + 88) /* Multi driver status register */ +#define PIOB_PPUDR (0x600 + 96) /* Pull-up disable register */ +#define PIOB_PPUER (0x600 + 100) /* Pull-up enable register */ +#define PIOB_PPUSR (0x600 + 104) /* Pad pull-up status register */ +#define PIOB_ASR (0x600 + 112) /* Select A register */ +#define PIOB_BSR (0x600 + 116) /* Select B register */ +#define PIOB_ABSR (0x600 + 120) /* AB Select status register */ +#define PIOB_OWER (0x600 + 160) /* Output Write enable register */ +#define PIOB_OWDR (0x600 + 164) /* Output write disable register */ +#define PIOB_OWSR (0x600 + 168) /* Output write status register */ +#define PIOC_PER (0x800) /* PIO Enable Register */ +#define PIOC_PDR (0x800 + 4) /* PIO Disable Register */ +#define PIOC_PSR (0x800 + 8) /* PIO status register */ +#define PIOC_OER (0x800 + 12) /* Output enable register */ +#define PIOC_ODR (0x800 + 20) /* Output disable register */ +#define PIOC_OSR (0x800 + 24) /* Output status register */ +#define PIOC_IFER (0x800 + 28) /* Input filter enable register */ +#define PIOC_IFDR (0x800 + 36) /* Input filter disable register */ +#define PIOC_IFSR (0x800 + 40) /* Input filter status register */ +#define PIOC_SODR (0x800 + 48) /* Set output data register */ +#define PIOC_CODR (0x800 + 52) /* Clear output data register */ +#define PIOC_ODSR (0x800 + 56) /* Output data status register */ +#define PIOC_PDSR (0x800 + 60) /* Pin data status register */ +#define PIOC_IER (0x800 + 64) /* Interrupt enable register */ +#define PIOC_IDR (0x800 + 68) /* Interrupt disable register */ +#define PIOC_IMR (0x800 + 72) /* Interrupt mask register */ +#define PIOC_ISR (0x800 + 76) /* Interrupt status register */ +#define PIOC_MDER (0x800 + 80) /* Multi driver enable register */ +#define PIOC_MDDR (0x800 + 84) /* Multi driver disable register */ +#define PIOC_MDSR (0x800 + 88) /* Multi driver status register */ +#define PIOC_PPUDR (0x800 + 96) /* Pull-up disable register */ +#define PIOC_PPUER (0x800 + 100) /* Pull-up enable register */ +#define PIOC_PPUSR (0x800 + 104) /* Pad pull-up status register */ +#define PIOC_ASR (0x800 + 112) /* Select A register */ +#define PIOC_BSR (0x800 + 116) /* Select B register */ +#define PIOC_ABSR (0x800 + 120) /* AB Select status register */ +#define PIOC_OWER (0x800 + 160) /* Output Write enable register */ +#define PIOC_OWDR (0x800 + 164) /* Output write disable register */ +#define PIOC_OWSR (0x800 + 168) /* Output write status register */ +#define PIOD_PER (0xa00) /* PIO Enable Register */ +#define PIOD_PDR (0xa00 + 4) /* PIO Disable Register */ +#define PIOD_PSR (0xa00 + 8) /* PIO status register */ +#define PIOD_OER (0xa00 + 12) /* Output enable register */ +#define PIOD_ODR (0xa00 + 20) /* Output disable register */ +#define PIOD_OSR (0xa00 + 24) /* Output status register */ +#define PIOD_IFER (0xa00 + 28) /* Input filter enable register */ +#define PIOD_IFDR (0xa00 + 36) /* Input filter disable register */ +#define PIOD_IFSR (0xa00 + 40) /* Input filter status register */ +#define PIOD_SODR (0xa00 + 48) /* Set output data register */ +#define PIOD_CODR (0xa00 + 52) /* Clear output data register */ +#define PIOD_ODSR (0xa00 + 56) /* Output data status register */ +#define PIOD_PDSR (0xa00 + 60) /* Pin data status register */ +#define PIOD_IER (0xa00 + 64) /* Interrupt enable register */ +#define PIOD_IDR (0xa00 + 68) /* Interrupt disable register */ +#define PIOD_IMR (0xa00 + 72) /* Interrupt mask register */ +#define PIOD_ISR (0xa00 + 76) /* Interrupt status register */ +#define PIOD_MDER (0xa00 + 80) /* Multi driver enable register */ +#define PIOD_MDDR (0xa00 + 84) /* Multi driver disable register */ +#define PIOD_MDSR (0xa00 + 88) /* Multi driver status register */ +#define PIOD_PPUDR (0xa00 + 96) /* Pull-up disable register */ +#define PIOD_PPUER (0xa00 + 100) /* Pull-up enable register */ +#define PIOD_PPUSR (0xa00 + 104) /* Pad pull-up status register */ +#define PIOD_ASR (0xa00 + 112) /* Select A register */ +#define PIOD_BSR (0xa00 + 116) /* Select B register */ +#define PIOD_ABSR (0xa00 + 120) /* AB Select status register */ +#define PIOD_OWER (0xa00 + 160) /* Output Write enable register */ +#define PIOD_OWDR (0xa00 + 164) /* Output write disable register */ +#define PIOD_OWSR (0xa00 + 168) /* Output write status register */ /* IRQs : */ /* ==== //depot/projects/arm/src/sys/arm/at91/at91rm92timer.c#2 (text+ko) ==== @@ -53,7 +53,7 @@ static struct timecounter at91rm92timer_timecounter = { at91rm92timer_get_timecount, /* get_timecount */ NULL, /* no poll_pps */ - 0xffffu, /* counter_mask */ + 0xfffffu, /* counter_mask */ 32768, /* frequency */ "AT91RM9200 timer", /* name */ 0 /* quality */ @@ -72,6 +72,7 @@ timer_softc = device_get_softc(dev); timer_softc->sc_st = sc->sc_st; + timer_softc->dev = dev; if (bus_space_subregion(sc->sc_st, sc->sc_sh, AT91RM92_TIMER_BASE, AT91RM92_TIMER_SIZE, &timer_softc->sc_sh) != 0) panic("couldn't subregion timer registers"); @@ -97,19 +98,87 @@ static unsigned at91rm92timer_get_timecount(struct timecounter *tc) { - return (bus_space_read_4(timer_softc->sc_st, timer_softc->sc_sh, - TIMER_PIMR)); + int cur1, cur2; + do { + cur1 = bus_space_read_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_CRTR); + cur2 = bus_space_read_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_CRTR); + } while (cur1 != cur2); + return (cur1); +} + +static void +clock_intr(void *frame) +{ + /* The interrupt is shared, so we have to make sure it's for us. */ + if (bus_space_read_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_SR) & 1) { + hardclock(frame); + } } void cpu_initclocks(void) { + int rel_value; + struct resource *irq; + int rid = 0; + void *ih; + device_t dev = timer_softc->dev; + + if (32768 % hz) { + printf("Cannot get %d Hz clock; using 128Hz\n", hz); + hz = 128; + } + rel_value = 32768 / hz; + /* Disable all interrupts. */ + bus_space_write_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_IDR, 0xffffffff); + /* The system timer shares the system irq (1) */ + irq = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, 1, 1, 1, RF_ACTIVE); + if (!irq) + panic("Unable to all irq for the system timer"); + else + bus_setup_intr(dev, irq, INTR_TYPE_CLK | INTR_FAST, + clock_intr, NULL, &ih); + + bus_space_write_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_PIMR, rel_value); + /* Real time counter increments every clock cycle. */ + bus_space_write_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_RTMR, 1); + + /* Enable PITS interrupts. */ + bus_space_write_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_IER, 1); tc_init(&at91rm92timer_timecounter); } void DELAY(int n) { + uint32_t usec = 0; + uint32_t cur1, cur2, old, delta = 0; + + old = bus_space_read_4(timer_softc->sc_st, timer_softc->sc_sh, + TIMER_CRTR); + while (usec < n) { + do { + cur1 = bus_space_read_4(timer_softc->sc_st, + timer_softc->sc_sh, TIMER_CRTR); + cur2 = bus_space_read_4(timer_softc->sc_st, + timer_softc->sc_sh, TIMER_CRTR); + } while (cur1 != cur2); + if (old > cur1) + delta += (old + (0xfffff + 1 - cur1)); + else + delta += (cur1 - old); + usec += delta / 32768 * 1000000; + delta = 0; + + + } } void ==== //depot/projects/arm/src/sys/arm/at91/files.at91rm92#2 (text+ko) ==== @@ -3,3 +3,6 @@ arm/arm/irq_dispatch.S standard arm/at91/at91rm92.c standard arm/at91/at91rm92timer.c standard +arm/at91/uart_bus_at91rm92usart.c optional uart +arm/at91/uart_cpu_at91rm92usart.c optional uart +arm/at91/uart_dev_at91rm92usart.c optional uart ==== //depot/projects/arm/src/sys/arm/at91/files.kb920x#2 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#2 (text+ko) ==== @@ -95,9 +95,10 @@ #include #define KERNEL_PT_SYS 0 /* Page table for mapping proc0 zero page */ -#define KERNEL_PT_BEFOREKERN 1 -#define KERNEL_PT_AFKERNEL 2 /* L2 table for mapping after kernel */ -#define KERNEL_PT_AFKERNEL_NUM 9 +#define KERNEL_PT_KERN 1 +#define KERNEL_PT_KERN_NUM 4 +#define KERNEL_PT_AFKERNEL KERNEL_PT_KERN + KERNEL_PT_KERN_NUM /* L2 table for mapping after kernel */ +#define KERNEL_PT_AFKERNEL_NUM 5 /* this should be evenly divisable by PAGE_SIZE / L2_TABLE_SIZE_REAL (or 4) */ #define NUM_KERNEL_PTS (KERNEL_PT_AFKERNEL + KERNEL_PT_AFKERNEL_NUM) @@ -137,7 +138,6 @@ struct pv_addr kernelstack; struct pv_addr minidataclean; -void enable_mmu(vm_offset_t); static struct trapframe proc0_tf; /* Static device mappings. */ @@ -188,6 +188,7 @@ i = 0; set_cpufuncs(); + cninit(); fake_preload[i++] = MODINFO_NAME; fake_preload[i++] = strlen("elf kernel") + 1; strcpy((char*)&fake_preload[i++], "elf kernel"); @@ -201,7 +202,7 @@ fake_preload[i++] = KERNBASE; fake_preload[i++] = MODINFO_SIZE; fake_preload[i++] = sizeof(uint32_t); - fake_preload[i++] = (uint32_t)&end - KERNBASE - 0x00200000; + fake_preload[i++] = (uint32_t)&end - KERNBASE; fake_preload[i++] = 0; fake_preload[i] = 0; preload_metadata = (void *)fake_preload; @@ -215,7 +216,7 @@ /* Define a macro to simplify memory allocation */ #define valloc_pages(var, np) \ alloc_pages((var).pv_pa, (np)); \ - (var).pv_va = (var).pv_pa + 0xa0000000; + (var).pv_va = (var).pv_pa + (KERNVIRTADDR - KERNPHYSADDR); #define alloc_pages(var, np) \ (var) = freemempos; \ @@ -260,11 +261,12 @@ l1pagetable = kernel_l1pt.pv_va; /* Map the L2 pages tables in the L1 page table */ - pmap_link_l2pt(l1pagetable, ARM_VECTORS_HIGH & ~(0x00100000 - 1), + pmap_link_l2pt(l1pagetable, ARM_VECTORS_LOW, &kernel_pt_table[KERNEL_PT_SYS]); - pmap_link_l2pt(l1pagetable, KERNBASE, - &kernel_pt_table[KERNEL_PT_BEFOREKERN]); - pmap_map_chunk(l1pagetable, KERNBASE, 0x20000000, + for (i = 0; i < KERNEL_PT_KERN_NUM; i++) + pmap_link_l2pt(l1pagetable, KERNBASE + i * 0x100000, + &kernel_pt_table[KERNEL_PT_KERN + i]); + pmap_map_chunk(l1pagetable, KERNBASE, KERNPHYSADDR, (((uint32_t)(&end) - KERNBASE) + PAGE_SIZE) & ~(PAGE_SIZE - 1), VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE); afterkern = round_page(((vm_offset_t)&end + L1_S_SIZE) & ~(L1_S_SIZE @@ -292,7 +294,10 @@ pmap_map_chunk(l1pagetable, kernel_l1pt.pv_va, kernel_l1pt.pv_pa, L1_TABLE_SIZE, VM_PROT_READ|VM_PROT_WRITE, PTE_PAGETABLE); + pmap_map_chunk(l1pagetable, msgbufpv.pv_va, msgbufpv.pv_pa, + MSGBUF_SIZE, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE); + for (loop = 0; loop < NUM_KERNEL_PTS; ++loop) { pmap_map_chunk(l1pagetable, kernel_pt_table[loop].pv_va, kernel_pt_table[loop].pv_pa, L2_TABLE_SIZE, @@ -314,6 +319,7 @@ */ + cpu_control(CPU_CONTROL_MMU_ENABLE, CPU_CONTROL_MMU_ENABLE); set_stackptr(PSR_IRQ32_MODE, irqstack.pv_va + IRQ_STACK_SIZE * PAGE_SIZE); set_stackptr(PSR_ABT32_MODE, @@ -334,7 +340,6 @@ * this problem will not occur after initarm(). */ cpu_idcache_wbinv_all(); - cninit(); /* Set stack for exception handlers */ @@ -351,28 +356,33 @@ thread0.td_frame = &proc0_tf; pcpup->pc_curpcb = thread0.td_pcb; - /* Enable MMU, I-cache, D-cache, write buffer. */ - - arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL); + arm_vector_init(ARM_VECTORS_LOW, ARM_VEC_ALL); - pmap_bootstrap(pmap_curmaxkvaddr, - 0xd0000000, &kernel_l1pt); + pmap_curmaxkvaddr = freemempos - KERNPHYSADDR + KERNVIRTADDR; + pmap_curmaxkvaddr = afterkern + 0x100000 * (KERNEL_PT_KERN_NUM - 1); + pmap_bootstrap(freemempos - KERNPHYSADDR + KERNVIRTADDR, + KERNVIRTADDR + 3 * memsize, + &kernel_l1pt); msgbufp = (void*)msgbufpv.pv_va; msgbufinit(msgbufp, MSGBUF_SIZE); mutex_init(); i = 0; - dump_avail[0] = freemempos; - dump_avail[1] = 0x20000000 + memsize; + dump_avail[0] = KERNPHYSADDR; + dump_avail[1] = KERNPHYSADDR + memsize; dump_avail[2] = 0; dump_avail[3] = 0; + phys_avail[0] = freemempos; + phys_avail[1] = KERNPHYSADDR + memsize; + phys_avail[2] = 0; + phys_avail[3] = 0; /* Do basic tuning, hz etc */ init_param1(); init_param2(memsize / PAGE_SIZE); - avail_end = 0x20000000 + memsize - 1; + avail_end = KERNPHYSADDR + memsize - 1; kdb_init(); return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - sizeof(struct pcb))); ==== //depot/projects/arm/src/sys/arm/conf/KB920X#2 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Nov 21 19:17:15 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9182716A422; Mon, 21 Nov 2005 19:17:14 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 6A55016A41F for ; Mon, 21 Nov 2005 19:17:14 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2FFF843D58 for ; Mon, 21 Nov 2005 19:17:11 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALJHB5f066377 for ; Mon, 21 Nov 2005 19:17:11 GMT (envelope-from millert@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALJHAKw066374 for perforce@freebsd.org; Mon, 21 Nov 2005 19:17:10 GMT (envelope-from millert@freebsd.org) Date: Mon, 21 Nov 2005 19:17:10 GMT Message-Id: <200511211917.jALJHAKw066374@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to millert@freebsd.org using -f From: Todd Miller To: Perforce Change Reviews Cc: Subject: PERFORCE change 87034 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 19:17:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=87034 Change 87034 by millert@millert_ibook on 2005/11/21 19:16:24 Pull in a fix from DSEP (wsalamon). The mac_check_fcntl() function takes a pointer to the file struct, not the filedesc struct, as its second parameter. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/darwin/xnu/bsd/kern/kern_descrip.c#4 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin7/src/darwin/xnu/bsd/kern/kern_descrip.c#4 (text+ko) ==== @@ -262,7 +262,7 @@ pop = &fdp->fd_ofileflags[fd]; #ifdef MAC - error = mac_check_fcntl(p->p_ucred, fdp, uap->cmd, uap->arg); + error = mac_check_fcntl(p->p_ucred, fp, uap->cmd, uap->arg); if (error) return (error); #endif From owner-p4-projects@FreeBSD.ORG Mon Nov 21 20:06:41 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5609F16A421; Mon, 21 Nov 2005 20:06:41 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 0CDB916A41F for ; Mon, 21 Nov 2005 20:06:41 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 81C1D43D45 for ; Mon, 21 Nov 2005 20:06:40 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALK6edl068774 for ; Mon, 21 Nov 2005 20:06:40 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALK6XKE068762 for perforce@freebsd.org; Mon, 21 Nov 2005 20:06:33 GMT (envelope-from jhb@freebsd.org) Date: Mon, 21 Nov 2005 20:06:33 GMT Message-Id: <200511212006.jALK6XKE068762@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 87042 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 20:06:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=87042 Change 87042 by jhb@jhb_slimer on 2005/11/21 20:05:51 IFC @87038. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/clock.c#16 integrate .. //depot/projects/smpng/sys/alpha/alpha/pmap.c#75 integrate .. //depot/projects/smpng/sys/amd64/amd64/apic_vector.S#10 integrate .. //depot/projects/smpng/sys/amd64/amd64/identcpu.c#15 integrate .. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#47 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#29 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#50 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#38 integrate .. //depot/projects/smpng/sys/amd64/conf/NOTES#26 integrate .. //depot/projects/smpng/sys/arm/arm/identcpu.c#5 integrate .. //depot/projects/smpng/sys/arm/arm/pmap.c#23 integrate .. //depot/projects/smpng/sys/arm/include/armreg.h#3 integrate .. //depot/projects/smpng/sys/arm/include/pmap.h#14 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf#39 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf.5#11 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#27 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#60 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#34 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#38 integrate .. //depot/projects/smpng/sys/conf/Makefile.arm#15 integrate .. //depot/projects/smpng/sys/conf/files#158 integrate .. //depot/projects/smpng/sys/conf/files.amd64#36 integrate .. //depot/projects/smpng/sys/conf/files.i386#89 integrate .. //depot/projects/smpng/sys/conf/files.pc98#77 integrate .. //depot/projects/smpng/sys/conf/options.i386#52 integrate .. //depot/projects/smpng/sys/conf/options.pc98#51 integrate .. //depot/projects/smpng/sys/contrib/dev/oltr/if_oltr.c#16 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.c#12 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#18 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#53 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aicasm/Makefile#13 integrate .. //depot/projects/smpng/sys/dev/an/if_an.c#48 integrate .. //depot/projects/smpng/sys/dev/arl/if_arl.c#10 integrate .. //depot/projects/smpng/sys/dev/ath/ath_rate/sample/sample.c#5 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#32 integrate .. //depot/projects/smpng/sys/dev/ath/if_athioctl.h#10 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#20 integrate .. //depot/projects/smpng/sys/dev/bfe/if_bfe.c#20 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#62 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#32 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_card.c#14 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_card.h#8 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_tuner.c#9 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_tuner.h#5 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#43 integrate .. //depot/projects/smpng/sys/dev/dc/if_dc.c#3 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed.c#36 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#57 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#29 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.h#16 integrate .. //depot/projects/smpng/sys/dev/em/if_em_osdep.h#15 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep.c#26 integrate .. //depot/projects/smpng/sys/dev/ex/if_ex.c#19 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe.c#23 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe_pccard.c#18 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#69 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem.c#26 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme.c#28 integrate .. //depot/projects/smpng/sys/dev/hptmv/entry.c#8 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_x86.c#4 integrate .. //depot/projects/smpng/sys/dev/ie/if_ie.c#15 integrate .. //depot/projects/smpng/sys/dev/ipw/if_ipw.c#9 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwi.c#12 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwireg.h#5 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwivar.h#5 integrate .. //depot/projects/smpng/sys/dev/ixgb/if_ixgb.c#14 integrate .. //depot/projects/smpng/sys/dev/joy/joy.c#10 integrate .. //depot/projects/smpng/sys/dev/lge/if_lge.c#32 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc.c#21 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc_cbus.c#10 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.h#7 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/smpng/sys/dev/my/if_my.c#21 integrate .. //depot/projects/smpng/sys/dev/nge/if_nge.c#46 integrate .. //depot/projects/smpng/sys/dev/nve/if_nve.c#8 integrate .. //depot/projects/smpng/sys/dev/owi/if_ieee80211.h#2 delete .. //depot/projects/smpng/sys/dev/owi/if_owi.c#11 delete .. //depot/projects/smpng/sys/dev/owi/if_owi_pccard.c#7 delete .. //depot/projects/smpng/sys/dev/owi/if_wireg.h#3 delete .. //depot/projects/smpng/sys/dev/owi/if_wivar.h#5 delete .. //depot/projects/smpng/sys/dev/pci/pci.c#65 integrate .. //depot/projects/smpng/sys/dev/pdq/if_fea.c#10 integrate .. //depot/projects/smpng/sys/dev/pdq/if_fpa.c#11 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq_freebsd.h#9 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq_ifsubr.c#13 integrate .. //depot/projects/smpng/sys/dev/ral/if_ral.c#11 integrate .. //depot/projects/smpng/sys/dev/ray/if_ray.c#24 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#33 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni.c#20 integrate .. //depot/projects/smpng/sys/dev/snc/dp83932.c#15 integrate .. //depot/projects/smpng/sys/dev/sound/isa/sb16.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ich.c#37 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via8233.c#19 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#29 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/channel.c#33 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/dsp.c#31 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_fmt.c#13 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_rate.c#10 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_volume.c#2 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/mixer.c#23 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio.c#9 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio.h#5 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio_pcm.c#13 integrate .. //depot/projects/smpng/sys/dev/speaker/speaker.h#1 branch .. //depot/projects/smpng/sys/dev/speaker/spkr.c#1 branch .. //depot/projects/smpng/sys/dev/twa/tw_cl.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_externs.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_fwif.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_fwimg.c#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_init.c#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_intr.c#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_io.c#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_ioctl.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_misc.c#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_cl_share.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl.h#2 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_cam.c#5 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_freebsd.c#4 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_includes.h#3 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_inline.h#1 branch .. //depot/projects/smpng/sys/dev/twa/tw_osl_share.h#4 integrate .. //depot/projects/smpng/sys/dev/tx/if_tx.c#24 integrate .. //depot/projects/smpng/sys/dev/txp/if_txp.c#31 integrate .. //depot/projects/smpng/sys/dev/usb/if_aue.c#40 integrate .. //depot/projects/smpng/sys/dev/usb/if_axe.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/if_cue.c#31 integrate .. //depot/projects/smpng/sys/dev/usb/if_kue.c#28 integrate .. //depot/projects/smpng/sys/dev/usb/if_rue.c#18 integrate .. //depot/projects/smpng/sys/dev/usb/if_udav.c#12 integrate .. //depot/projects/smpng/sys/dev/usb/if_ural.c#10 integrate .. //depot/projects/smpng/sys/dev/usb/if_uralvar.h#4 integrate .. //depot/projects/smpng/sys/dev/usb/ulpt.c#22 integrate .. //depot/projects/smpng/sys/dev/vge/if_vge.c#13 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx.c#23 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi.c#79 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl.c#27 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe.c#25 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#53 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#45 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_vfsops.c#32 integrate .. //depot/projects/smpng/sys/geom/geom_disk.c#46 integrate .. //depot/projects/smpng/sys/geom/geom_disk.h#5 integrate .. //depot/projects/smpng/sys/geom/geom_dump.c#24 integrate .. //depot/projects/smpng/sys/geom/geom_gpt.c#21 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#47 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum.c#13 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum.h#8 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_drive.c#14 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_move.c#1 branch .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_rename.c#1 branch .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_rm.c#8 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#111 integrate .. //depot/projects/smpng/sys/i386/conf/PAE#16 integrate .. //depot/projects/smpng/sys/i386/conf/XBOX#1 branch .. //depot/projects/smpng/sys/i386/i386/apic_vector.s#19 integrate .. //depot/projects/smpng/sys/i386/i386/identcpu.c#39 integrate .. //depot/projects/smpng/sys/i386/i386/io_apic.c#15 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#99 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#94 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#90 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#89 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#75 integrate .. //depot/projects/smpng/sys/i386/include/speaker.h#3 integrate .. //depot/projects/smpng/sys/i386/include/xbox.h#1 branch .. //depot/projects/smpng/sys/i386/isa/clock.c#45 integrate .. //depot/projects/smpng/sys/i386/isa/spkr.c#17 delete .. //depot/projects/smpng/sys/i386/pci/pci_cfgreg.c#31 integrate .. //depot/projects/smpng/sys/i386/xbox/pic16l.s#1 branch .. //depot/projects/smpng/sys/i386/xbox/xbox.c#1 branch .. //depot/projects/smpng/sys/i386/xbox/xboxfb.c#1 branch .. //depot/projects/smpng/sys/ia64/ia64/pmap.c#75 integrate .. //depot/projects/smpng/sys/kern/imgact_elf.c#48 integrate .. //depot/projects/smpng/sys/kern/init_main.c#58 integrate .. //depot/projects/smpng/sys/kern/kern_acct.c#38 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#86 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#105 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#96 integrate .. //depot/projects/smpng/sys/kern/kern_ktrace.c#47 integrate .. //depot/projects/smpng/sys/kern/kern_proc.c#80 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#113 integrate .. //depot/projects/smpng/sys/kern/kern_time.c#39 integrate .. //depot/projects/smpng/sys/kern/subr_power.c#6 integrate .. //depot/projects/smpng/sys/kern/subr_rman.c#25 integrate .. //depot/projects/smpng/sys/kern/subr_sleepqueue.c#20 integrate .. //depot/projects/smpng/sys/kern/subr_trap.c#79 integrate .. //depot/projects/smpng/sys/kern/sys_process.c#46 integrate .. //depot/projects/smpng/sys/kern/uipc_proto.c#5 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#51 integrate .. //depot/projects/smpng/sys/kern/vfs_aio.c#65 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#52 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#115 integrate .. //depot/projects/smpng/sys/modules/Makefile#110 integrate .. //depot/projects/smpng/sys/modules/geom/geom_vinum/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/iwi/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/md/Makefile#5 integrate .. //depot/projects/smpng/sys/modules/oldcard/Makefile#6 delete .. //depot/projects/smpng/sys/modules/owi/Makefile#4 delete .. //depot/projects/smpng/sys/modules/speaker/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/twa/Makefile#4 integrate .. //depot/projects/smpng/sys/net/fddi.h#6 integrate .. //depot/projects/smpng/sys/net/if.c#76 integrate .. //depot/projects/smpng/sys/net/if_arcsubr.c#20 integrate .. //depot/projects/smpng/sys/net/if_arp.h#9 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#15 integrate .. //depot/projects/smpng/sys/net/if_bridgevar.h#4 integrate .. //depot/projects/smpng/sys/net/if_clone.c#7 integrate .. //depot/projects/smpng/sys/net/if_clone.h#3 integrate .. //depot/projects/smpng/sys/net/if_disc.c#21 integrate .. //depot/projects/smpng/sys/net/if_ef.c#21 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#66 integrate .. //depot/projects/smpng/sys/net/if_faith.c#30 integrate .. //depot/projects/smpng/sys/net/if_fddisubr.c#26 integrate .. //depot/projects/smpng/sys/net/if_fwsubr.c#10 integrate .. //depot/projects/smpng/sys/net/if_gif.c#30 integrate .. //depot/projects/smpng/sys/net/if_gre.c#27 integrate .. //depot/projects/smpng/sys/net/if_iso88025subr.c#23 integrate .. //depot/projects/smpng/sys/net/if_mib.c#8 integrate .. //depot/projects/smpng/sys/net/if_ppp.c#37 integrate .. //depot/projects/smpng/sys/net/if_stf.c#34 integrate .. //depot/projects/smpng/sys/net/if_tap.c#38 integrate .. //depot/projects/smpng/sys/net/if_var.h#42 integrate .. //depot/projects/smpng/sys/net/if_vlan.c#42 integrate .. //depot/projects/smpng/sys/net/iso88025.h#7 integrate .. //depot/projects/smpng/sys/net/route.c#29 integrate .. //depot/projects/smpng/sys/net/rtsock.c#51 integrate .. //depot/projects/smpng/sys/net80211/ieee80211.c#16 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#21 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_var.h#15 integrate .. //depot/projects/smpng/sys/netatalk/aarp.c#19 integrate .. //depot/projects/smpng/sys/netatalk/at_proto.c#4 integrate .. //depot/projects/smpng/sys/netatm/atm_if.c#16 integrate .. //depot/projects/smpng/sys/netatm/atm_proto.c#8 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket.c#12 integrate .. //depot/projects/smpng/sys/netgraph/netgraph.h#24 integrate .. //depot/projects/smpng/sys/netgraph/ng_base.c#42 integrate .. //depot/projects/smpng/sys/netgraph/ng_ether.c#29 integrate .. //depot/projects/smpng/sys/netgraph/ng_fec.c#18 integrate .. //depot/projects/smpng/sys/netgraph/ng_socket.c#35 integrate .. //depot/projects/smpng/sys/netinet/igmp.c#17 integrate .. //depot/projects/smpng/sys/netinet/in_gif.c#16 integrate .. //depot/projects/smpng/sys/netinet/in_proto.c#22 integrate .. //depot/projects/smpng/sys/netinet/ip_carp.c#15 integrate .. //depot/projects/smpng/sys/netinet/ip_divert.c#45 integrate .. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#22 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#62 integrate .. //depot/projects/smpng/sys/netinet/ip_icmp.c#37 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#71 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#43 integrate .. //depot/projects/smpng/sys/netinet/ip_options.c#1 branch .. //depot/projects/smpng/sys/netinet/ip_options.h#1 branch .. //depot/projects/smpng/sys/netinet/ip_output.c#79 integrate .. //depot/projects/smpng/sys/netinet/ip_var.h#30 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#77 integrate .. //depot/projects/smpng/sys/netinet/tcp_output.c#38 integrate .. //depot/projects/smpng/sys/netinet/tcp_sack.c#15 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#43 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#61 integrate .. //depot/projects/smpng/sys/netinet6/in6_proto.c#14 integrate .. //depot/projects/smpng/sys/netinet6/mld6.c#16 integrate .. //depot/projects/smpng/sys/netipsec/keysock.c#10 integrate .. //depot/projects/smpng/sys/netipx/ipx_ip.c#14 integrate .. //depot/projects/smpng/sys/netipx/ipx_proto.c#7 integrate .. //depot/projects/smpng/sys/netkey/keysock.c#23 integrate .. //depot/projects/smpng/sys/netnatm/natm_proto.c#15 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_bio.c#44 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_socket.c#39 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_subs.c#27 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#55 integrate .. //depot/projects/smpng/sys/nfsclient/nfsm_subs.h#9 integrate .. //depot/projects/smpng/sys/pc98/conf/NOTES#47 integrate .. //depot/projects/smpng/sys/pci/agp_amd64.c#7 integrate .. //depot/projects/smpng/sys/pci/if_de.c#29 integrate .. //depot/projects/smpng/sys/pci/if_pcn.c#38 integrate .. //depot/projects/smpng/sys/pci/if_rl.c#63 integrate .. //depot/projects/smpng/sys/pci/if_sf.c#42 integrate .. //depot/projects/smpng/sys/pci/if_sis.c#58 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#53 integrate .. //depot/projects/smpng/sys/pci/if_ste.c#43 integrate .. //depot/projects/smpng/sys/pci/if_ti.c#51 integrate .. //depot/projects/smpng/sys/pci/if_tl.c#32 integrate .. //depot/projects/smpng/sys/pci/if_vr.c#43 integrate .. //depot/projects/smpng/sys/pci/if_wb.c#37 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#65 integrate .. //depot/projects/smpng/sys/powerpc/conf/GENERIC#29 integrate .. //depot/projects/smpng/sys/powerpc/include/pte.h#5 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/ofw_machdep.c#12 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/pmap.c#58 delete .. //depot/projects/smpng/sys/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/smpng/sys/powerpc/psim/ata_iobus.c#12 integrate .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#59 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/pmap.c#61 integrate .. //depot/projects/smpng/sys/sys/ata.h#23 integrate .. //depot/projects/smpng/sys/sys/ktrace.h#12 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#56 integrate .. //depot/projects/smpng/sys/sys/mdioctl.h#14 integrate .. //depot/projects/smpng/sys/sys/param.h#90 integrate .. //depot/projects/smpng/sys/sys/proc.h#156 integrate .. //depot/projects/smpng/sys/sys/queue.h#14 integrate .. //depot/projects/smpng/sys/sys/resource.h#16 integrate .. //depot/projects/smpng/sys/sys/signal.h#22 integrate .. //depot/projects/smpng/sys/sys/time.h#19 integrate .. //depot/projects/smpng/sys/sys/wait.h#9 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#78 integrate .. //depot/projects/smpng/sys/vm/pmap.h#28 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#75 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#54 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/clock.c#16 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.39 2005/05/14 09:10:00 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.40 2005/11/20 01:31:29 marcel Exp $"); #include "opt_clock.h" @@ -475,31 +475,20 @@ * and the time of year clock (if any) provides the rest. */ void -inittodr(base) - time_t base; +inittodr(time_t base) { - register int days, yr; struct clocktime ct; - time_t deltat; - int badbase, clock_compat_osf1; - int s; struct timespec ts; - - if (base < 5*SECYR) { - printf("WARNING: preposterous time in filesystem"); - /* read the system clock anyway */ - base = 6*SECYR + 186*SECDAY + SECDAY/2; - badbase = 1; - } else - badbase = 0; + int clock_compat_osf1, todr_unreliable; + int days, yr; if (getenv_int("clock_compat_osf1", &clock_compat_osf1)) { if (clock_compat_osf1) clock_year_offset = UNIX_YEAR_OFFSET; } + todr_unreliable = 0; CLOCK_GET(clockdev, base, &ct); - clockinitted = 1; #ifdef DEBUG printf("readclock: %d/%d/%d/%d/%d/%d\n", ct.year, ct.mon, ct.day, @@ -508,7 +497,7 @@ ct.year += clock_year_offset; if (ct.year < 70) ct.year += 100; - + /* simple sanity checks */ if (ct.year < 70 || ct.mon < 1 || ct.mon > 12 || ct.day < 1 || ct.day > 31 || ct.hour > 23 || ct.min > 59 || ct.sec > 59) { @@ -516,48 +505,47 @@ * Believe the time in the filesystem for lack of * anything better, resetting the TODR. */ - s = splclock(); ts.tv_sec = base; - ts.tv_nsec = 0; - tc_setclock(&ts); - splx(s); - if (!badbase) { - printf("WARNING: preposterous clock chip time\n"); - resettodr(); - } - goto bad; + printf("WARNING: preposterous real-time clock"); + todr_unreliable = 1; + } else { + days = 0; + for (yr = 70; yr < ct.year; yr++) + days += LEAPYEAR(yr) ? 366 : 365; + days += dayyr[ct.mon - 1] + ct.day - 1; + if (LEAPYEAR(yr) && ct.mon > 2) + days++; + /* now have days since Jan 1, 1970; the rest is easy... */ + ts.tv_sec = days * SECDAY + ct.hour * SECHOUR + + ct.min * SECMIN + ct.sec; + if (wall_cmos_clock) + ts.tv_sec += adjkerntz; + /* + * The time base comes from a saved time, whereas the real- + * time clock is supposed to represent the current time. + * It is logically not possible for a saved time to be + * larger than the current time, so if that happens, assume + * the real-time clock is off. Warn when the real-time + * clock is off by two or more days. + */ + if (ts.tv_sec < base) { + ts.tv_sec = base; + days = (base - ts.tv_sec) / (60L * 60L * 24L); + if (days >= 2) { + printf("WARNING: real-time clock lost %d days", + days); + todr_unreliable = 1; + } + } } - days = 0; - for (yr = 70; yr < ct.year; yr++) - days += LEAPYEAR(yr) ? 366 : 365; - days += dayyr[ct.mon - 1] + ct.day - 1; - if (LEAPYEAR(yr) && ct.mon > 2) - days++; - /* now have days since Jan 1, 1970; the rest is easy... */ - s = splclock(); - ts.tv_sec = - days * SECDAY + ct.hour * SECHOUR + ct.min * SECMIN + ct.sec; - if (wall_cmos_clock) - ts.tv_sec += adjkerntz; ts.tv_nsec = 0; tc_setclock(&ts); - splx(s); + clockinitted = 1; - if (!badbase) { - /* - * See if we gained/lost two or more days; - * if so, assume something is amiss. - */ - deltat = ts.tv_sec - base; - if (deltat < 0) - deltat = -deltat; - if (deltat < 2 * SECDAY) - return; - printf("WARNING: clock %s %d days", - ts.tv_sec < base ? "lost" : "gained", deltat / SECDAY); + if (todr_unreliable) { + printf(" -- CHECK AND RESET THE DATE!\n"); + resettodr(); } -bad: - printf(" -- CHECK AND RESET THE DATE!\n"); } /* ==== //depot/projects/smpng/sys/alpha/alpha/pmap.c#75 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.183 2005/11/04 18:03:23 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.186 2005/11/20 06:09:47 alc Exp $"); #include #include @@ -317,11 +317,9 @@ */ static uma_zone_t pvzone; static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0; -int pmap_pagedaemon_waken; static PMAP_INLINE void free_pv_entry(pv_entry_t pv); -static pv_entry_t get_pv_entry(void); -static pv_entry_t pv_entry_reclaim(pmap_t locked_pmap); +static pv_entry_t get_pv_entry(pmap_t locked_pmap); static void alpha_protection_init(void); static void pmap_changebit(vm_page_t m, int bit, boolean_t setem); @@ -585,11 +583,6 @@ pv_entry_high_water = 9 * (pv_entry_max / 10); } -void -pmap_init2() -{ -} - /*************************************************** * Manipulate TLBs for a pmap @@ -1300,49 +1293,57 @@ /* * get a new pv_entry, allocating a block from the system * when needed. - * the memory allocation is performed bypassing the malloc code - * because of the possibility of allocations at interrupt time. */ static pv_entry_t -get_pv_entry(void) +get_pv_entry(pmap_t locked_pmap) { - pv_entry_count++; - if ((pv_entry_count > pv_entry_high_water) && - (pmap_pagedaemon_waken == 0)) { - pmap_pagedaemon_waken = 1; - wakeup (&vm_pages_needed); - } - return uma_zalloc(pvzone, M_NOWAIT); -} - -/* - * Reclaim a pv entry by removing a mapping to an inactive page. - */ -static pv_entry_t -pv_entry_reclaim(pmap_t locked_pmap) -{ + static const struct timeval printinterval = { 60, 0 }; + static struct timeval lastprint; + struct vpgqueues *vpq; pmap_t pmap; pt_entry_t *pte, tpte; - pv_entry_t pv; + pv_entry_t allocated_pv, next_pv, pv; vm_offset_t va; vm_page_t m; PMAP_LOCK_ASSERT(locked_pmap, MA_OWNED); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - TAILQ_FOREACH(m, &vm_page_queues[PQ_INACTIVE].pl, pageq) { + allocated_pv = uma_zalloc(pvzone, M_NOWAIT); + if (allocated_pv != NULL) { + pv_entry_count++; + if (pv_entry_count > pv_entry_high_water) + pagedaemon_wakeup(); + else + return (allocated_pv); + } + + /* + * Reclaim pv entries: At first, destroy mappings to inactive + * pages. After that, if a pv entry is still needed, destroy + * mappings to active pages. + */ + if (ratecheck(&lastprint, &printinterval)) + printf("Approaching the limit on PV entries, " + "increase the vm.pmap.shpgperproc tunable.\n"); + vpq = &vm_page_queues[PQ_INACTIVE]; +retry: + TAILQ_FOREACH(m, &vpq->pl, pageq) { if (m->hold_count || m->busy || (m->flags & PG_BUSY)) continue; - TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + TAILQ_FOREACH_SAFE(pv, &m->md.pv_list, pv_list, next_pv) { va = pv->pv_va; pmap = pv->pv_pmap; - if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) + /* Avoid deadlock and lock recursion. */ + if (pmap > locked_pmap) + PMAP_LOCK(pmap); + else if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) continue; pmap->pm_stats.resident_count--; pte = pmap_lev3pte(pmap, va); tpte = *pte; *pte = 0; KASSERT((tpte & PG_W) == 0, - ("pv_entry_reclaim: wired pte %#lx", tpte)); + ("get_pv_entry: wired pte %#lx", tpte)); if ((tpte & PG_FOR) == 0) vm_page_flag_set(m, PG_REFERENCED); if ((tpte & PG_FOW) == 0) { @@ -1358,10 +1359,20 @@ pmap_unuse_pt(pmap, va, pv->pv_ptem); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - return (pv); + if (allocated_pv == NULL) + allocated_pv = pv; + else + free_pv_entry(pv); + } + } + if (allocated_pv == NULL) { + if (vpq == &vm_page_queues[PQ_INACTIVE]) { + vpq = &vm_page_queues[PQ_ACTIVE]; + goto retry; } + panic("get_pv_entry: increase the vm.pmap.shpgperproc tunable"); } - panic("pv_entry_reclaim: increase vm.pmap.shpgperproc"); + return (allocated_pv); } static int @@ -1408,9 +1419,7 @@ { pv_entry_t pv; - pv = get_pv_entry(); - if (pv == NULL) - pv = pv_entry_reclaim(pmap); + pv = get_pv_entry(pmap); pv->pv_va = va; pv->pv_pmap = pmap; pv->pv_ptem = mpte; ==== //depot/projects/smpng/sys/amd64/amd64/apic_vector.S#10 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.104 2005/10/24 20:52:26 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.105 2005/11/16 20:55:57 jhb Exp $ */ /* @@ -297,11 +297,10 @@ test %eax, %eax jnz 2f - xorq %rax, %rax - lock - xchgq cpustop_restartfunc, %rax + movq cpustop_restartfunc, %rax testq %rax, %rax jz 2f + movq $0, cpustop_restartfunc /* One-shot */ call *%rax 2: ==== //depot/projects/smpng/sys/amd64/amd64/identcpu.c#15 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.140 2005/10/17 23:23:20 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.141 2005/11/17 02:32:39 obrien Exp $"); #include "opt_cpu.h" @@ -339,7 +339,7 @@ cpu_feature &= ~CPUID_HTT; if (bootverbose) printf("\nHTT bit cleared - FreeBSD" - " does not have licenseing issues" + " does not have licensing issues" " requiring it.\n"); } ==== //depot/projects/smpng/sys/amd64/amd64/io_apic.c#12 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.19 2005/11/04 23:02:28 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.20 2005/11/16 20:29:29 jhb Exp $"); #include "opt_atpic.h" #include "opt_isa.h" @@ -503,7 +503,7 @@ mtx_unlock_spin(&icu_lock); /* If it's version register doesn't seem to work, punt. */ - if (value == 0xffffff) { + if (value == 0xffffffff) { pmap_unmapdev((vm_offset_t)apic, IOAPIC_MEM_REGION); return (NULL); } ==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#47 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.643 2005/10/26 22:16:52 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.644 2005/11/21 18:39:17 jhb Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -124,7 +124,9 @@ #include #endif +#include #include +#include #include #include @@ -1125,14 +1127,6 @@ u_int64_t msr; char *env; -#ifdef DEV_ISA - /* Preemptively mask the atpics and leave them shut down */ - outb(IO_ICU1 + ICU_IMR_OFFSET, 0xff); - outb(IO_ICU2 + ICU_IMR_OFFSET, 0xff); -#else -#error "have you forgotten the isa device?"; -#endif - thread0.td_kstack = physfree + KERNBASE; bzero((void *)thread0.td_kstack, KSTACK_PAGES * PAGE_SIZE); physfree += KSTACK_PAGES * PAGE_SIZE; @@ -1231,9 +1225,35 @@ */ cninit(); +#ifdef DEV_ISA #ifdef DEV_ATPIC elcr_probe(); atpic_startup(); +#else + /* Reset and mask the atpics and leave them shut down. */ + outb(IO_ICU1, ICW1_RESET | ICW1_IC4); + outb(IO_ICU1 + ICU_IMR_OFFSET, IDT_IO_INTS); + outb(IO_ICU1 + ICU_IMR_OFFSET, 1 << 2); + outb(IO_ICU1 + ICU_IMR_OFFSET, ICW4_8086); + outb(IO_ICU1 + ICU_IMR_OFFSET, 0xff); + outb(IO_ICU1, OCW3_SEL | OCW3_RR); + + outb(IO_ICU2, ICW1_RESET | ICW1_IC4); + outb(IO_ICU2 + ICU_IMR_OFFSET, IDT_IO_INTS + 8); + outb(IO_ICU2 + ICU_IMR_OFFSET, 2); + outb(IO_ICU2 + ICU_IMR_OFFSET, ICW4_8086); + outb(IO_ICU2 + ICU_IMR_OFFSET, 0xff); + outb(IO_ICU2, OCW3_SEL | OCW3_RR); + + /* + * Point the ICU spurious interrupt vectors at the APIC spurious + * interrupt handler. + */ + setidt(IDT_IO_INTS + 7, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0); + setidt(IDT_IO_INTS + 15, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0); +#endif +#else +#error "have you forgotten the isa device?"; #endif kdb_init(); ==== //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#29 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.264 2005/10/24 21:04:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.265 2005/11/16 20:58:39 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -1072,7 +1072,6 @@ { int cpu = PCPU_GET(cpuid); int cpumask = PCPU_GET(cpumask); - void (*restartfunc)(void); if (!(ipi_nmi_pending & cpumask)) return 1; @@ -1091,10 +1090,10 @@ atomic_clear_int(&started_cpus, cpumask); atomic_clear_int(&stopped_cpus, cpumask); - restartfunc = (void (*)(void))atomic_readandclear_long( - (u_long *)&cpustop_restartfunc); - if (restartfunc != NULL) - restartfunc(); + if (cpu == 0 && cpustop_restartfunc != NULL) { + cpustop_restartfunc(); + cpustop_restartfunc = NULL; + } return 0; } ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#50 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.532 2005/11/04 18:03:23 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.535 2005/11/20 06:09:48 alc Exp $"); /* * Manages physical address maps. @@ -185,7 +185,6 @@ static uma_zone_t pvzone; static struct vm_object pvzone_obj; static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0; -int pmap_pagedaemon_waken; /* * All those kernel PT submaps that BSD is so fond of @@ -200,8 +199,7 @@ static caddr_t crashdumpmap; static PMAP_INLINE void free_pv_entry(pv_entry_t pv); -static pv_entry_t get_pv_entry(void); -static pv_entry_t pv_entry_reclaim(pmap_t locked_pmap); +static pv_entry_t get_pv_entry(pmap_t locked_pmap); static void pmap_clear_ptes(vm_page_t m, long bit); static int pmap_remove_pte(pmap_t pmap, pt_entry_t *ptq, @@ -581,11 +579,6 @@ uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); } -void -pmap_init2() -{ -} - /*************************************************** * Low level helper routines..... @@ -1428,54 +1421,62 @@ /* * get a new pv_entry, allocating a block from the system * when needed. - * the memory allocation is performed bypassing the malloc code - * because of the possibility of allocations at interrupt time. */ static pv_entry_t -get_pv_entry(void) +get_pv_entry(pmap_t locked_pmap) { - pv_entry_count++; - if ((pv_entry_count > pv_entry_high_water) && - (pmap_pagedaemon_waken == 0)) { - pmap_pagedaemon_waken = 1; - wakeup (&vm_pages_needed); - } - return uma_zalloc(pvzone, M_NOWAIT); -} - -/* - * Reclaim a pv entry by removing a mapping to an inactive page. - */ -static pv_entry_t -pv_entry_reclaim(pmap_t locked_pmap) -{ + static const struct timeval printinterval = { 60, 0 }; + static struct timeval lastprint; + struct vpgqueues *vpq; pd_entry_t ptepde; pmap_t pmap; pt_entry_t *pte, tpte; - pv_entry_t pv; + pv_entry_t allocated_pv, next_pv, pv; vm_offset_t va; vm_page_t m; PMAP_LOCK_ASSERT(locked_pmap, MA_OWNED); mtx_assert(&vm_page_queue_mtx, MA_OWNED); - TAILQ_FOREACH(m, &vm_page_queues[PQ_INACTIVE].pl, pageq) { + allocated_pv = uma_zalloc(pvzone, M_NOWAIT); + if (allocated_pv != NULL) { + pv_entry_count++; + if (pv_entry_count > pv_entry_high_water) + pagedaemon_wakeup(); + else + return (allocated_pv); + } + + /* + * Reclaim pv entries: At first, destroy mappings to inactive + * pages. After that, if a pv entry is still needed, destroy + * mappings to active pages. + */ + if (ratecheck(&lastprint, &printinterval)) + printf("Approaching the limit on PV entries, " + "increase the vm.pmap.shpgperproc tunable.\n"); + vpq = &vm_page_queues[PQ_INACTIVE]; +retry: + TAILQ_FOREACH(m, &vpq->pl, pageq) { if (m->hold_count || m->busy || (m->flags & PG_BUSY)) continue; - TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + TAILQ_FOREACH_SAFE(pv, &m->md.pv_list, pv_list, next_pv) { va = pv->pv_va; pmap = pv->pv_pmap; - if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) + /* Avoid deadlock and lock recursion. */ + if (pmap > locked_pmap) + PMAP_LOCK(pmap); + else if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) continue; pmap->pm_stats.resident_count--; pte = pmap_pte_pde(pmap, va, &ptepde); tpte = pte_load_clear(pte); KASSERT((tpte & PG_W) == 0, - ("pv_entry_reclaim: wired pte %#lx", tpte)); + ("get_pv_entry: wired pte %#lx", tpte)); if (tpte & PG_A) vm_page_flag_set(m, PG_REFERENCED); if (tpte & PG_M) { KASSERT((tpte & PG_RW), - ("pv_entry_reclaim: modified page not writable: va: %#lx, pte: %#lx", + ("get_pv_entry: modified page not writable: va: %#lx, pte: %#lx", va, tpte)); if (pmap_track_modified(va)) vm_page_dirty(m); @@ -1489,10 +1490,20 @@ pmap_unuse_pt(pmap, va, ptepde); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - return (pv); + if (allocated_pv == NULL) + allocated_pv = pv; + else + free_pv_entry(pv); + } + } + if (allocated_pv == NULL) { + if (vpq == &vm_page_queues[PQ_INACTIVE]) { + vpq = &vm_page_queues[PQ_ACTIVE]; + goto retry; } + panic("get_pv_entry: increase the vm.pmap.shpgperproc tunable"); } - panic("pv_entry_reclaim: increase vm.pmap.shpgperproc"); + return (allocated_pv); } static void @@ -1531,11 +1542,7 @@ { pv_entry_t pv; - pv = get_pv_entry(); - if (pv == NULL) { - pv_entry_count--; - pv = pv_entry_reclaim(pmap); - } + pv = get_pv_entry(pmap); pv->pv_va = va; pv->pv_pmap = pmap; ==== //depot/projects/smpng/sys/amd64/amd64/trap.c#38 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.296 2005/10/24 21:04:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.297 2005/11/18 19:26:46 jhb Exp $"); /* * AMD64 Trap and System call handling @@ -100,7 +100,7 @@ static void trap_fatal(struct trapframe *, vm_offset_t); void dblfault_handler(void); -#define MAX_TRAP_MSG 28 +#define MAX_TRAP_MSG 30 static char *trap_msg[] = { "", /* 0 unused */ "privileged instruction fault", /* 1 T_PRIVINFLT */ @@ -131,6 +131,8 @@ "segment not present fault", /* 26 T_SEGNPFLT */ "stack fault", /* 27 T_STKFLT */ "machine check trap", /* 28 T_MCHK */ + "SIMD floating-point exception", /* 29 T_XMMFLT */ + "reserved (unknown) fault", /* 30 T_RESERVED */ }; #ifdef KDB @@ -609,15 +611,18 @@ int code, type, ss; long esp; struct soft_segment_descriptor softseg; + char *msg; code = frame->tf_err; type = frame->tf_trapno; sdtossd(&gdt[IDXSEL(frame->tf_cs & 0xffff)], &softseg); if (type <= MAX_TRAP_MSG) - printf("\n\nFatal trap %d: %s while in %s mode\n", - type, trap_msg[type], - ISPL(frame->tf_cs) == SEL_UPL ? "user" : "kernel"); + msg = trap_msg[type]; + else + msg = "UNKNOWN"; + printf("\n\nFatal trap %d: %s while in %s mode\n", type, msg, + ISPL(frame->tf_cs) == SEL_UPL ? "user" : "kernel"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Nov 21 21:08:00 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CC2F16A421; Mon, 21 Nov 2005 21:07:56 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 4CC3416A41F for ; Mon, 21 Nov 2005 21:07:56 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7557243D49 for ; Mon, 21 Nov 2005 21:07:55 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALL7teo078550 for ; Mon, 21 Nov 2005 21:07:55 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALL7stH078547 for perforce@freebsd.org; Mon, 21 Nov 2005 21:07:54 GMT (envelope-from cognet@freebsd.org) Date: Mon, 21 Nov 2005 21:07:54 GMT Message-Id: <200511212107.jALL7stH078547@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 87047 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 21:08:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=87047 Change 87047 by cognet@cognet on 2005/11/21 21:07:11 IFC to get back arm9 changes Affected files ... .. //depot/projects/arm/src/sys/alpha/alpha/clock.c#3 integrate .. //depot/projects/arm/src/sys/alpha/alpha/pmap.c#3 integrate .. //depot/projects/arm/src/sys/alpha/conf/DEFAULTS#1 branch .. //depot/projects/arm/src/sys/alpha/conf/GENERIC#3 integrate .. //depot/projects/arm/src/sys/amd64/amd64/identcpu.c#3 integrate .. //depot/projects/arm/src/sys/amd64/amd64/machdep.c#5 integrate .. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#3 integrate .. //depot/projects/arm/src/sys/amd64/amd64/trap.c#3 integrate .. //depot/projects/arm/src/sys/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/arm/src/sys/arm/arm/identcpu.c#3 integrate .. //depot/projects/arm/src/sys/arm/arm/pmap.c#8 integrate .. //depot/projects/arm/src/sys/arm/include/armreg.h#2 integrate .. //depot/projects/arm/src/sys/arm/include/pmap.h#4 integrate .. //depot/projects/arm/src/sys/boot/forth/loader.conf.5#3 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_cd.c#3 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_da.c#3 integrate .. //depot/projects/arm/src/sys/compat/ndis/subr_ndis.c#4 integrate .. //depot/projects/arm/src/sys/compat/ndis/subr_ntoskrnl.c#5 integrate .. //depot/projects/arm/src/sys/conf/Makefile.arm#3 integrate .. //depot/projects/arm/src/sys/conf/files#5 integrate .. //depot/projects/arm/src/sys/conf/files.i386#6 integrate .. //depot/projects/arm/src/sys/dev/aic7xxx/aicasm/Makefile#3 integrate .. //depot/projects/arm/src/sys/dev/em/if_em.c#4 integrate .. //depot/projects/arm/src/sys/dev/em/if_em.h#3 integrate .. //depot/projects/arm/src/sys/dev/em/if_em_hw.h#3 integrate .. //depot/projects/arm/src/sys/dev/fe/if_fe_pccard.c#4 integrate .. //depot/projects/arm/src/sys/dev/hwpmc/hwpmc_x86.c#2 integrate .. //depot/projects/arm/src/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwireg.h#2 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwivar.h#2 integrate .. //depot/projects/arm/src/sys/dev/puc/puc.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/ich.c#4 integrate .. //depot/projects/arm/src/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/arm/src/sys/dev/usb/if_uralvar.h#2 integrate .. //depot/projects/arm/src/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate .. //depot/projects/arm/src/sys/geom/geom_disk.c#3 integrate .. //depot/projects/arm/src/sys/geom/geom_disk.h#3 integrate .. //depot/projects/arm/src/sys/geom/geom_subr.c#3 integrate .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum.c#4 integrate .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum.h#2 integrate .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum_drive.c#4 integrate .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum_move.c#1 branch .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum_rename.c#1 branch .. //depot/projects/arm/src/sys/geom/vinum/geom_vinum_rm.c#3 integrate .. //depot/projects/arm/src/sys/i386/conf/DEFAULTS#2 integrate .. //depot/projects/arm/src/sys/i386/i386/identcpu.c#4 integrate .. //depot/projects/arm/src/sys/i386/i386/pmap.c#3 integrate .. //depot/projects/arm/src/sys/i386/i386/trap.c#3 integrate .. //depot/projects/arm/src/sys/ia64/conf/DEFAULTS#1 branch .. //depot/projects/arm/src/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/arm/src/sys/ia64/ia64/pmap.c#3 integrate .. //depot/projects/arm/src/sys/kern/kern_time.c#3 integrate .. //depot/projects/arm/src/sys/kern/subr_rman.c#5 integrate .. //depot/projects/arm/src/sys/kern/vfs_mount.c#4 integrate .. //depot/projects/arm/src/sys/modules/Makefile#4 integrate .. //depot/projects/arm/src/sys/modules/geom/geom_vinum/Makefile#3 integrate .. //depot/projects/arm/src/sys/modules/iwi/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/oldcard/Makefile#2 delete .. //depot/projects/arm/src/sys/net/if_ethersubr.c#5 integrate .. //depot/projects/arm/src/sys/netinet/igmp.c#3 integrate .. //depot/projects/arm/src/sys/netinet/ip_carp.c#4 integrate .. //depot/projects/arm/src/sys/netinet/ip_fastfwd.c#3 integrate .. //depot/projects/arm/src/sys/netinet/ip_icmp.c#3 integrate .. //depot/projects/arm/src/sys/netinet/ip_input.c#5 integrate .. //depot/projects/arm/src/sys/netinet/ip_mroute.c#4 integrate .. //depot/projects/arm/src/sys/netinet/ip_options.c#1 branch .. //depot/projects/arm/src/sys/netinet/ip_options.h#1 branch .. //depot/projects/arm/src/sys/netinet/ip_output.c#4 integrate .. //depot/projects/arm/src/sys/netinet/ip_var.h#3 integrate .. //depot/projects/arm/src/sys/netinet/tcp_input.c#3 integrate .. //depot/projects/arm/src/sys/netinet/tcp_output.c#3 integrate .. //depot/projects/arm/src/sys/netinet/tcp_sack.c#5 integrate .. //depot/projects/arm/src/sys/netinet/tcp_syncache.c#4 integrate .. //depot/projects/arm/src/sys/netinet/udp_usrreq.c#4 integrate .. //depot/projects/arm/src/sys/netipx/ipx_ip.c#3 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_bio.c#4 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_socket.c#4 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_subs.c#4 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_vnops.c#5 integrate .. //depot/projects/arm/src/sys/nfsclient/nfsm_subs.h#2 integrate .. //depot/projects/arm/src/sys/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/arm/src/sys/powerpc/conf/DEFAULTS#1 branch .. //depot/projects/arm/src/sys/powerpc/conf/GENERIC#3 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/arm/src/sys/sparc64/conf/DEFAULTS#1 branch .. //depot/projects/arm/src/sys/sparc64/conf/GENERIC#5 integrate .. //depot/projects/arm/src/sys/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/arm/src/sys/sys/mbuf.h#5 integrate .. //depot/projects/arm/src/sys/sys/queue.h#4 integrate .. //depot/projects/arm/src/sys/sys/time.h#3 integrate .. //depot/projects/arm/src/sys/ufs/ffs/ffs_vfsops.c#6 integrate .. //depot/projects/arm/src/sys/vm/pmap.h#3 integrate .. //depot/projects/arm/src/sys/vm/vm_map.c#3 integrate Differences ... ==== //depot/projects/arm/src/sys/alpha/alpha/clock.c#3 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.39 2005/05/14 09:10:00 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.40 2005/11/20 01:31:29 marcel Exp $"); #include "opt_clock.h" @@ -475,31 +475,20 @@ * and the time of year clock (if any) provides the rest. */ void -inittodr(base) - time_t base; +inittodr(time_t base) { - register int days, yr; struct clocktime ct; - time_t deltat; - int badbase, clock_compat_osf1; - int s; struct timespec ts; - - if (base < 5*SECYR) { - printf("WARNING: preposterous time in filesystem"); - /* read the system clock anyway */ - base = 6*SECYR + 186*SECDAY + SECDAY/2; - badbase = 1; - } else - badbase = 0; + int clock_compat_osf1, todr_unreliable; + int days, yr; if (getenv_int("clock_compat_osf1", &clock_compat_osf1)) { if (clock_compat_osf1) clock_year_offset = UNIX_YEAR_OFFSET; } + todr_unreliable = 0; CLOCK_GET(clockdev, base, &ct); - clockinitted = 1; #ifdef DEBUG printf("readclock: %d/%d/%d/%d/%d/%d\n", ct.year, ct.mon, ct.day, @@ -508,7 +497,7 @@ ct.year += clock_year_offset; if (ct.year < 70) ct.year += 100; - + /* simple sanity checks */ if (ct.year < 70 || ct.mon < 1 || ct.mon > 12 || ct.day < 1 || ct.day > 31 || ct.hour > 23 || ct.min > 59 || ct.sec > 59) { @@ -516,48 +505,47 @@ * Believe the time in the filesystem for lack of * anything better, resetting the TODR. */ - s = splclock(); ts.tv_sec = base; - ts.tv_nsec = 0; - tc_setclock(&ts); - splx(s); - if (!badbase) { - printf("WARNING: preposterous clock chip time\n"); - resettodr(); - } - goto bad; + printf("WARNING: preposterous real-time clock"); + todr_unreliable = 1; + } else { + days = 0; + for (yr = 70; yr < ct.year; yr++) + days += LEAPYEAR(yr) ? 366 : 365; + days += dayyr[ct.mon - 1] + ct.day - 1; + if (LEAPYEAR(yr) && ct.mon > 2) + days++; + /* now have days since Jan 1, 1970; the rest is easy... */ + ts.tv_sec = days * SECDAY + ct.hour * SECHOUR + + ct.min * SECMIN + ct.sec; + if (wall_cmos_clock) + ts.tv_sec += adjkerntz; + /* + * The time base comes from a saved time, whereas the real- + * time clock is supposed to represent the current time. + * It is logically not possible for a saved time to be + * larger than the current time, so if that happens, assume + * the real-time clock is off. Warn when the real-time + * clock is off by two or more days. + */ + if (ts.tv_sec < base) { + ts.tv_sec = base; + days = (base - ts.tv_sec) / (60L * 60L * 24L); + if (days >= 2) { + printf("WARNING: real-time clock lost %d days", + days); + todr_unreliable = 1; + } + } } - days = 0; - for (yr = 70; yr < ct.year; yr++) - days += LEAPYEAR(yr) ? 366 : 365; - days += dayyr[ct.mon - 1] + ct.day - 1; - if (LEAPYEAR(yr) && ct.mon > 2) - days++; - /* now have days since Jan 1, 1970; the rest is easy... */ - s = splclock(); - ts.tv_sec = - days * SECDAY + ct.hour * SECHOUR + ct.min * SECMIN + ct.sec; - if (wall_cmos_clock) - ts.tv_sec += adjkerntz; ts.tv_nsec = 0; tc_setclock(&ts); - splx(s); + clockinitted = 1; - if (!badbase) { - /* - * See if we gained/lost two or more days; - * if so, assume something is amiss. - */ - deltat = ts.tv_sec - base; - if (deltat < 0) - deltat = -deltat; - if (deltat < 2 * SECDAY) - return; - printf("WARNING: clock %s %d days", - ts.tv_sec < base ? "lost" : "gained", deltat / SECDAY); + if (todr_unreliable) { + printf(" -- CHECK AND RESET THE DATE!\n"); + resettodr(); } -bad: - printf(" -- CHECK AND RESET THE DATE!\n"); } /* ==== //depot/projects/arm/src/sys/alpha/alpha/pmap.c#3 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.185 2005/11/13 02:17:04 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.186 2005/11/20 06:09:47 alc Exp $"); #include #include @@ -583,11 +583,6 @@ pv_entry_high_water = 9 * (pv_entry_max / 10); } -void -pmap_init2() -{ -} - /*************************************************** * Manipulate TLBs for a pmap ==== //depot/projects/arm/src/sys/alpha/conf/GENERIC#3 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.189 2005/11/05 19:48:53 marcel Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.190 2005/11/21 20:17:45 jhb Exp $ machine alpha cpu EV4 @@ -183,7 +183,6 @@ # Pseudo devices. device loop # Network loopback -device mem # Memory and kernel memory devices device random # Entropy device device ether # Ethernet support device sl # Kernel SLIP ==== //depot/projects/arm/src/sys/amd64/amd64/identcpu.c#3 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.140 2005/10/17 23:23:20 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.141 2005/11/17 02:32:39 obrien Exp $"); #include "opt_cpu.h" @@ -339,7 +339,7 @@ cpu_feature &= ~CPUID_HTT; if (bootverbose) printf("\nHTT bit cleared - FreeBSD" - " does not have licenseing issues" + " does not have licensing issues" " requiring it.\n"); } ==== //depot/projects/arm/src/sys/amd64/amd64/machdep.c#5 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.643 2005/10/26 22:16:52 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.644 2005/11/21 18:39:17 jhb Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -124,7 +124,9 @@ #include #endif +#include #include +#include #include #include @@ -1125,14 +1127,6 @@ u_int64_t msr; char *env; -#ifdef DEV_ISA - /* Preemptively mask the atpics and leave them shut down */ - outb(IO_ICU1 + ICU_IMR_OFFSET, 0xff); - outb(IO_ICU2 + ICU_IMR_OFFSET, 0xff); -#else -#error "have you forgotten the isa device?"; -#endif - thread0.td_kstack = physfree + KERNBASE; bzero((void *)thread0.td_kstack, KSTACK_PAGES * PAGE_SIZE); physfree += KSTACK_PAGES * PAGE_SIZE; @@ -1231,9 +1225,35 @@ */ cninit(); +#ifdef DEV_ISA #ifdef DEV_ATPIC elcr_probe(); atpic_startup(); +#else + /* Reset and mask the atpics and leave them shut down. */ + outb(IO_ICU1, ICW1_RESET | ICW1_IC4); + outb(IO_ICU1 + ICU_IMR_OFFSET, IDT_IO_INTS); + outb(IO_ICU1 + ICU_IMR_OFFSET, 1 << 2); + outb(IO_ICU1 + ICU_IMR_OFFSET, ICW4_8086); + outb(IO_ICU1 + ICU_IMR_OFFSET, 0xff); + outb(IO_ICU1, OCW3_SEL | OCW3_RR); + + outb(IO_ICU2, ICW1_RESET | ICW1_IC4); + outb(IO_ICU2 + ICU_IMR_OFFSET, IDT_IO_INTS + 8); + outb(IO_ICU2 + ICU_IMR_OFFSET, 2); + outb(IO_ICU2 + ICU_IMR_OFFSET, ICW4_8086); + outb(IO_ICU2 + ICU_IMR_OFFSET, 0xff); + outb(IO_ICU2, OCW3_SEL | OCW3_RR); + + /* + * Point the ICU spurious interrupt vectors at the APIC spurious + * interrupt handler. + */ + setidt(IDT_IO_INTS + 7, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0); + setidt(IDT_IO_INTS + 15, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0); +#endif +#else +#error "have you forgotten the isa device?"; #endif kdb_init(); ==== //depot/projects/arm/src/sys/amd64/amd64/pmap.c#3 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.534 2005/11/13 02:17:04 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.535 2005/11/20 06:09:48 alc Exp $"); /* * Manages physical address maps. @@ -579,11 +579,6 @@ uma_zone_set_obj(pvzone, &pvzone_obj, pv_entry_max); } -void -pmap_init2() -{ -} - /*************************************************** * Low level helper routines..... ==== //depot/projects/arm/src/sys/amd64/amd64/trap.c#3 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.296 2005/10/24 21:04:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.297 2005/11/18 19:26:46 jhb Exp $"); /* * AMD64 Trap and System call handling @@ -100,7 +100,7 @@ static void trap_fatal(struct trapframe *, vm_offset_t); void dblfault_handler(void); -#define MAX_TRAP_MSG 28 +#define MAX_TRAP_MSG 30 static char *trap_msg[] = { "", /* 0 unused */ "privileged instruction fault", /* 1 T_PRIVINFLT */ @@ -131,6 +131,8 @@ "segment not present fault", /* 26 T_SEGNPFLT */ "stack fault", /* 27 T_STKFLT */ "machine check trap", /* 28 T_MCHK */ + "SIMD floating-point exception", /* 29 T_XMMFLT */ + "reserved (unknown) fault", /* 30 T_RESERVED */ }; #ifdef KDB @@ -609,15 +611,18 @@ int code, type, ss; long esp; struct soft_segment_descriptor softseg; + char *msg; code = frame->tf_err; type = frame->tf_trapno; sdtossd(&gdt[IDXSEL(frame->tf_cs & 0xffff)], &softseg); if (type <= MAX_TRAP_MSG) - printf("\n\nFatal trap %d: %s while in %s mode\n", - type, trap_msg[type], - ISPL(frame->tf_cs) == SEL_UPL ? "user" : "kernel"); + msg = trap_msg[type]; + else + msg = "UNKNOWN"; + printf("\n\nFatal trap %d: %s while in %s mode\n", type, msg, + ISPL(frame->tf_cs) == SEL_UPL ? "user" : "kernel"); #ifdef SMP /* two separate prints in case of a trap on an unmapped page */ printf("cpuid = %d; ", PCPU_GET(cpuid)); ==== //depot/projects/arm/src/sys/amd64/conf/DEFAULTS#2 (text+ko) ==== @@ -1,7 +1,7 @@ # # DEFAULTS -- Default kernel configuration file for FreeBSD/amd64 # -# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.2 2005/10/27 18:54:43 peter Exp $ +# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.3 2005/11/21 20:22:34 jhb Exp $ # Not yet, this would break all existing configs #machine amd64 @@ -12,3 +12,5 @@ # Pseudo devices. device mem # Memory and kernel memory devices device io # I/O device + +options PUC_FASTINTR ==== //depot/projects/arm/src/sys/arm/arm/identcpu.c#3 (text+ko) ==== @@ -42,7 +42,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.4 2005/01/05 21:58:47 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.5 2005/11/21 19:06:25 cognet Exp $"); #include #include #include @@ -187,6 +187,8 @@ { CPU_ID_ARM920T, CPU_CLASS_ARM9TDMI, "ARM920T", generic_steppings }, + { CPU_ID_ARM920T_ALT, CPU_CLASS_ARM9TDMI, "ARM920T", + generic_steppings }, { CPU_ID_ARM922T, CPU_CLASS_ARM9TDMI, "ARM922T", generic_steppings }, { CPU_ID_ARM940T, CPU_CLASS_ARM9TDMI, "ARM940T", ==== //depot/projects/arm/src/sys/arm/arm/pmap.c#8 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.40 2005/11/06 16:10:28 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.41 2005/11/20 06:09:48 alc Exp $"); #include #include #include @@ -2199,11 +2199,6 @@ } void -pmap_init2(void) -{ -} - -void pmap_postinit(void) { struct l2_bucket *l2b; ==== //depot/projects/arm/src/sys/arm/include/armreg.h#2 (text+ko) ==== @@ -35,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/arm/include/armreg.h,v 1.2 2005/01/05 21:58:48 imp Exp $ + * $FreeBSD: src/sys/arm/include/armreg.h,v 1.3 2005/11/21 19:06:25 cognet Exp $ */ #ifndef MACHINE_ARMREG_H @@ -129,6 +129,7 @@ /* Post-ARM7 CPUs */ #define CPU_ID_ARM810 0x41018100 #define CPU_ID_ARM920T 0x41129200 +#define CPU_ID_ARM920T_ALT 0x41009200 #define CPU_ID_ARM922T 0x41029220 #define CPU_ID_ARM940T 0x41029400 /* XXX no MMU */ #define CPU_ID_ARM946ES 0x41049460 /* XXX no MMU */ ==== //depot/projects/arm/src/sys/arm/include/pmap.h#4 (text+ko) ==== @@ -44,7 +44,7 @@ * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 * from: FreeBSD: src/sys/i386/include/pmap.h,v 1.70 2000/11/30 * - * $FreeBSD: src/sys/arm/include/pmap.h,v 1.13 2005/11/06 16:10:27 cognet Exp $ + * $FreeBSD: src/sys/arm/include/pmap.h,v 1.14 2005/11/21 19:10:44 cognet Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -335,8 +335,13 @@ #define PMAP_NEEDS_PTE_SYNC 1 #define PMAP_INCLUDE_PTE_SYNC #elif (ARM_MMU_SA1 == 0) +#if defined(CPU_ARM9) && !defined(ARM9_CACHE_WRITE_THROUGH) +#define PMAP_NEEDS_PTE_SYNC 1 +#define PMAP_INCLUDE_PTE_SYNC +#else #define PMAP_NEEDS_PTE_SYNC 0 #endif +#endif /* * These macros return various bits based on kernel/user and protection. ==== //depot/projects/arm/src/sys/boot/forth/loader.conf.5#3 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sys/boot/forth/loader.conf.5,v 1.25 2005/11/15 21:26:49 ru Exp $ +.\" $FreeBSD: src/sys/boot/forth/loader.conf.5,v 1.26 2005/11/18 10:34:24 ru Exp $ .Dd November 15, 2005 .Dt LOADER.CONF 5 .Os @@ -165,13 +165,12 @@ Name of the bitmap to be loaded. Any other name can be used. .It Va comconsole_speed -.Po Dq 9600 +.Dq ( 9600 or the value of the .Va BOOT_COMCONSOLE_SPEED variable when .Xr loader 8 -was compiled -.Pc . +was compiled). Sets the speed of the serial console. If the previous boot loader stage specified that a serial console is in use then the default speed is determined from the current ==== //depot/projects/arm/src/sys/cam/scsi/scsi_cd.c#3 (text+ko) ==== @@ -46,7 +46,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.93 2005/03/26 06:05:06 ken Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.94 2005/11/18 02:43:49 jdp Exp $"); #include "opt_cd.h" @@ -407,6 +407,7 @@ && (softc->pinfo.index != CAM_UNQUEUED_INDEX)) camq_remove(&softc->changer->devq, softc->pinfo.index); + disk_gone(softc->disk); xpt_print_path(periph->path); printf("lost device\n"); } ==== //depot/projects/arm/src/sys/cam/scsi/scsi_da.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.180 2005/06/09 17:35:04 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.181 2005/11/18 02:43:49 jdp Exp $"); #include @@ -801,6 +801,7 @@ SLIST_REMOVE(&softc_list, softc, da_softc, links); + disk_gone(softc->disk); xpt_print_path(periph->path); printf("lost device\n"); } ==== //depot/projects/arm/src/sys/compat/ndis/subr_ndis.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.102 2005/11/14 18:19:57 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.103 2005/11/20 01:29:29 wpaul Exp $"); /* * This file implements a translation layer between the BSD networking @@ -275,7 +275,7 @@ static void NdisMIndicateStatusComplete(ndis_handle); static void NdisMIndicateStatus(ndis_handle, ndis_status, void *, uint32_t); -static void ndis_intr(void *); +static uint8_t ndis_intr(kinterrupt *, void *); static void ndis_intrhand(kdpc *, ndis_miniport_interrupt *, void *, void *); static funcptr ndis_findwrap(funcptr); static void NdisCopyFromPacketToPacket(ndis_packet *, @@ -2326,22 +2326,21 @@ return (NDIS_STATUS_SUCCESS); } -static void -ndis_intr(arg) +static uint8_t +ndis_intr(iobj, arg) + kinterrupt *iobj; void *arg; { struct ndis_softc *sc; - struct ifnet *ifp; - int is_our_intr = 0; + uint8_t is_our_intr = FALSE; int call_isr = 0; ndis_miniport_interrupt *intr; sc = arg; - ifp = sc->ifp; intr = sc->ndis_block->nmb_interrupt; if (intr == NULL || sc->ndis_block->nmb_miniportadapterctx == NULL) - return; + return(FALSE); if (sc->ndis_block->nmb_interrupt->ni_isrreq == TRUE) MSCALL3(intr->ni_isrfunc, &is_our_intr, &call_isr, @@ -2352,10 +2351,10 @@ call_isr = 1; } - if ((is_our_intr || call_isr)) + if (call_isr) IoRequestDpc(sc->ndis_block->nmb_deviceobj, NULL, sc); - return; + return(is_our_intr); } static void @@ -3517,7 +3516,7 @@ IMPORT_SFUNC(NdisMRegisterUnloadHandler, 2), IMPORT_SFUNC(ndis_timercall, 4), IMPORT_SFUNC(ndis_asyncmem_complete, 2), - IMPORT_SFUNC(ndis_intr, 1), + IMPORT_SFUNC(ndis_intr, 2), IMPORT_SFUNC(ndis_intrhand, 4), /* ==== //depot/projects/arm/src/sys/compat/ndis/subr_ntoskrnl.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.83 2005/11/10 02:22:55 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.84 2005/11/20 01:29:29 wpaul Exp $"); #include #include @@ -1204,13 +1204,16 @@ { kinterrupt *iobj; uint8_t irql; + uint8_t claimed; list_entry *l; KeAcquireSpinLock(&ntoskrnl_intlock, &irql); l = ntoskrnl_intlist.nle_flink; while (l != &ntoskrnl_intlist) { iobj = CONTAINING_RECORD(l, kinterrupt, ki_list); - MSCALL1(iobj->ki_svcfunc, iobj->ki_svcctx); + claimed = MSCALL2(iobj->ki_svcfunc, iobj, iobj->ki_svcctx); + if (claimed == TRUE) + break; l = l->nle_flink; } KeReleaseSpinLock(&ntoskrnl_intlock, irql); ==== //depot/projects/arm/src/sys/conf/Makefile.arm#3 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.arm -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.arm,v 1.16 2005/11/04 04:14:49 imp Exp $ +# $FreeBSD: src/sys/conf/Makefile.arm,v 1.17 2005/11/17 01:32:01 cognet Exp $ # # Makefile for FreeBSD # @@ -49,11 +49,13 @@ DDB_ENABLED!= grep DDB opt_ddb.h || true .if ${DDB_ENABLED} != "" -SYSTEM_LD_TAIL += ;echo "\#define KERNNAME \"${KERNEL_KO}\"" >opt_kernname.h ; \ +SYSTEM_LD_TAIL += ;echo "\#define KERNNAME \"${KERNEL_KO}.tmp\"" \ + >opt_kernname.h ;\ ${OBJCOPY} --strip-symbol '$$d' --strip-symbol '$$a' \ - --strip-symbol '$$t' ${KERNEL_KO} ;\ + -g --strip-symbol '$$t' ${FULLKERNEL} ${KERNEL_KO}.tmp;\ ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.arm \ - $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o ${KERNEL_KO}.tramp + $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o ${KERNEL_KO}.tramp;\ + rm ${KERNEL_KO}.tmp .endif %BEFORE_DEPEND ==== //depot/projects/arm/src/sys/conf/files#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1064 2005/11/08 22:51:42 vkashyap Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1065 2005/11/18 20:12:40 andre Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1678,6 +1678,7 @@ netinet/ip_icmp.c optional inet netinet/ip_input.c optional inet netinet/ip_mroute.c optional mrouting +netinet/ip_options.c optional inet netinet/ip_output.c optional inet netinet/raw_ip.c optional inet netinet/tcp_debug.c optional tcpdebug ==== //depot/projects/arm/src/sys/conf/files.i386#6 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.i386,v 1.544 2005/11/11 09:57:30 ru Exp $ +# $FreeBSD: src/sys/conf/files.i386,v 1.545 2005/11/21 20:11:39 ru Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -232,7 +232,7 @@ i386/acpica/acpi_machdep.c optional acpi i386/acpica/acpi_wakeup.c optional acpi acpi_wakecode.h optional acpi \ - dependency "$S/i386/acpica/acpi_wakecode.S" \ + dependency "$S/i386/acpica/acpi_wakecode.S assym.s" \ compile-with "${MAKE} -f $S/i386/acpica/Makefile MAKESRCPATH=$S/i386/acpica" \ no-obj no-implicit-rule before-depend \ clean "acpi_wakecode.h acpi_wakecode.o acpi_wakecode.bin" ==== //depot/projects/arm/src/sys/dev/aic7xxx/aicasm/Makefile#3 (text+ko) ==== @@ -1,7 +1,7 @@ # # $Id: //depot/aic7xxx/freebsd/dev/aic7xxx/aicasm/Makefile#2 $ # -# $FreeBSD: src/sys/dev/aic7xxx/aicasm/Makefile,v 1.22 2005/08/03 00:47:33 rwatson Exp $ +# $FreeBSD: src/sys/dev/aic7xxx/aicasm/Makefile,v 1.23 2005/11/21 14:41:10 ru Exp $ PROG= aicasm @@ -20,7 +20,7 @@ # Don't rely on the kernel's .depend file .ifdef MAKESRCPATH .PATH: ${MAKESRCPATH} -DEPENDFILE= +DEPENDFILE= .depend_aicasm .endif .if ${CC} == "icc" ==== //depot/projects/arm/src/sys/dev/em/if_em.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.86 2005/11/11 16:04:51 ru Exp $*/ +/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.88 2005/11/21 04:17:43 yongari Exp $*/ #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -231,11 +231,15 @@ static int em_rx_int_delay_dflt = E1000_TICKS_TO_USECS(EM_RDTR); static int em_tx_abs_int_delay_dflt = E1000_TICKS_TO_USECS(EM_TADV); static int em_rx_abs_int_delay_dflt = E1000_TICKS_TO_USECS(EM_RADV); +static int em_rxd = EM_DEFAULT_RXD; +static int em_txd = EM_DEFAULT_TXD; TUNABLE_INT("hw.em.tx_int_delay", &em_tx_int_delay_dflt); TUNABLE_INT("hw.em.rx_int_delay", &em_rx_int_delay_dflt); TUNABLE_INT("hw.em.tx_abs_int_delay", &em_tx_abs_int_delay_dflt); TUNABLE_INT("hw.em.rx_abs_int_delay", &em_rx_abs_int_delay_dflt); +TUNABLE_INT("hw.em.rxd", &em_rxd); +TUNABLE_INT("hw.em.txd", &em_txd); /********************************************************************* * Device identification routine @@ -357,15 +361,31 @@ E1000_REG_OFFSET(&adapter->hw, TADV), em_tx_abs_int_delay_dflt); } - - /* Parameters (to be read from user) */ - if (adapter->hw.mac_type >= em_82544) { - adapter->num_tx_desc = EM_TXD_82544; - adapter->num_rx_desc = EM_RXD_82544; - } else { - adapter->num_tx_desc = EM_TXD; - adapter->num_rx_desc = EM_RXD; - } + + /* + * Validate number of transmit and receive descriptors. It + * must not exceed hardware maximum, and must be multiple + * of E1000_DBA_ALIGN. + */ + if (((em_txd * sizeof(struct em_tx_desc)) % E1000_DBA_ALIGN) != 0 || + (adapter->hw.mac_type >= em_82544 && em_txd > EM_MAX_TXD) || + (adapter->hw.mac_type < em_82544 && em_txd > EM_MAX_TXD_82543) || + (em_txd < EM_MIN_TXD)) { + printf("em%d: Using %d TX descriptors instead of %d!\n", + adapter->unit, EM_DEFAULT_TXD, em_txd); + adapter->num_tx_desc = EM_DEFAULT_TXD; + } else + adapter->num_tx_desc = em_txd; + if (((em_rxd * sizeof(struct em_rx_desc)) % E1000_DBA_ALIGN) != 0 || + (adapter->hw.mac_type >= em_82544 && em_rxd > EM_MAX_RXD) || + (adapter->hw.mac_type < em_82544 && em_rxd > EM_MAX_RXD_82543) || + (em_rxd < EM_MIN_RXD)) { + printf("em%d: Using %d RX descriptors instead of %d!\n", + adapter->unit, EM_DEFAULT_RXD, em_rxd); + adapter->num_rx_desc = EM_DEFAULT_RXD; + } else + adapter->num_rx_desc = em_rxd; + adapter->hw.autoneg = DO_AUTO_NEG; adapter->hw.wait_autoneg_complete = WAIT_FOR_AUTO_NEG_DEFAULT; adapter->hw.autoneg_advertised = AUTONEG_ADV_DEFAULT; @@ -418,8 +438,8 @@ /* Initialize eeprom parameters */ em_init_eeprom_params(&adapter->hw); - tsize = EM_ROUNDUP(adapter->num_tx_desc * - sizeof(struct em_tx_desc), 4096); + tsize = roundup2(adapter->num_tx_desc * sizeof(struct em_tx_desc), + E1000_DBA_ALIGN); /* Allocate Transmit Descriptor ring */ if (em_dma_malloc(adapter, tsize, &adapter->txdma, BUS_DMA_NOWAIT)) { @@ -430,8 +450,8 @@ } adapter->tx_desc_base = (struct em_tx_desc *) adapter->txdma.dma_vaddr; - rsize = EM_ROUNDUP(adapter->num_rx_desc * - sizeof(struct em_rx_desc), 4096); + rsize = roundup2(adapter->num_rx_desc * sizeof(struct em_rx_desc), + E1000_DBA_ALIGN); /* Allocate Receive Descriptor ring */ if (em_dma_malloc(adapter, rsize, &adapter->rxdma, BUS_DMA_NOWAIT)) { @@ -1173,7 +1193,7 @@ { u_int32_t txd_upper; u_int32_t txd_lower, txd_used = 0, txd_saved = 0; - int i, j, error; + int i, j, error = 0; struct mbuf *m_head; @@ -1183,9 +1203,8 @@ u_int32_t counter; struct m_tag *mtag; bus_dma_segment_t segs[EM_MAX_SCATTER]; - bus_dmamap_t map; int nsegs; - struct em_buffer *tx_buffer = NULL; + struct em_buffer *tx_buffer; struct em_tx_desc *current_tx_desc = NULL; struct ifnet *ifp = adapter->ifp; @@ -1206,23 +1225,19 @@ /* * Map the packet for DMA. */ - if (bus_dmamap_create(adapter->txtag, BUS_DMA_NOWAIT, &map)) { - adapter->no_tx_map_avail++; - return (ENOMEM); - } - error = bus_dmamap_load_mbuf_sg(adapter->txtag, map, m_head, segs, - &nsegs, BUS_DMA_NOWAIT); + tx_buffer = &adapter->tx_buffer_area[adapter->next_avail_tx_desc]; + error = bus_dmamap_load_mbuf_sg(adapter->txtag, tx_buffer->map, m_head, + segs, &nsegs, BUS_DMA_NOWAIT); if (error != 0) { adapter->no_tx_dma_setup++; - bus_dmamap_destroy(adapter->txtag, map); return (error); } KASSERT(nsegs != 0, ("em_encap: empty packet")); if (nsegs > adapter->num_tx_desc_avail) { adapter->no_tx_desc_avail2++; - bus_dmamap_destroy(adapter->txtag, map); - return (ENOBUFS); + error = ENOBUFS; + goto encap_fail; } @@ -1249,21 +1264,21 @@ m_head = m_pullup(m_head, sizeof(eh)); if (m_head == NULL) { *m_headp = NULL; - bus_dmamap_destroy(adapter->txtag, map); - return (ENOBUFS); + error = ENOBUFS; + goto encap_fail; } eh = *mtod(m_head, struct ether_header *); M_PREPEND(m_head, sizeof(*evl), M_DONTWAIT); if (m_head == NULL) { *m_headp = NULL; - bus_dmamap_destroy(adapter->txtag, map); - return (ENOBUFS); + error = ENOBUFS; + goto encap_fail; } m_head = m_pullup(m_head, sizeof(*evl)); if (m_head == NULL) { *m_headp = NULL; - bus_dmamap_destroy(adapter->txtag, map); - return (ENOBUFS); + error = ENOBUFS; + goto encap_fail; } evl = mtod(m_head, struct ether_vlan_header *); bcopy(&eh, evl, sizeof(*evl)); @@ -1290,11 +1305,11 @@ array_elements = em_fill_descriptors(segs[j].ds_addr, segs[j].ds_len, &desc_array); for (counter = 0; counter < array_elements; counter++) { - if (txd_used == adapter->num_tx_desc_avail) { - adapter->next_avail_tx_desc = txd_saved; - adapter->no_tx_desc_avail2++; - bus_dmamap_destroy(adapter->txtag, map); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Nov 21 22:22:52 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5695D16A421; Mon, 21 Nov 2005 22:22:52 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 1873616A41F for ; Mon, 21 Nov 2005 22:22:52 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B59843D95 for ; Mon, 21 Nov 2005 22:22:29 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jALMMTvU082036 for ; Mon, 21 Nov 2005 22:22:29 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jALMMTvW082033 for perforce@freebsd.org; Mon, 21 Nov 2005 22:22:29 GMT (envelope-from jhb@freebsd.org) Date: Mon, 21 Nov 2005 22:22:29 GMT Message-Id: <200511212222.jALMMTvW082033@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 87056 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Nov 2005 22:22:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=87056 Change 87056 by jhb@jhb_slimer on 2005/11/21 22:22:15 IFC @87054. Affected files ... .. //depot/projects/smpng/sys/alpha/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/alpha/conf/GENERIC#52 integrate .. //depot/projects/smpng/sys/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/smpng/sys/conf/files.i386#90 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#32 integrate .. //depot/projects/smpng/sys/dev/nve/if_nve.c#9 integrate .. //depot/projects/smpng/sys/dev/nve/if_nvereg.h#3 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#26 integrate .. //depot/projects/smpng/sys/i386/conf/DEFAULTS#2 integrate .. //depot/projects/smpng/sys/ia64/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/ia64/conf/GENERIC#46 integrate .. //depot/projects/smpng/sys/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/smpng/sys/pci/if_de.c#30 integrate .. //depot/projects/smpng/sys/pci/if_devar.h#12 integrate .. //depot/projects/smpng/sys/powerpc/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/powerpc/conf/GENERIC#30 integrate .. //depot/projects/smpng/sys/sparc64/conf/DEFAULTS#1 branch .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#60 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/conf/GENERIC#52 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.189 2005/11/05 19:48:53 marcel Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.190 2005/11/21 20:17:45 jhb Exp $ machine alpha cpu EV4 @@ -183,7 +183,6 @@ # Pseudo devices. device loop # Network loopback -device mem # Memory and kernel memory devices device random # Entropy device device ether # Ethernet support device sl # Kernel SLIP ==== //depot/projects/smpng/sys/amd64/conf/DEFAULTS#2 (text+ko) ==== @@ -1,7 +1,7 @@ # # DEFAULTS -- Default kernel configuration file for FreeBSD/amd64 # -# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.2 2005/10/27 18:54:43 peter Exp $ +# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.3 2005/11/21 20:22:34 jhb Exp $ # Not yet, this would break all existing configs #machine amd64 @@ -12,3 +12,5 @@ # Pseudo devices. device mem # Memory and kernel memory devices device io # I/O device + +options PUC_FASTINTR ==== //depot/projects/smpng/sys/conf/files.i386#90 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.i386,v 1.544 2005/11/11 09:57:30 ru Exp $ +# $FreeBSD: src/sys/conf/files.i386,v 1.545 2005/11/21 20:11:39 ru Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -232,7 +232,7 @@ i386/acpica/acpi_machdep.c optional acpi i386/acpica/acpi_wakeup.c optional acpi acpi_wakecode.h optional acpi \ - dependency "$S/i386/acpica/acpi_wakecode.S" \ + dependency "$S/i386/acpica/acpi_wakecode.S assym.s" \ compile-with "${MAKE} -f $S/i386/acpica/Makefile MAKESRCPATH=$S/i386/acpica" \ no-obj no-implicit-rule before-depend \ clean "acpi_wakecode.h acpi_wakecode.o acpi_wakecode.bin" ==== //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#32 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.48 2005/11/01 22:44:07 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.49 2005/11/21 22:01:16 jhb Exp $"); #include "opt_acpi.h" #include @@ -608,7 +608,19 @@ { struct link *link; uint8_t bios_irq; + uintptr_t bus; + /* + * Look up the PCI bus for the specified PCI bridge device. Note + * that the PCI bridge device might not have any children yet. + * However, looking up its bus number doesn't require a valid child + * device, so we just pass NULL. + */ + if (BUS_READ_IVAR(pcib, NULL, PCIB_IVAR_BUS, &bus) != 0) { + device_printf(pcib, "Unable to read PCI bus number"); + panic("this is bad"); + } + /* Bump the reference count. */ ACPI_SERIAL_BEGIN(pci_link); link = acpi_pci_link_lookup(dev, index); @@ -619,7 +631,7 @@ pci_link_interrupt_weights[link->l_irq]++; /* Try to find a BIOS IRQ setting from any matching devices. */ - bios_irq = acpi_pci_link_search_irq(pcib_get_bus(pcib), slot, pin); + bios_irq = acpi_pci_link_search_irq(bus, slot, pin); if (!PCI_INTERRUPT_VALID(bios_irq)) { ACPI_SERIAL_END(pci_link); return; @@ -628,7 +640,7 @@ /* Validate the BIOS IRQ. */ if (!link_valid_irq(link, bios_irq)) { device_printf(dev, "BIOS IRQ %u for %d.%d.INT%c is invalid\n", - bios_irq, pcib_get_bus(pcib), slot, pin + 'A'); + bios_irq, (int)bus, slot, pin + 'A'); } else if (!PCI_INTERRUPT_VALID(link->l_bios_irq)) { link->l_bios_irq = bios_irq; if (bios_irq < NUM_ISA_INTERRUPTS) @@ -641,7 +653,7 @@ } else if (bios_irq != link->l_bios_irq) device_printf(dev, "BIOS IRQ %u for %d.%d.INT%c does not match previous BIOS IRQ %u\n", - bios_irq, pcib_get_bus(pcib), slot, pin + 'A', + bios_irq, (int)bus, slot, pin + 'A', link->l_bios_irq); ACPI_SERIAL_END(pci_link); } ==== //depot/projects/smpng/sys/dev/nve/if_nve.c#9 (text+ko) ==== @@ -74,7 +74,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/nve/if_nve.c,v 1.14 2005/11/11 16:04:53 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/nve/if_nve.c,v 1.15 2005/11/21 22:14:49 jhb Exp $"); #include #include @@ -130,12 +130,14 @@ static int nve_attach(device_t); static int nve_detach(device_t); static void nve_init(void *); +static void nve_init_locked(struct nve_softc *); static void nve_stop(struct nve_softc *); static void nve_shutdown(device_t); static int nve_init_rings(struct nve_softc *); static void nve_free_rings(struct nve_softc *); static void nve_ifstart(struct ifnet *); +static void nve_ifstart_locked(struct ifnet *); static int nve_ioctl(struct ifnet *, u_long, caddr_t); static void nve_intr(void *); static void nve_tick(void *); @@ -144,6 +146,7 @@ static void nve_update_stats(struct nve_softc *); static int nve_ifmedia_upd(struct ifnet *); +static void nve_ifmedia_upd_locked(struct ifnet *); static void nve_ifmedia_sts(struct ifnet *, struct ifmediareq *); static int nve_miibus_readreg(device_t, int, int); static void nve_miibus_writereg(device_t, int, int, int); @@ -304,20 +307,19 @@ struct ifnet *ifp; OS_API *osapi; ADAPTER_OPEN_PARAMS OpenParams; - int error = 0, i, rid, unit; + int error = 0, i, rid; DEBUGOUT(NVE_DEBUG_INIT, "nve: nve_attach - entry\n"); sc = device_get_softc(dev); - unit = device_get_unit(dev); /* Allocate mutex */ mtx_init(&sc->mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE); mtx_init(&sc->osmtx, device_get_nameunit(dev), NULL, MTX_SPIN); + callout_init_mtx(&sc->stat_callout, &sc->mtx, 0); sc->dev = dev; - sc->unit = unit; /* Preinitialize data structures */ bzero(&OpenParams, sizeof(ADAPTER_OPEN_PARAMS)); @@ -510,7 +512,7 @@ /* Setup interface parameters */ ifp->if_softc = sc; - if_initname(ifp, "nve", unit); + if_initname(ifp, device_get_name(dev), device_get_unit(dev)); ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; ifp->if_ioctl = nve_ioctl; ifp->if_output = ether_output; @@ -525,11 +527,10 @@ /* Attach to OS's managers. */ ether_ifattach(ifp, eaddr); - callout_handle_init(&sc->stat_ch); /* Activate our interrupt handler. - attach last to avoid lock */ - error = bus_setup_intr(sc->dev, sc->irq, INTR_TYPE_NET, nve_intr, - sc, &sc->sc_ih); + error = bus_setup_intr(sc->dev, sc->irq, INTR_TYPE_NET | INTR_MPSAFE, + nve_intr, sc, &sc->sc_ih); if (error) { device_printf(sc->dev, "couldn't set up interrupt handler\n"); goto fail; @@ -551,15 +552,16 @@ struct ifnet *ifp; KASSERT(mtx_initialized(&sc->mtx), ("mutex not initialized")); - NVE_LOCK(sc); DEBUGOUT(NVE_DEBUG_DEINIT, "nve: nve_detach - entry\n"); ifp = sc->ifp; if (device_is_attached(dev)) { + NVE_LOCK(sc); nve_stop(sc); - /* XXX shouldn't hold lock over call to ether_ifdetch */ + NVE_UNLOCK(sc); + callout_drain(&sc->stat_callout); ether_ifdetach(ifp); } @@ -598,7 +600,6 @@ if (sc->rtag) bus_dma_tag_destroy(sc->rtag); - NVE_UNLOCK(sc); if (ifp) if_free(ifp); mtx_destroy(&sc->mtx); @@ -614,17 +615,26 @@ nve_init(void *xsc) { struct nve_softc *sc = xsc; + + NVE_LOCK(sc); + nve_init_locked(sc); + NVE_UNLOCK(sc); +} + +static void +nve_init_locked(struct nve_softc *sc) +{ struct ifnet *ifp; int error; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_INIT, "nve: nve_init - entry (%d)\n", sc->linkup); ifp = sc->ifp; /* Do nothing if already running */ if (ifp->if_drv_flags & IFF_DRV_RUNNING) - goto fail; + return; nve_stop(sc); DEBUGOUT(NVE_DEBUG_INIT, "nve: do pfnInit\n"); @@ -640,7 +650,7 @@ if (error) { device_printf(sc->dev, "failed to start NVIDIA Hardware interface\n"); - goto fail; + return; } /* Set the MAC address */ sc->hwapi->pfnSetNodeAddress(sc->hwapi->pADCX, IF_LLADDR(sc->ifp)); @@ -649,19 +659,16 @@ /* Setup multicast filter */ nve_setmulti(sc); - nve_ifmedia_upd(ifp); + nve_ifmedia_upd_locked(ifp); /* Update interface parameters */ ifp->if_drv_flags |= IFF_DRV_RUNNING; ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; - sc->stat_ch = timeout(nve_tick, sc, hz); + callout_reset(&sc->stat_callout, hz, nve_tick, sc); DEBUGOUT(NVE_DEBUG_INIT, "nve: nve_init - exit\n"); -fail: - NVE_UNLOCK(sc); - return; } @@ -671,7 +678,7 @@ { struct ifnet *ifp; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_RUNNING, "nve: nve_stop - entry\n"); @@ -679,7 +686,7 @@ ifp->if_timer = 0; /* Cancel tick timer */ - untimeout(nve_tick, sc, sc->stat_ch); + callout_stop(&sc->stat_callout); /* Stop hardware activity */ sc->hwapi->pfnDisableInterrupts(sc->hwapi->pADCX); @@ -699,8 +706,6 @@ DEBUGOUT(NVE_DEBUG_RUNNING, "nve: nve_stop - exit\n"); - NVE_UNLOCK(sc); - return; } @@ -715,7 +720,9 @@ sc = device_get_softc(dev); /* Stop hardware activity */ + NVE_LOCK(sc); nve_stop(sc); + NVE_UNLOCK(sc); } /* Allocate TX ring buffers */ @@ -724,8 +731,6 @@ { int error, i; - NVE_LOCK(sc); - DEBUGOUT(NVE_DEBUG_INIT, "nve: nve_init_rings - entry\n"); sc->cur_rx = sc->cur_tx = sc->pending_rxs = sc->pending_txs = 0; @@ -738,8 +743,7 @@ if (buf->mbuf == NULL) { device_printf(sc->dev, "couldn't allocate mbuf\n"); nve_free_rings(sc); - error = ENOBUFS; - goto fail; + return (ENOBUFS); } buf->mbuf->m_len = buf->mbuf->m_pkthdr.len = MCLBYTES; m_adj(buf->mbuf, ETHER_ALIGN); @@ -748,14 +752,14 @@ if (error) { device_printf(sc->dev, "couldn't create dma map\n"); nve_free_rings(sc); - goto fail; + return (error); } error = bus_dmamap_load_mbuf(sc->mtag, buf->map, buf->mbuf, nve_dmamap_rx_cb, &desc->paddr, 0); if (error) { device_printf(sc->dev, "couldn't dma map mbuf\n"); nve_free_rings(sc); - goto fail; + return (error); } bus_dmamap_sync(sc->mtag, buf->map, BUS_DMASYNC_PREREAD); @@ -776,7 +780,7 @@ if (error) { device_printf(sc->dev, "couldn't create dma map\n"); nve_free_rings(sc); - goto fail; + return (error); } } bus_dmamap_sync(sc->ttag, sc->tmap, @@ -784,9 +788,6 @@ DEBUGOUT(NVE_DEBUG_INIT, "nve: nve_init_rings - exit\n"); -fail: - NVE_UNLOCK(sc); - return (error); } @@ -796,8 +797,6 @@ { int i; - NVE_LOCK(sc); - DEBUGOUT(NVE_DEBUG_DEINIT, "nve: nve_free_rings - entry\n"); for (i = 0; i < RX_RING_SIZE; i++) { @@ -825,13 +824,21 @@ } DEBUGOUT(NVE_DEBUG_DEINIT, "nve: nve_free_rings - exit\n"); +} +/* Main loop for sending packets from OS to interface */ +static void +nve_ifstart(struct ifnet *ifp) +{ + struct nve_softc *sc = ifp->if_softc; + + NVE_LOCK(sc); + nve_ifstart_locked(ifp); NVE_UNLOCK(sc); } -/* Main loop for sending packets from OS to interface */ static void -nve_ifstart(struct ifnet *ifp) +nve_ifstart_locked(struct ifnet *ifp) { struct nve_softc *sc = ifp->if_softc; struct nve_map_buffer *buf; @@ -842,8 +849,11 @@ DEBUGOUT(NVE_DEBUG_RUNNING, "nve: nve_ifstart - entry\n"); + NVE_LOCK_ASSERT(sc); + /* If link is down/busy or queue is empty do nothing */ - if (ifp->if_drv_flags & IFF_DRV_OACTIVE || ifp->if_snd.ifq_head == NULL) + if (ifp->if_drv_flags & IFF_DRV_OACTIVE || + IFQ_DRV_IS_EMPTY(&ifp->if_snd)) return; /* Transmit queued packets until sent or TX ring is full */ @@ -953,46 +963,54 @@ struct mii_data *mii; int error = 0; - NVE_LOCK(sc); - DEBUGOUT(NVE_DEBUG_IOCTL, "nve: nve_ioctl - entry\n"); switch (command) { case SIOCSIFMTU: /* Set MTU size */ - if (ifp->if_mtu == ifr->ifr_mtu) + NVE_LOCK(sc); + if (ifp->if_mtu == ifr->ifr_mtu) { + NVE_UNLOCK(sc); break; + } if (ifr->ifr_mtu + ifp->if_hdrlen <= MAX_PACKET_SIZE_1518) { ifp->if_mtu = ifr->ifr_mtu; nve_stop(sc); - nve_init(sc); + nve_init_locked(sc); } else error = EINVAL; + NVE_UNLOCK(sc); break; case SIOCSIFFLAGS: /* Setup interface flags */ + NVE_LOCK(sc); if (ifp->if_flags & IFF_UP) { if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { - nve_init(sc); + nve_init_locked(sc); + NVE_UNLOCK(sc); break; } } else { if (ifp->if_drv_flags & IFF_DRV_RUNNING) { nve_stop(sc); + NVE_UNLOCK(sc); break; } } /* Handle IFF_PROMISC and IFF_ALLMULTI flags. */ nve_setmulti(sc); + NVE_UNLOCK(sc); break; case SIOCADDMULTI: case SIOCDELMULTI: /* Setup multicast filter */ + NVE_LOCK(sc); if (ifp->if_drv_flags & IFF_DRV_RUNNING) { nve_setmulti(sc); } + NVE_UNLOCK(sc); break; case SIOCGIFMEDIA: @@ -1010,8 +1028,6 @@ DEBUGOUT(NVE_DEBUG_IOCTL, "nve: nve_ioctl - exit\n"); - NVE_UNLOCK(sc); - return (error); } @@ -1024,8 +1040,10 @@ DEBUGOUT(NVE_DEBUG_INTERRUPT, "nve: nve_intr - entry\n"); + NVE_LOCK(sc); if (!ifp->if_flags & IFF_UP) { nve_stop(sc); + NVE_UNLOCK(sc); return; } /* Handle interrupt event */ @@ -1033,12 +1051,13 @@ sc->hwapi->pfnHandleInterrupt(sc->hwapi->pADCX); sc->hwapi->pfnEnableInterrupts(sc->hwapi->pADCX); } - if (ifp->if_snd.ifq_head != NULL) - nve_ifstart(ifp); + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + nve_ifstart_locked(ifp); /* If no pending packets we don't need a timeout */ if (sc->pending_txs == 0) sc->ifp->if_timer = 0; + NVE_UNLOCK(sc); DEBUGOUT(NVE_DEBUG_INTERRUPT, "nve: nve_intr - exit\n"); @@ -1055,7 +1074,7 @@ int i; u_int8_t andaddr[6], oraddr[6]; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_RUNNING, "nve: nve_setmulti - entry\n"); @@ -1072,7 +1091,6 @@ /* Accept all packets */ hwfilter.ulFilterFlags |= ACCEPT_ALL_PACKETS; sc->hwapi->pfnSetPacketFilter(sc->hwapi->pADCX, &hwfilter); - NVE_UNLOCK(sc); return; } /* Setup multicast filter */ @@ -1099,8 +1117,6 @@ /* Send filter to NVIDIA API */ sc->hwapi->pfnSetPacketFilter(sc->hwapi->pADCX, &hwfilter); - NVE_UNLOCK(sc); - DEBUGOUT(NVE_DEBUG_RUNNING, "nve: nve_setmulti - exit\n"); return; @@ -1111,10 +1127,22 @@ nve_ifmedia_upd(struct ifnet *ifp) { struct nve_softc *sc = ifp->if_softc; + + NVE_LOCK(sc); + nve_ifmedia_upd_locked(ifp); + NVE_UNLOCK(sc); + return (0); +} + +static void +nve_ifmedia_upd_locked(struct ifnet *ifp) +{ + struct nve_softc *sc = ifp->if_softc; struct mii_data *mii; DEBUGOUT(NVE_DEBUG_MII, "nve: nve_ifmedia_upd\n"); + NVE_LOCK_ASSERT(sc); mii = device_get_softc(sc->miibus); if (mii->mii_instance) { @@ -1125,8 +1153,6 @@ } } mii_mediachg(mii); - - return (0); } /* Update current miibus PHY status of media */ @@ -1139,8 +1165,10 @@ DEBUGOUT(NVE_DEBUG_MII, "nve: nve_ifmedia_sts\n"); sc = ifp->if_softc; + NVE_LOCK(sc); mii = device_get_softc(sc->miibus); mii_pollstat(mii); + NVE_UNLOCK(sc); ifmr->ifm_active = mii->mii_media_active; ifmr->ifm_status = mii->mii_media_status; @@ -1156,7 +1184,7 @@ struct mii_data *mii; struct ifnet *ifp; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); ifp = sc->ifp; nve_update_stats(sc); @@ -1166,12 +1194,10 @@ if (mii->mii_media_status & IFM_ACTIVE && IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { - if (ifp->if_snd.ifq_head != NULL) - nve_ifstart(ifp); + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + nve_ifstart_locked(ifp); } - sc->stat_ch = timeout(nve_tick, sc, hz); - - NVE_UNLOCK(sc); + callout_reset(&sc->stat_callout, hz, nve_tick, sc); return; } @@ -1183,7 +1209,7 @@ struct ifnet *ifp = sc->ifp; ADAPTER_STATS stats; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); if (sc->hwapi) { sc->hwapi->pfnGetStatistics(sc->hwapi->pADCX, &stats); @@ -1205,7 +1231,6 @@ ifp->if_collisions = stats.ulLateCollisionErrors; } - NVE_UNLOCK(sc); return; } @@ -1249,14 +1274,16 @@ device_printf(sc->dev, "device timeout (%d)\n", sc->pending_txs); + NVE_LOCK(sc); sc->tx_errors++; nve_stop(sc); ifp->if_drv_flags &= ~IFF_DRV_RUNNING; - nve_init(sc); + nve_init_locked(sc); - if (ifp->if_snd.ifq_head != NULL) - nve_ifstart(ifp); + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + nve_ifstart_locked(ifp); + NVE_UNLOCK(sc); return; } @@ -1389,7 +1416,8 @@ struct nve_map_buffer *buf; int error; - NVE_LOCK(sc); + if (device_is_attached(sc->dev)) + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_API, "nve: nve_osallocrxbuf\n"); @@ -1429,11 +1457,9 @@ mem->uiLength = desc->buflength; *id = (void *)desc; - NVE_UNLOCK(sc); return (1); fail: - NVE_UNLOCK(sc); return (0); } @@ -1445,8 +1471,6 @@ struct nve_rx_desc *desc; struct nve_map_buffer *buf; - NVE_LOCK(sc); - DEBUGOUT(NVE_DEBUG_API, "nve: nve_osfreerxbuf\n"); desc = (struct nve_rx_desc *) id; @@ -1460,8 +1484,6 @@ sc->pending_rxs--; buf->mbuf = NULL; - NVE_UNLOCK(sc); - return (1); } @@ -1474,7 +1496,7 @@ struct nve_tx_desc *desc = (struct nve_tx_desc *) id; struct ifnet *ifp; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_API, "nve: nve_ospackettx\n"); @@ -1495,11 +1517,10 @@ if (sc->pending_txs < TX_RING_SIZE) sc->ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; - if (ifp->if_snd.ifq_head != NULL && sc->pending_txs < TX_RING_SIZE) - nve_ifstart(ifp); + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd) && sc->pending_txs < TX_RING_SIZE) + nve_ifstart_locked(ifp); fail: - NVE_UNLOCK(sc); return (1); } @@ -1515,8 +1536,9 @@ struct nve_rx_desc *desc; struct nve_map_buffer *buf; ADAPTER_READ_DATA *readdata; + struct mbuf *m; - NVE_LOCK(sc); + NVE_LOCK_ASSERT(sc); DEBUGOUT(NVE_DEBUG_API, "nve: nve_ospacketrx\n"); @@ -1538,13 +1560,17 @@ bus_dmamap_unload(sc->mtag, buf->map); + /* Blat the mbuf pointer, kernel will free the mbuf cluster */ + m = buf->mbuf; + buf->mbuf = NULL; + /* Give mbuf to OS. */ - (*ifp->if_input) (ifp, buf->mbuf); + NVE_UNLOCK(sc); + (*ifp->if_input)(ifp, m); + NVE_LOCK(sc); if (readdata->ulFilterMatch & ADREADFL_MULTICAST_MATCH) ifp->if_imcasts++; - /* Blat the mbuf pointer, kernel will free the mbuf cluster */ - buf->mbuf = NULL; } else { bus_dmamap_sync(sc->mtag, buf->map, BUS_DMASYNC_POSTREAD); bus_dmamap_unload(sc->mtag, buf->map); @@ -1555,8 +1581,6 @@ sc->cur_rx = desc - sc->rx_desc; sc->pending_rxs--; - NVE_UNLOCK(sc); - return (1); } @@ -1587,7 +1611,7 @@ DEBUGOUT(NVE_DEBUG_BROKEN, "nve: nve_osalloctimer\n"); - callout_handle_init(&sc->ostimer); + callout_init(&sc->ostimer, CALLOUT_MPSAFE); *timer = &sc->ostimer; return (1); @@ -1600,6 +1624,8 @@ DEBUGOUT(NVE_DEBUG_BROKEN, "nve: nve_osfreetimer\n"); + callout_drain((struct callout *)timer); + return (1); } @@ -1625,8 +1651,8 @@ DEBUGOUT(NVE_DEBUG_BROKEN, "nve: nve_ossettimer\n"); - *(struct callout_handle *)timer = timeout(sc->ostimer_func, - sc->ostimer_params, delay); + callout_reset((struct callout *)timer, delay, sc->ostimer_func, + sc->ostimer_params); return (1); } @@ -1635,12 +1661,10 @@ static NV_SINT32 nve_oscanceltimer(PNV_VOID ctx, PNV_VOID timer) { - struct nve_softc *sc = ctx; DEBUGOUT(NVE_DEBUG_BROKEN, "nve: nve_oscanceltimer\n"); - untimeout(sc->ostimer_func, sc->ostimer_params, - *(struct callout_handle *)timer); + callout_stop((struct callout *)timer); return (1); } ==== //depot/projects/smpng/sys/dev/nve/if_nvereg.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * $Id: if_nvreg.h,v 1.6 2004/08/12 14:00:05 q Exp $ - * $FreeBSD: src/sys/dev/nve/if_nvereg.h,v 1.3 2005/06/10 16:49:12 brooks Exp $ + * $FreeBSD: src/sys/dev/nve/if_nvereg.h,v 1.4 2005/11/21 22:14:49 jhb Exp $ */ #ifndef _IF_NVEREG_H_ @@ -117,9 +117,8 @@ device_t miibus; device_t dev; - struct callout_handle stat_ch; + struct callout stat_callout; - u_int32_t unit; void *sc_ih; bus_space_tag_t sc_st; bus_space_handle_t sc_sh; @@ -140,13 +139,11 @@ u_int32_t pending_rxs; u_int32_t pending_txs; - u_int32_t flags; - u_int32_t miicfg; struct mtx mtx; struct mtx osmtx; /* Stuff for dealing with the NVIDIA OS API */ - struct callout_handle ostimer; + struct callout ostimer; PTIMER_FUNC ostimer_func; void *ostimer_params; int linkup; @@ -167,6 +164,7 @@ #define NVE_LOCK(_sc) mtx_lock(&(_sc)->mtx) #define NVE_UNLOCK(_sc) mtx_unlock(&(_sc)->mtx) +#define NVE_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->mtx, MA_OWNED) #define NVE_OSLOCK(_sc) mtx_lock_spin(&(_sc)->osmtx) #define NVE_OSUNLOCK(_sc) mtx_unlock_spin(&(_sc)->osmtx) ==== //depot/projects/smpng/sys/dev/puc/puc.c#26 (text+ko) ==== @@ -58,7 +58,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/puc/puc.c,v 1.44 2005/11/07 13:10:45 rodrigc Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/puc/puc.c,v 1.45 2005/11/21 20:22:34 jhb Exp $"); /* * PCI "universal" communication card device driver, glues com, lpt, @@ -83,10 +83,6 @@ #include "opt_puc.h" -#ifndef PUC_FASTINTR -#define PUC_FASTINTR -#endif - #include #include #include ==== //depot/projects/smpng/sys/i386/conf/DEFAULTS#2 (text+ko) ==== @@ -1,7 +1,7 @@ # # DEFAULTS -- Default kernel configuration file for FreeBSD/i386 # -# $FreeBSD: src/sys/i386/conf/DEFAULTS,v 1.1 2005/10/27 17:34:35 jhb Exp $ +# $FreeBSD: src/sys/i386/conf/DEFAULTS,v 1.2 2005/11/21 20:22:34 jhb Exp $ # Not yet, this would break all existing configs #machine i386 @@ -15,3 +15,5 @@ # Pseudo devices. device mem # Memory and kernel memory devices device io # I/O device + +options PUC_FASTINTR ==== //depot/projects/smpng/sys/ia64/conf/GENERIC#46 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/ia64/conf/GENERIC,v 1.74 2005/09/05 21:36:28 marcel Exp $ +# $FreeBSD: src/sys/ia64/conf/GENERIC,v 1.75 2005/11/21 20:17:45 jhb Exp $ machine ia64 cpu ITANIUM @@ -56,7 +56,6 @@ options _KPOSIX_PRIORITY_SCHEDULING # Posix P1003_1B RT extensions # Various "busses" -device acpi # ACPI support (mandatory) device firewire # FireWire bus code device miibus # MII bus support (Ethernet) device pci # PCI bus support @@ -141,7 +140,6 @@ device gif # IPv6 and IPv4 tunneling device loop # Network loopback device md # Memory "disks" -device mem # Memory and kernel memory devices device pty # Pseudo-ttys (telnet etc) device puc # Multi I/O cards and multi-channel UARTs device random # Entropy device ==== //depot/projects/smpng/sys/pc98/conf/DEFAULTS#2 (text+ko) ==== @@ -1,7 +1,7 @@ # # DEFAULTS -- Default kernel configuration file for FreeBSD/pc98 # -# $FreeBSD: src/sys/pc98/conf/DEFAULTS,v 1.1 2005/10/28 15:30:51 nyan Exp $ +# $FreeBSD: src/sys/pc98/conf/DEFAULTS,v 1.2 2005/11/21 20:22:35 jhb Exp $ # Not yet, this would break all existing configs #machine pc98 i386 @@ -16,3 +16,5 @@ # Pseudo devices. device mem # Memory and kernel memory devices device io # I/O device + +options PUC_FASTINTR ==== //depot/projects/smpng/sys/pci/if_de.c#30 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/pci/if_de.c,v 1.174 2005/11/11 16:04:57 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/pci/if_de.c,v 1.175 2005/11/21 21:50:07 jhb Exp $"); #define TULIP_HDR_DATA @@ -3084,9 +3084,9 @@ hash = tulip_mchash(IF_LLADDR(ifp)); sp[hash >> 4] |= htole32(1 << (hash & 0xF)); } else { - sp[39] = TULIP_SP_MAC(((u_int16_t *)IF_LLADDR(ifp))[0]); - sp[40] = TULIP_SP_MAC(((u_int16_t *)IF_LLADDR(ifp))[1]); - sp[41] = TULIP_SP_MAC(((u_int16_t *)IF_LLADDR(ifp))[2]); + sp[39] = TULIP_SP_MAC((u_int16_t *)IF_LLADDR(ifp) + 0); + sp[40] = TULIP_SP_MAC((u_int16_t *)IF_LLADDR(ifp) + 1); + sp[41] = TULIP_SP_MAC((u_int16_t *)IF_LLADDR(ifp) + 2); } } } @@ -3101,26 +3101,32 @@ if (ifma->ifma_addr->sa_family != AF_LINK) continue; addrp = LLADDR((struct sockaddr_dl *)ifma->ifma_addr); - *sp++ = TULIP_SP_MAC(((u_int16_t *)addrp)[0]); - *sp++ = TULIP_SP_MAC(((u_int16_t *)addrp)[1]); - *sp++ = TULIP_SP_MAC(((u_int16_t *)addrp)[2]); + *sp++ = TULIP_SP_MAC((u_int16_t *)addrp + 0); + *sp++ = TULIP_SP_MAC((u_int16_t *)addrp + 1); + *sp++ = TULIP_SP_MAC((u_int16_t *)addrp + 2); idx++; } /* * Add the broadcast address. */ idx++; - *sp++ = TULIP_SP_MAC(0xFFFF); - *sp++ = TULIP_SP_MAC(0xFFFF); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Nov 22 05:56:40 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C916416A424; Tue, 22 Nov 2005 05:56:39 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 83F0C16A41F for ; Tue, 22 Nov 2005 05:56:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 522A343D4C for ; Tue, 22 Nov 2005 05:56:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAM5ud2s014185 for ; Tue, 22 Nov 2005 05:56:39 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAM5udVW014182 for perforce@freebsd.org; Tue, 22 Nov 2005 05:56:39 GMT (envelope-from imp@freebsd.org) Date: Tue, 22 Nov 2005 05:56:39 GMT Message-Id: <200511220556.jAM5udVW014182@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 87066 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 05:56:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=87066 Change 87066 by imp@imp_plunger on 2005/11/22 05:55:40 This looks a bit like a mis-merge. Fix it the best I can to make it match -current. Hope I didn't screw anything up. With this, my KB920X kernel builds and links. Affected files ... .. //depot/projects/arm/src/sys/arm/arm/intr.c#7 edit Differences ... ==== //depot/projects/arm/src/sys/arm/arm/intr.c#7 (text+ko) ==== @@ -57,15 +57,6 @@ void arm_handler_execute(void *, int); -static void -arm_intr_handler(void *arg) -{ - struct arm_intr *intr = (struct arm_intr *)arg; - - intr->handler(intr->arg); - arm_unmask_irq(intr->irq); -} - void arm_setup_irqhandler(const char *name, void (*hand)(void*), void *arg, int irq, int flags, void **cookiep) @@ -131,10 +122,6 @@ else ih->ih_handler(ih->ih_argument ? ih->ih_argument : frame); - } - } else if (ih) { - arm_mask_irq(i); - ithread_schedule(ithd); } /* Schedule thread if needed. */ From owner-p4-projects@FreeBSD.ORG Tue Nov 22 14:36:38 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 82F1616A421; Tue, 22 Nov 2005 14:36:37 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 3C19D16A420 for ; Tue, 22 Nov 2005 14:36:37 +0000 (GMT) (envelope-from soc-bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B73043D7E for ; Tue, 22 Nov 2005 14:36:20 +0000 (GMT) (envelope-from soc-bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAMEaHWR051683 for ; Tue, 22 Nov 2005 14:36:17 GMT (envelope-from soc-bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAMEaHsi051680 for perforce@freebsd.org; Tue, 22 Nov 2005 14:36:17 GMT (envelope-from soc-bushman@freebsd.org) Date: Tue, 22 Nov 2005 14:36:17 GMT Message-Id: <200511221436.jAMEaHsi051680@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to soc-bushman@freebsd.org using -f From: soc-bushman To: Perforce Change Reviews Cc: Subject: PERFORCE change 87074 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 14:36:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=87074 Change 87074 by soc-bushman@soc-bushman_stinger on 2005/11/22 14:36:04 comments added to the libc sources several significant bugfixes in the daemon Affected files ... .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/Makefile#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/Makefile#15 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agent.c#7 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agent.h#7 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/Makefile.inc#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/group.c#7 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/group.h#7 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/hosts.c#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/hosts.h#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/passwd.c#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/passwd.h#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/services.c#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/services.h#10 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.8#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.conf#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.conf.5#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cachelib.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cachelib.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cacheplcs.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cacheplcs.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/config.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/config.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/debug.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/debug.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/hashtable.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/log.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/log.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_rs_query.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_rs_query.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_ws_query.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_ws_query.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/parser.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/parser.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/protocol.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/protocol.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/query.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/query.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/singletons.c#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/singletons.h#14 edit .. //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/startup/cached#9 edit .. //depot/projects/soc2005/nsswitch_cached/src/include/nscache.h#7 edit .. //depot/projects/soc2005/nsswitch_cached/src/include/nscachedcli.h#5 edit .. //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nscache.c#7 edit .. //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nscachedcli.c#7 edit .. //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nsdispatch.c#11 edit Differences ... ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/Makefile#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/Makefile#15 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agent.c#7 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agent.h#7 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/Makefile.inc#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/group.c#7 (text+ko) ==== @@ -128,16 +128,14 @@ assert(buffer != NULL); assert(buffer_size != NULL); - TRACE_INT(key_size); if (key_size < sizeof(enum nss_lookup_type)) { TRACE_OUT(group_lookup_func); return (NS_UNAVAIL); } memcpy(&lookup_type, key, sizeof(enum nss_lookup_type)); - TRACE_INT(lookup_type); + switch (lookup_type) { case nss_lt_name: - TRACE_POINT(); size = key_size - sizeof(enum nss_lookup_type) + 1; name = (char *)malloc(size); assert(name != NULL); @@ -145,18 +143,15 @@ memcpy(name, key + sizeof(enum nss_lookup_type), size - 1); break; case nss_lt_id: - TRACE_POINT(); if (key_size < sizeof(enum nss_lookup_type) + sizeof(gid_t)) { TRACE_OUT(passwd_lookup_func); return (NS_UNAVAIL); } - TRACE_POINT(); memcpy(&gid, key + sizeof(enum nss_lookup_type), sizeof(gid_t)); break; default: - TRACE_POINT(); TRACE_OUT(group_lookup_func); return (NS_UNAVAIL); } @@ -168,7 +163,6 @@ free(name); break; case nss_lt_id: - TRACE_INT(gid); result = getgrgid(gid); break; default: @@ -177,7 +171,6 @@ } if (result != NULL) { - TRACE_POINT(); group_marshal_func(result, NULL, buffer_size); *buffer = (char *)malloc(*buffer_size); assert(*buffer != NULL); ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/group.h#7 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/hosts.c#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/hosts.h#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/passwd.c#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/passwd.h#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/services.c#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/agents/services.h#10 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.8#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.c#14 (text+ko) ==== @@ -253,7 +253,7 @@ retval->queue = kqueue(); assert(retval->queue != -1); - EV_SET(&eventlist, retval->sockfd, EVFILT_READ, EV_ADD | EV_CLEAR, + EV_SET(&eventlist, retval->sockfd, EVFILT_READ, EV_ADD | EV_ONESHOT, 0, 0, 0); memset(&timeout, 0, sizeof(struct timespec)); kevent(retval->queue, &eventlist, 1, NULL, 0, &timeout); @@ -281,8 +281,6 @@ struct timespec timeout; struct query_state *qstate; - struct sockaddr addr; - socklen_t addr_len; int fd; int res; @@ -290,11 +288,10 @@ gid_t egid; TRACE_IN(accept_connection); - addr_len = sizeof(struct sockaddr); - fd = accept(event_data->ident, &addr, &addr_len); + fd = accept(event_data->ident, NULL, NULL); if (fd == -1) { LOG_ERR_2("accept_connection", "error %d during accept()", - errno); + errno); TRACE_OUT(accept_connection); return; } @@ -319,7 +316,7 @@ EV_SET(&eventlist[1], fd, EVFILT_READ, EV_ADD | EV_ONESHOT, NOTE_LOWAT, qstate->kevent_watermark, qstate); res = kevent(env->queue, eventlist, 2, NULL, 0, &timeout); - + TRACE_OUT(accept_connection); } @@ -519,7 +516,7 @@ struct query_state *qstate; TRACE_IN(process_timer_event); - LOG_MSG_2("processing_timer_event", "timer event received - " + LOG_MSG_2("process_timer_event", "timer event received - " "abandoning request"); qstate = (struct query_state *)event_data->udata; destroy_query_state(qstate); @@ -538,7 +535,7 @@ struct timespec timeout; const int eventlist_size = 1; struct kevent eventlist[eventlist_size]; - int nevents; + int nevents, i; TRACE_MSG("=> processing_loop"); memset(&timeout, 0, sizeof(struct timespec)); @@ -555,9 +552,19 @@ struct kevent *event_data; event_data = &eventlist[0]; - if (event_data->ident == env->sockfd) - accept_connection(event_data, env, config); - else { + if (event_data->ident == env->sockfd) { + for (i = 0; i < event_data->data; ++i) + accept_connection(event_data, env, config); + + EV_SET(eventlist, s_runtime_env->sockfd, + EVFILT_READ, EV_ADD | EV_ONESHOT, + 0, 0, 0); + memset(&timeout, 0, + sizeof(struct timespec)); + kevent(s_runtime_env->queue, eventlist, + 1, NULL, 0, &timeout); + + } else { switch (event_data->filter) { case EVFILT_READ: case EVFILT_WRITE: ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.conf#14 (text+ko) ==== @@ -1,7 +1,6 @@ # # Default caching daemon configuration file # - enable-cache passwd yes enable-cache group yes enable-cache hosts yes ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cached.conf.5#14 (text+ko) ==== @@ -97,4 +97,4 @@ .Aq bushman@rsu.ru .Sh "BUGS" To report bugs or suggestions please mail me -.Aq bushman@rsu.ru. +.Aq bushman@rsu.ru ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cachelib.c#14 (text+ko) ==== @@ -381,7 +381,6 @@ item = policy->get_first_item_func(policy); while ((item != NULL) && (continue_func(entry, item) == 1)) { next_item = policy->get_next_item_func(policy, item); - TRACE_PTR(next_item); connected_item = item->connected_item; policy->remove_item_func(policy, item); @@ -390,30 +389,20 @@ ht_key.key = item->key; ht_key.key_size = item->key_size; - TRACE_POINT(); hash = HASHTABLE_CALCULATE_HASH(cache_ht_, &entry->items, &ht_key); assert(hash >= 0); assert(hash < HASHTABLE_ENTRIES_COUNT(&entry->items)); - TRACE_POINT(); ht_item = HASHTABLE_GET_ENTRY(&(entry->items), hash); - TRACE_POINT(); ht_item_data = HASHTABLE_ENTRY_FIND(cache_ht_, ht_item, &ht_key); assert(ht_item_data != NULL); - TRACE_POINT(); - TRACE_POINT(); - TRACE_PTR(ht_item_data->key); - TRACE_INT(ht_item_data->key_size); free(ht_item_data->key); - TRACE_POINT(); free(ht_item_data->value); - TRACE_POINT(); HASHTABLE_ENTRY_REMOVE(cache_ht_, ht_item, ht_item_data); --entry->items_size; - TRACE_POINT(); policy->destroy_item_func(item); if (connected_item != NULL) { @@ -756,7 +745,6 @@ free(find_res->key); free(find_res->value); - HASHTABLE_ENTRY_REMOVE(cache_ht_, item, find_res); connected_item = find_res->fifo_policy_item->connected_item; @@ -774,6 +762,7 @@ common_entry->policies[0]->destroy_item_func( find_res->fifo_policy_item); + HASHTABLE_ENTRY_REMOVE(cache_ht_, item, find_res); --common_entry->items_size; } } @@ -1213,7 +1202,6 @@ if (ht_item_data != NULL) { item = ht_item_data->fifo_policy_item; connected_item = item->connected_item; - common_entry->policies[0]->remove_item_func( common_entry->policies[0], ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cachelib.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cacheplcs.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/cacheplcs.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/config.c#14 (text+ko) ==== @@ -353,10 +353,12 @@ config_entry->mp_cache_entries_size); assert(new_mp_entries != NULL); new_mp_entries[0] = c_entry; + if (config_entry->mp_cache_entries_size - 1 > 0) { memcpy(new_mp_entries + 1, config_entry->mp_cache_entries, - config_entry->mp_cache_entries_size - 1); + (config_entry->mp_cache_entries_size - 1) * + sizeof(cache_entry)); } old_mp_entries = config_entry->mp_cache_entries; @@ -369,7 +371,6 @@ configuration_entry_cache_mp_sort_cmp); TRACE_OUT(configuration_entry_add_mp_cache_entry); - return (0); } ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/config.h#14 (text+ko) ==== @@ -40,16 +40,16 @@ #define DEFAULT_COMMON_ENTRY_TIMEOUT 10 #define DEFAULT_MP_ENTRY_TIMEOUT 60 -#define DEFAULT_CACHE_HT_SIZE 1 //257 +#define DEFAULT_CACHE_HT_SIZE 257 #define INITIAL_ENTRIES_CAPACITY 8 #define DEFAULT_SOCKET_PATH "/var/run/cached" #define DEFAULT_PIDFILE_PATH "/var/run/cached.pid" -#define DEFAULT_POSITIVE_ELEMENTS_SIZE 1 // (2048) +#define DEFAULT_POSITIVE_ELEMENTS_SIZE (2048) #define DEFAULT_POSITIVE_LIFETIME (60 * 60 * 12) -#define DEFAULT_NEGATIVE_ELEMENTS_SIZE 2 // (512) +#define DEFAULT_NEGATIVE_ELEMENTS_SIZE (512) #define DEFAULT_NEGATIVE_LIFETIME (60 * 60) #define DEFAULT_MULTIPART_ELEMENTS_SIZE (1024 * 8) ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/debug.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/debug.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/hashtable.h#14 (text+ko) ==== @@ -191,7 +191,7 @@ \ memmove(del_elm, del_elm + 1, \ (&the_entry->field.values[--the_entry->field.size] - del_elm) *\ - sizeof(type)); \ + sizeof(type)); \ } /* ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/log.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/log.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_rs_query.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_rs_query.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_ws_query.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/mp_ws_query.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/parser.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/parser.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/protocol.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/protocol.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/query.c#14 (text+ko) ==== @@ -132,7 +132,6 @@ CTT_CLEAR, eid_str, eid_str_length, KPPT_LEFT); configuration_unlock_entry(config_entry, CELT_NEGATIVE); - configuration_lock_entry(config_entry, CELT_MULTIPART); if (configuration_entry_find_mp_cache_entries(config_entry, eid_str, &start, &finish) == 0) { @@ -950,21 +949,15 @@ switch (transform_request->transformation_type) { case TT_USER: if (transform_request->entry == NULL) { - configuration_lock_rdlock(s_configuration); - size = configuration_get_entries_size(s_configuration); for (i = 0; i < size; ++i) { clear_config_entry_part(configuration_get_entry( s_configuration, i), qstate->eid_str, qstate->eid_str_length); } - - configuration_unlock(s_configuration); } else { - configuration_lock_rdlock(s_configuration); qstate->config_entry = configuration_find_entry( s_configuration, transform_request->entry); - configuration_unlock(s_configuration); if (qstate->config_entry == NULL) { LOG_ERR_2("transform_request", @@ -984,8 +977,6 @@ transform_response->error_code = -1; else { if (transform_request->entry == NULL) { - configuration_lock_rdlock(s_configuration); - size = configuration_get_entries_size( s_configuration); for (i = 0; i < size; ++i) { @@ -993,14 +984,10 @@ configuration_get_entry( s_configuration, i)); } - - configuration_unlock(s_configuration); } else { - configuration_lock_rdlock(s_configuration); qstate->config_entry = configuration_find_entry( s_configuration, transform_request->entry); - configuration_unlock(s_configuration); if (qstate->config_entry == NULL) { LOG_ERR_2("transform_request", ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/query.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/singletons.c#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/cached/singletons.h#14 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/release/cached-0.2/startup/cached#9 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/src/include/nscache.h#7 (text+ko) ==== @@ -34,27 +34,40 @@ typedef int (*nss_cache_unmarshal_func_t)(char *, size_t, void *, va_list, void *); -typedef void (*nss_set_mp_ws_func_t)(cached_mp_write_session); +typedef void (*nss_set_mp_ws_func_t)(cached_mp_write_session); typedef cached_mp_write_session (*nss_get_mp_ws_func_t)(void); -typedef void (*nss_set_mp_rs_func_t)(cached_mp_read_session); +typedef void (*nss_set_mp_rs_func_t)(cached_mp_read_session); typedef cached_mp_read_session (*nss_get_mp_rs_func_t)(void); typedef struct _nss_cache_info { char *entry_name; void *mdata; - nss_cache_id_func_t id_func; - nss_cache_marshal_func_t marshal_func; - nss_cache_unmarshal_func_t unmarshal_func; + /* + * These 3 functions should be implemented specifically for each + * nsswitch database. + */ + nss_cache_id_func_t id_func; /* marshals the request parameters */ + nss_cache_marshal_func_t marshal_func; /* marshals response */ + nss_cache_unmarshal_func_t unmarshal_func; /* unmarshals response */ - nss_set_mp_ws_func_t set_mp_ws_func; - nss_get_mp_ws_func_t get_mp_ws_func; + /* + * These 4 functions should be generated with NSS_MP_CACHE_HANDLING + * macro. + */ + nss_set_mp_ws_func_t set_mp_ws_func; /* sets current write session */ + nss_get_mp_ws_func_t get_mp_ws_func; /* gets current write session */ - nss_set_mp_rs_func_t set_mp_rs_func; - nss_get_mp_rs_func_t get_mp_rs_func; + nss_set_mp_rs_func_t set_mp_rs_func; /* sets current read session */ + nss_get_mp_rs_func_t get_mp_rs_func; /* gets current read session */ } nss_cache_info; +/* + * NSS_MP_CACHE_HANDLING implements the set_mp_ws, get_mp_ws, set_mp_rs, + * get_mp_rs functions, that are used in _nss_cache_info. It uses + * NSS_TLS_HANDLING macro to organize thread local storage. + */ #define NSS_MP_CACHE_HANDLING(name) \ struct name##_mp_state { \ cached_mp_write_session mp_write_session; \ @@ -126,12 +139,21 @@ return (mp_state->mp_read_session); \ } +/* + * These macros should be used to initialize _nss_cache_info structure. For + * multipart queries in setXXXent and getXXXent functions mf and uf + * (marshal function and unmarshal function) should be both NULL. + */ #define NS_COMMON_CACHE_INFO_INITIALIZER(name, mdata, if, mf, uf) \ {#name, mdata, if, mf, uf, NULL, NULL, NULL, NULL} #define NS_MP_CACHE_INFO_INITIALIZER(name, mdata, mf, uf) \ - {#name, mdata, NULL, mf, uf, name##_set_mp_ws, name##_get_mp_ws, \ + {#name, mdata, NULL, mf, uf, name##_set_mp_ws, name##_get_mp_ws,\ name##_set_mp_rs, name##_get_mp_rs } +/* + * Analog of other XXX_CB macros. Has the pointer to _nss_cache_info + * structure as the only argument. + */ #define NS_CACHE_CB(cinfo) {NSSRC_CACHE, nss_cache_handler, (void *)(cinfo) }, /* args are: current pointer, current buffer, initial buffer, pointer type */ @@ -139,7 +161,7 @@ if ((cp) != NULL) \ (cp) = (p_type)((char *)(cb) + (size_t)(cp) - (size_t)(ib)) /* - * gets new pointer from the marshalled buffer by uisng initial address + * Gets new pointer from the marshalled buffer by uisng initial address * and initial buffer address */ #define NS_GET_NEWP(cp, cb, ib) \ @@ -153,6 +175,7 @@ } nss_cache_data; __BEGIN_DECLS +/* dummy function, which is needed to make nss_method_lookup happy */ extern int nss_cache_handler(void *, void *, va_list); #ifdef _NS_PRIVATE ==== //depot/projects/soc2005/nsswitch_cached/src/include/nscachedcli.h#5 (text+ko) ==== @@ -58,16 +58,17 @@ struct cached_connection_ { int sockfd; - int read_queue; - int write_queue; + int read_queue; + int write_queue; - int mp_flag; + int mp_flag; /* shows if the connection is used for + * multipart operations */ }; /* simple abstractions for not to write "struct" every time */ -typedef struct cached_connection_ *cached_connection; -typedef struct cached_connection_ *cached_mp_write_session; -typedef struct cached_connection_ *cached_mp_read_session; +typedef struct cached_connection_ *cached_connection; +typedef struct cached_connection_ *cached_mp_write_session; +typedef struct cached_connection_ *cached_mp_read_session; #define INVALID_CACHED_CONNECTION (NULL) #define INVALID_CACHED_MP_WRITE_SESSION (NULL) @@ -76,27 +77,27 @@ __BEGIN_DECLS /* initialization/destruction routines */ -extern cached_connection open_cached_connection( +extern cached_connection open_cached_connection( struct cached_connection_params const *); -extern void close_cached_connection(cached_connection); +extern void close_cached_connection(cached_connection); /* simple read/write operations */ -extern int cached_write(cached_connection, const char *, const char *, +extern int cached_write(cached_connection, const char *, const char *, size_t, const char *, size_t); extern int cached_read(cached_connection, const char *, const char *, size_t, char *, size_t *); /* multipart read/write operations */ -extern cached_mp_write_session open_cached_mp_write_session( +extern cached_mp_write_session open_cached_mp_write_session( struct cached_connection_params const *, const char *); -extern int cached_mp_write(cached_mp_write_session, const char *, size_t); -extern int abandon_cached_mp_write_session(cached_mp_write_session); -extern int close_cached_mp_write_session(cached_mp_write_session); +extern int cached_mp_write(cached_mp_write_session, const char *, size_t); +extern int abandon_cached_mp_write_session(cached_mp_write_session); +extern int close_cached_mp_write_session(cached_mp_write_session); extern cached_mp_read_session open_cached_mp_read_session( struct cached_connection_params const *, const char *); -extern int cached_mp_read(cached_mp_read_session, char *, size_t *); -extern int close_cached_mp_read_session(cached_mp_read_session); +extern int cached_mp_read(cached_mp_read_session, char *, size_t *); +extern int close_cached_mp_read_session(cached_mp_read_session); __END_DECLS ==== //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nscache.c#7 (text+ko) ==== ==== //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nscachedcli.c#7 (text+ko) ==== @@ -45,6 +45,12 @@ static int safe_read(struct cached_connection_ *, void *, size_t); static int send_credentials(struct cached_connection_ *, int); +/* + * safe_write writes data to the specified connection and tries to do it in + * the very safe manner. We ensure, that we can write to the socket with + * kevent. If the data_size can't be send in one piece, then it would be + * splitted. + */ static int safe_write(struct cached_connection_ *connection, const void *data, size_t data_size) @@ -82,6 +88,12 @@ return (0); } +/* + * safe_read reads data from connection and tries to do it in the very safe + * and stable way. It uses kevent to ensure, that the data are availabe for + * reading. If the amount of data to be read is too large, then they would + * be splitted. + */ static int safe_read(struct cached_connection_ *connection, void *data, size_t data_size) { @@ -118,6 +130,10 @@ return (0); } +/* + * Sends the credentials information to the connection along with the + * communication element type. + */ static int send_credentials(struct cached_connection_ *connection, int type) { @@ -164,6 +180,9 @@ return (-1); } +/* + * Opens the connection with the specified params. Initializes all kqueues. + */ struct cached_connection_ * open_cached_connection(struct cached_connection_params const *params) { @@ -224,6 +243,11 @@ free(connection); } +/* + * This function is very close to the cache_write function of the caching + * library, which is used in the caching daemon. It caches the data with the + * specified key in the cache entry with entry_name. + */ int cached_write(struct cached_connection_ *connection, const char *entry_name, const char *key, size_t key_size, const char *data, size_t data_size) @@ -271,6 +295,11 @@ return (error_code); } +/* + * This function is very close to the cache_read function of the caching + * library, which is used in the caching daemon. It reads cached data with the + * specified key from the cache entry with entry_name. + */ int cached_read(struct cached_connection_ *connection, const char *entry_name, const char *key, size_t key_size, char *data, size_t *data_size) @@ -334,6 +363,13 @@ return (error_code); } +/* + * Initializes the mp_write_session. For such a session the new connection + * would be opened. The data should be written to the session with + * cached_mp_write function. The close_cached_mp_write_session function + * should be used to submit session and abandon_cached_mp_write_session - to + * abandon it. When the session is submitted, the whole se + */ struct cached_connection_ * open_cached_mp_write_session(struct cached_connection_params const *params, const char *entry_name) ==== //depot/projects/soc2005/nsswitch_cached/src/lib/libc/net/nsdispatch.c#11 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Nov 22 23:33:29 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0166716A42A; Tue, 22 Nov 2005 23:33:27 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 C831416A421 for ; Tue, 22 Nov 2005 23:33:27 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F29C143D64 for ; Tue, 22 Nov 2005 23:33:15 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAMNXCF0091068 for ; Tue, 22 Nov 2005 23:33:12 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAMNXCvR091065 for perforce@freebsd.org; Tue, 22 Nov 2005 23:33:12 GMT (envelope-from sam@freebsd.org) Date: Tue, 22 Nov 2005 23:33:12 GMT Message-Id: <200511222333.jAMNXCvR091065@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87095 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 23:33:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=87095 Change 87095 by sam@sam_ebb on 2005/11/22 23:33:07 IFC Affected files ... .. //depot/projects/wifi/sys/dev/ath/ath_rate/sample/sample.c#7 integrate .. //depot/projects/wifi/sys/dev/ath/if_ath.c#110 integrate .. //depot/projects/wifi/sys/dev/ath/if_athioctl.h#10 integrate .. //depot/projects/wifi/sys/dev/ath/if_athvar.h#45 integrate Differences ... ==== //depot/projects/wifi/sys/dev/ath/ath_rate/sample/sample.c#7 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/ath_rate/sample/sample.c,v 1.9 2005/07/22 16:50:17 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/ath_rate/sample/sample.c,v 1.10 2005/11/15 05:47:20 sam Exp $"); /* * John Bicket's SampleRate control algorithm. @@ -708,6 +708,11 @@ for (x = 0; x < ni->ni_rates.rs_nrates; x++) { sn->rates[x].rate = ni->ni_rates.rs_rates[x] & IEEE80211_RATE_VAL; sn->rates[x].rix = sc->sc_rixmap[sn->rates[x].rate]; + if (sn->rates[x].rix == 0xff) { + DPRINTF(sc, "%s: ignore bogus rix at %d\n", + __func__, x); + continue; + } sn->rates[x].rateCode = rt->info[sn->rates[x].rix].rateCode; sn->rates[x].shortPreambleRateCode = rt->info[sn->rates[x].rix].rateCode | ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#110 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.104 2005/09/16 10:09:23 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.106 2005/11/15 05:49:02 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -3682,13 +3682,6 @@ ath_tx_start(struct ath_softc *sc, struct ieee80211_node *ni, struct ath_buf *bf, struct mbuf *m0) { -#define CTS_DURATION \ - ath_hal_computetxtime(ah, rt, IEEE80211_ACK_LEN, cix, AH_TRUE) -#define updateCTSForBursting(_ah, _ds, _txq) \ - ath_hal_updateCTSForBursting(_ah, _ds, \ - _txq->axq_linkbuf != NULL ? _txq->axq_linkbuf->bf_desc : NULL, \ - _txq->axq_lastdsWithCTS, _txq->axq_gatingds, \ - txopLimit, CTS_DURATION) struct ieee80211com *ic = &sc->sc_ic; struct ath_hal *ah = sc->sc_ah; struct ifnet *ifp = sc->sc_ifp; @@ -4166,39 +4159,6 @@ * pass it on to the hardware. */ ATH_TXQ_LOCK(txq); - if (flags & (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA)) { - u_int32_t txopLimit = IEEE80211_TXOP_TO_US( - cap->cap_wmeParams[pri].wmep_txopLimit); - /* - * When bursting, potentially extend the CTS duration - * of a previously queued frame to cover this frame - * and not exceed the txopLimit. If that can be done - * then disable RTS/CTS on this frame since it's now - * covered (burst extension). Otherwise we must terminate - * the burst before this frame goes out so as not to - * violate the WME parameters. All this is complicated - * as we need to update the state of packets on the - * (live) hardware queue. The logic is buried in the hal - * because it's highly chip-specific. - */ - if (txopLimit != 0) { - sc->sc_stats.ast_tx_ctsburst++; - if (updateCTSForBursting(ah, ds0, txq) == 0) { - /* - * This frame was not covered by RTS/CTS from - * the previous frame in the burst; update the - * descriptor pointers so this frame is now - * treated as the last frame for extending a - * burst. - */ - txq->axq_lastdsWithCTS = ds0; - /* set gating Desc to final desc */ - txq->axq_gatingds = - (struct ath_desc *)txq->axq_link; - } else - sc->sc_stats.ast_tx_ctsext++; - } - } ATH_TXQ_INSERT_TAIL(txq, bf, bf_list); if (txq->axq_link == NULL) { ath_hal_puttxbuf(ah, txq->axq_qnum, bf->bf_daddr); @@ -4223,8 +4183,6 @@ ATH_TXQ_UNLOCK(txq); return 0; -#undef updateCTSForBursting -#undef CTS_DURATION } /* @@ -4267,10 +4225,6 @@ ATH_TXQ_UNLOCK(txq); break; } - if (ds0 == txq->axq_lastdsWithCTS) - txq->axq_lastdsWithCTS = NULL; - if (ds == txq->axq_gatingds) - txq->axq_gatingds = NULL; ATH_TXQ_REMOVE_HEAD(txq, bf_list); ATH_TXQ_UNLOCK(txq); ==== //depot/projects/wifi/sys/dev/ath/if_athioctl.h#10 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athioctl.h,v 1.10 2005/03/30 20:13:08 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athioctl.h,v 1.11 2005/11/15 05:49:02 sam Exp $ */ /* @@ -76,8 +76,8 @@ u_int32_t ast_tx_shortpre;/* tx frames with short preamble */ u_int32_t ast_tx_altrate; /* tx frames with alternate rate */ u_int32_t ast_tx_protect; /* tx frames with protection */ - u_int32_t ast_tx_ctsburst;/* tx frames with cts and bursting */ - u_int32_t ast_tx_ctsext; /* tx frames with cts extension */ + u_int32_t ast_unused1; + u_int32_t ast_unused2; u_int32_t ast_rx_nombuf; /* rx setup failed 'cuz no mbuf */ u_int32_t ast_rx_busdma; /* rx setup failed for dma resrcs */ u_int32_t ast_rx_orn; /* rx failed 'cuz of desc overrun */ ==== //depot/projects/wifi/sys/dev/ath/if_athvar.h#45 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.29 2005/08/08 18:46:36 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.30 2005/11/15 05:49:02 sam Exp $ */ /* @@ -150,19 +150,6 @@ STAILQ_HEAD(, ath_buf) axq_q; /* transmit queue */ struct mtx axq_lock; /* lock on q and link */ /* - * State for patching up CTS when bursting. - */ - struct ath_buf *axq_linkbuf; /* va of last buffer */ - struct ath_desc *axq_lastdsWithCTS; - /* first desc of last descriptor - * that contains CTS - */ - struct ath_desc *axq_gatingds; /* final desc of the gating desc - * that determines whether - * lastdsWithCTS has been DMA'ed - * or not - */ - /* * Fast-frame state. The staging queue holds awaiting * a fast-frame pairing. Buffers on this queue are * assigned an ``age'' and flushed when they wait too long. @@ -183,7 +170,6 @@ STAILQ_INSERT_TAIL(&(_tq)->axq_q, (_elm), _field); \ (_tq)->axq_depth++; \ (_tq)->axq_curage++; \ - (_tq)->axq_linkbuf = (_elm); \ } while (0) #define ATH_TXQ_REMOVE_HEAD(_tq, _field) do { \ STAILQ_REMOVE_HEAD(&(_tq)->axq_q, _field); \ @@ -562,10 +548,6 @@ ((*(_ah)->ah_procTxDesc)((_ah), (_ds))) #define ath_hal_gettxintrtxqs(_ah, _txqs) \ ((*(_ah)->ah_getTxIntrQueue)((_ah), (_txqs))) -#define ath_hal_updateCTSForBursting(_ah, _ds, _prevds, _prevdsWithCTS, \ - _gatingds, _txOpLimit, _ctsDuration) \ - ((*(_ah)->ah_updateCTSForBursting)((_ah), (_ds), (_prevds), \ - (_prevdsWithCTS), (_gatingds), (_txOpLimit), (_ctsDuration))) #define ath_hal_gpioCfgOutput(_ah, _gpio) \ ((*(_ah)->ah_gpioCfgOutput)((_ah), (_gpio))) From owner-p4-projects@FreeBSD.ORG Tue Nov 22 23:47:37 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 693A316A421; Tue, 22 Nov 2005 23:47:37 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 424E816A41F for ; Tue, 22 Nov 2005 23:47:37 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 646A743D73 for ; Tue, 22 Nov 2005 23:47:30 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAMNlURe091650 for ; Tue, 22 Nov 2005 23:47:30 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAMNlUIW091647 for perforce@freebsd.org; Tue, 22 Nov 2005 23:47:30 GMT (envelope-from sam@freebsd.org) Date: Tue, 22 Nov 2005 23:47:30 GMT Message-Id: <200511222347.jAMNlUIW091647@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87096 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 23:47:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=87096 Change 87096 by sam@sam_ebb on 2005/11/22 23:46:35 fix merge botch Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_node.c#65 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#65 (text+ko) ==== @@ -1832,17 +1832,6 @@ keyixmax); } else nt->nt_keyixmap = NULL; - nt->nt_keyixmax = keyixmax; - if (nt->nt_keyixmax > 0) { - MALLOC(nt->nt_keyixmap, struct ieee80211_node **, - keyixmax * sizeof(struct ieee80211_node *), - M_80211_NODE, M_NOWAIT | M_ZERO); - if (nt->nt_keyixmap == NULL) - if_printf(ic->ic_ifp, - "Cannot allocate key index map with %u entries\n", - keyixmax); - } else - nt->nt_keyixmap = NULL; } static void From owner-p4-projects@FreeBSD.ORG Tue Nov 22 23:50:58 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F220416A424; Tue, 22 Nov 2005 23:50:57 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 C592D16A41F for ; Tue, 22 Nov 2005 23:50:57 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E02C543D69 for ; Tue, 22 Nov 2005 23:50:47 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAMNoYRw091795 for ; Tue, 22 Nov 2005 23:50:34 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAMNoYwN091792 for perforce@freebsd.org; Tue, 22 Nov 2005 23:50:34 GMT (envelope-from sam@freebsd.org) Date: Tue, 22 Nov 2005 23:50:34 GMT Message-Id: <200511222350.jAMNoYwN091792@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87097 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Nov 2005 23:50:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=87097 Change 87097 by sam@sam_ebb on 2005/11/22 23:50:02 IFC Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211.c#29 integrate .. //depot/projects/wifi/sys/net80211/ieee80211_freebsd.c#18 integrate .. //depot/projects/wifi/sys/net80211/ieee80211_output.c#56 integrate .. //depot/projects/wifi/sys/net80211/ieee80211_var.h#36 integrate Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211.c#29 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/net80211/ieee80211.c,v 1.22 2005/08/10 16:22:29 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/net80211/ieee80211.c,v 1.23 2005/11/15 05:56:32 sam Exp $"); /* * IEEE 802.11 generic handler @@ -235,33 +235,48 @@ /* * Convert MHz frequency to IEEE channel number. */ -u_int +int ieee80211_mhz2ieee(u_int freq, u_int flags) { +#define IS_CHAN_IN_PUBLIC_SAFETY_BAND(_c) ((_c) > 4940 && (_c) < 4990) if (flags & IEEE80211_CHAN_2GHZ) { /* 2GHz band */ if (freq == 2484) return 14; if (freq < 2484) - return (freq - 2407) / 5; + return ((int) freq - 2407) / 5; else return 15 + ((freq - 2512) / 20); } else if (flags & IEEE80211_CHAN_5GHZ) { /* 5Ghz band */ - return (freq - 5000) / 5; + if (IS_CHAN_IN_PUBLIC_SAFETY_BAND(freq)) + return ((freq * 10) + + (((freq % 5) == 2) ? 5 : 0) - 49400) / 5; + if (freq <= 5000) + return (freq - 4000) / 5; + else + return (freq - 5000) / 5; } else { /* either, guess */ if (freq == 2484) return 14; if (freq < 2484) - return (freq - 2407) / 5; - if (freq < 5000) - return 15 + ((freq - 2512) / 20); + return ((int) freq - 2407) / 5; + if (freq < 5000) { + if (IS_CHAN_IN_PUBLIC_SAFETY_BAND(freq)) + return ((freq * 10) + + (((freq % 5) == 2) ? 5 : 0) - 49400)/5; + else if (freq > 4900) + return (freq - 4000) / 5; + else + return 15 + ((freq - 2512) / 20); + } return (freq - 5000) / 5; } +#undef IS_CHAN_IN_PUBLIC_SAFETY_BAND } /* * Convert channel to IEEE channel number. */ -u_int +int ieee80211_chan2ieee(struct ieee80211com *ic, const struct ieee80211_channel *c) { if (c == NULL) { ==== //depot/projects/wifi/sys/net80211/ieee80211_freebsd.c#18 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_freebsd.c,v 1.8 2005/08/08 18:46:35 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_freebsd.c,v 1.9 2005/11/02 13:46:31 andre Exp $"); /* * IEEE 802.11 support (FreeBSD-specific code) @@ -170,7 +170,7 @@ len = roundup(sizeof(struct ieee80211_frame) + pktlen, 4); KASSERT(len <= MCLBYTES, ("802.11 mgt frame too large: %u", len)); if (len < MINCLSIZE) { - m = m_gethdr(M_NOWAIT, MT_HEADER); + m = m_gethdr(M_NOWAIT, MT_DATA); /* * Align the data in case additional headers are added. * This should only happen when a WEP header is added @@ -180,7 +180,7 @@ if (m != NULL) MH_ALIGN(m, len); } else - m = m_getcl(M_NOWAIT, MT_HEADER, M_PKTHDR); + m = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR); if (m != NULL) { m->m_data += sizeof(struct ieee80211_frame); *frm = m->m_data; ==== //depot/projects/wifi/sys/net80211/ieee80211_output.c#56 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_output.c,v 1.34 2005/08/10 16:22:29 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_output.c,v 1.35 2005/11/02 13:46:31 andre Exp $"); #include "opt_inet.h" @@ -223,7 +223,7 @@ struct mbuf *m; struct ieee80211_frame *wh; - MGETHDR(m, M_NOWAIT, MT_HEADER); + MGETHDR(m, M_NOWAIT, MT_DATA); if (m == NULL) { /* XXX debug msg */ ic->ic_stats.is_tx_nobuf++; ==== //depot/projects/wifi/sys/net80211/ieee80211_var.h#36 (text+ko) ==== @@ -29,7 +29,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/net80211/ieee80211_var.h,v 1.30 2005/08/10 16:22:29 sam Exp $ + * $FreeBSD: src/sys/net80211/ieee80211_var.h,v 1.31 2005/11/15 05:56:32 sam Exp $ */ #ifndef _NET80211_IEEE80211_VAR_H_ #define _NET80211_IEEE80211_VAR_H_ @@ -340,8 +340,8 @@ int ieee80211_rate2media(struct ieee80211com *, int, enum ieee80211_phymode); int ieee80211_media2rate(int); -u_int ieee80211_mhz2ieee(u_int, u_int); -u_int ieee80211_chan2ieee(struct ieee80211com *, +int ieee80211_mhz2ieee(u_int, u_int); +int ieee80211_chan2ieee(struct ieee80211com *, const struct ieee80211_channel *); u_int ieee80211_ieee2mhz(u_int, u_int); struct ieee80211_channel *ieee80211_find_channel(struct ieee80211com *, From owner-p4-projects@FreeBSD.ORG Wed Nov 23 00:50:11 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 446D416A421; Wed, 23 Nov 2005 00:50:11 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 1822516A41F for ; Wed, 23 Nov 2005 00:50:11 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B17D43D8B for ; Wed, 23 Nov 2005 00:49:46 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAN0njEh002118 for ; Wed, 23 Nov 2005 00:49:45 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAN0njvt002115 for perforce@freebsd.org; Wed, 23 Nov 2005 00:49:45 GMT (envelope-from sam@freebsd.org) Date: Wed, 23 Nov 2005 00:49:45 GMT Message-Id: <200511230049.jAN0njvt002115@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87098 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 00:50:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=87098 Change 87098 by sam@sam_ebb on 2005/11/23 00:49:13 IFC Affected files ... .. //depot/projects/wifi/sbin/ifconfig/ifconfig.8#12 integrate .. //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#49 edit Differences ... ==== //depot/projects/wifi/sbin/ifconfig/ifconfig.8#12 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94 -.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.106 2005/10/01 19:14:34 glebius Exp $ +.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.107 2005/11/18 10:32:10 ru Exp $ .\" .Dd October 1, 2005 .Dt IFCONFIG 8 @@ -285,15 +285,15 @@ .Ar type . Some interfaces support the mutually exclusive use of one of several different physical media connectors. -For example, a 10Mb/s Ethernet +For example, a 10Mbit/s Ethernet interface might support the use of either .Tn AUI or twisted pair connectors. Setting the media type to -.Dq Li 10base5/AUI +.Cm 10base5/AUI would change the currently active connector to the AUI port. Setting it to -.Dq Li 10baseT/UTP +.Cm 10baseT/UTP would activate twisted pair. Refer to the interfaces' driver specific documentation or man page for a complete list of the @@ -316,11 +316,11 @@ .Ar mode . For IEEE 802.11 wireless interfaces that support multiple operating modes this directive is used to select between 802.11a -.Pq Dq Li 11a , +.Pq Cm 11a , 802.11b -.Pq Dq Li 11b , +.Pq Cm 11b , and 802.11g -.Pq Dq Li 11g +.Pq Cm 11g operating modes. .It Cm name Ar name Set the interface name to @@ -534,19 +534,17 @@ Not all adaptors support all modes. The set of valid modes is -.Dq Li none , -.Dq Li open , -.Dq Li shared +.Cm none , open , shared (shared key), -.Dq Li 8021x +.Cm 8021x (IEEE 802.1x), and -.Dq Li wpa +.Cm wpa (IEEE WPA/WPA2/802.11i). The -.Dq Li 8021x +.Cm 8021x and -.Dq Li wpa +.Cm wpa modes are only useful when using an authentication service (a supplicant for client operation or an authenticator when operating as an access point). @@ -563,10 +561,9 @@ as a station in a BSS network. This overrides any automatic selection done by the system. To disable a previously selected access point, supply -.Dq Li any , -.Dq Li none , +.Cm any , none , or -.Dq Li - +.Cm - for the address. This option is useful when more than one access points have the same SSID. Another name for the @@ -589,10 +586,10 @@ depends on the region your adaptor was manufactured for. Setting the channel to -.Dq Li 0 , -.Dq Li any , +.Li 0 , +.Cm any , or -.Dq Li - +.Cm - will give you the default for your adaptor. Some adaptors ignore this setting unless you are in ad-hoc mode. @@ -607,7 +604,7 @@ .Ar period specifies the number of beacon intervals between DTIM and must be in the range 1 to 15. -By default DTIM is 1 (i.e. DTIM occurs at each beacon). +By default DTIM is 1 (i.e., DTIM occurs at each beacon). .It Cm fragthreshold Ar length Set the threshold for which transmitted frames are broken into fragments. The @@ -616,66 +613,66 @@ Setting .Ar length to -.Dq Li 2346 , -.Dq Li any , +.Li 2346 , +.Cm any , or -.Dq Li - +.Cm - disables transmit fragmentation. Not all adaptors honor the fragmentation threshold. .It Cm hidessid When operating as an access point, do not broadcast the SSID in beacon frames or respond to probe request frames unless -they are directed to the ap (i.e. they include the ap's SSID). +they are directed to the ap (i.e., they include the ap's SSID). By default, the SSID is included in beacon frames and undirected probe request frames are answered. To re-enable the broadcast of the SSID etc., use .Fl hidessid . -.It Cm list Cm active +.It Cm list active Display the list of channels available for use taking into account any restrictions set with the -.Dq Li chanlist +.Cm chanlist and -.Dq Li channel +.Cm channel directives. -.It Cm list Cm caps +.It Cm list caps Display the adaptor's capabilities, including the operating modes supported. -.It Cm list Cm chan +.It Cm list chan Display the list of channels available for use. -.Dq Li list freq +.Cm list freq is another way of requesting this information. -.It Cm list Cm mac +.It Cm list mac Display the current MAC Access Control List state. Each address is prefixed with a character that indicates the current policy applied to it: -.Dq Li + +.Ql + indicates the address is allowed access, -.Dq Li - +.Ql - indicates the address is denied access, -.Dq Li * +.Ql * indicates the address is present but the current policy open -(so the acl is not consulted). -.It Cm list Cm scan +(so the ACL is not consulted). +.It Cm list scan Display the access points and/or ad-hoc neighbors located in the vicinity. This information may be updated automatically by the adaptor and/or with a -.Dq Li scan +.Cm scan request. -.Dq Li list ap +.Cm list ap is another way of requesting this information. -.It Cm list Cm sta +.It Cm list sta When operating as an access point display the stations that are currently associated. When operating in ad-hoc mode display stations identified as neighbors in the IBSS. -.It Cm list Cm wme +.It Cm list wme Display the current parameters to use when operating in WME mode. When WME mode is enabled for an adaptor this information will be displayed with the regular status; this command is mostly useful for examining parameters when WME mode is disabled. See the description of the -.Dq Li wme +.Cm wme directive for information on the various parameters. .It Cm powersave Enable powersave operation. @@ -697,11 +694,10 @@ .Ar technique for protecting OFDM frames in a mixed 11b/11g network. The set of valid techniques is -.Dq Li off , -.Dq Li cts +.Cm off , cts (CTS to self), and -.Dq Li rtscts +.Cm rtscts (RTS/CTS). Technique names are case insensitive. .It Cm pureg @@ -717,11 +713,11 @@ The .Ar mode argument may be one of -.Dq Li device +.Cm device (leave it to the hardware device to decide), -.Dq Li auto +.Cm auto (handle either in the device or the operating system\[em]as appropriate), -.Dq Li manual +.Cm manual (do nothing until explicitly instructed). By default, the device is left to handle this if it is capable; otherwise, the operating system will automatically @@ -740,10 +736,10 @@ Setting .Ar length to -.Dq Li 2346 , -.Dq Li any , +.Li 2346 , +.Cm any , or -.Dq Li - +.Cm - disables transmission of RTS frames. Not all adaptors support setting the RTS threshold. .It Cm ssid Ar ssid @@ -788,7 +784,7 @@ .El .Pp The -.Dq Li list scan +.Cm list scan request can be used to show recent scan results without initiating a new scan. .It Cm stationname Ar name @@ -813,21 +809,20 @@ Set the desired WEP mode. Not all adaptors support all modes. The set of valid modes is -.Dq Li off , -.Dq Li on , +.Cm off , on , and -.Dq Li mixed . +.Cm mixed . The -.Dq Li mixed +.Cm mixed mode explicitly tells the adaptor to allow association with access points which allow both encrypted and unencrypted traffic. On these adaptors, -.Dq Li on +.Cm on means that the access point must only allow encrypted connections. On other adaptors, -.Dq Li on +.Cm on is generally another name for -.Dq Li mixed . +.Cm mixed . Modes are case insensitive. .It Cm weptxkey Ar index Set the WEP key to be used for transmission. @@ -871,22 +866,30 @@ (at the station). The following Access Categories are recognized: .Pp -.Bl -tag -width AC_BK -compact +.Bl -tag -width ".Cm AC_BK" -compact .It Cm AC_BE -(or BE) best effort delivery, +(or +.Cm BE ) +best effort delivery, .It Cm AC_BK -(or BK) background traffic, +(or +.Cm BK ) +background traffic, .It Cm AC_VI -(or VI) video traffic, +(or +.Cm VI ) +video traffic, .It Cm AC_VO -(or VO) voice traffic. +(or +.Cm VO ) +voice traffic. .El .Pp AC parameters are case-insensitive. Traffic classification is done in the operating system using the vlan priority associated with data frames or the ToS (Type of Service) indication in IP-encapsulated frames. -If neither information is present traffic is assigned to the +If neither information is present, traffic is assigned to the Best Effort (BE) category. .Bl -tag -width indent .It Cm ack Ar ac ==== //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#49 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sbin/ifconfig/ifieee80211.c,v 1.26 2005/09/29 13:09:04 ru Exp $ + * $FreeBSD: src/sbin/ifconfig/ifieee80211.c,v 1.28 2005/10/30 16:31:05 brooks Exp $ */ /*- @@ -110,7 +110,7 @@ { int ssid; int len; - u_int8_t data[33]; + u_int8_t data[IEEE80211_NWID_LEN]; ssid = 0; len = strlen(val); @@ -121,7 +121,8 @@ bzero(data, sizeof(data)); len = sizeof(data); - get_string(val, NULL, data, &len); + if (get_string(val, NULL, data, &len) == NULL) + exit(1); set80211(s, IEEE80211_IOC_SSID, ssid, len, data); } @@ -322,6 +323,8 @@ bzero(data, sizeof(data)); len = sizeof(data); val = get_string(val, ",", data, &len); + if (val == NULL) + exit(1); set80211(s, IEEE80211_IOC_WEPKEY, i, len, data); } From owner-p4-projects@FreeBSD.ORG Wed Nov 23 00:53:04 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C4BC16A421; Wed, 23 Nov 2005 00:53:04 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 D24EC16A420 for ; Wed, 23 Nov 2005 00:53:03 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E7DB743D5F for ; Wed, 23 Nov 2005 00:52:52 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAN0qoO9002274 for ; Wed, 23 Nov 2005 00:52:50 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAN0qoG7002271 for perforce@freebsd.org; Wed, 23 Nov 2005 00:52:50 GMT (envelope-from sam@freebsd.org) Date: Wed, 23 Nov 2005 00:52:50 GMT Message-Id: <200511230052.jAN0qoG7002271@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87099 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 00:53:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=87099 Change 87099 by sam@sam_ebb on 2005/11/23 00:52:14 o noise floor changes o ibss mode fix o turbo mode fixups Affected files ... .. //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#50 edit .. //depot/projects/wifi/sys/dev/ath/if_ath.c#111 edit .. //depot/projects/wifi/sys/dev/ath/if_athioctl.h#11 edit .. //depot/projects/wifi/sys/dev/ath/if_athvar.h#46 edit .. //depot/projects/wifi/sys/dev/ipw/if_ipw.c#8 edit .. //depot/projects/wifi/sys/dev/iwi/if_iwi.c#10 edit .. //depot/projects/wifi/sys/net80211/_ieee80211.h#9 edit .. //depot/projects/wifi/sys/net80211/ieee80211.c#30 edit .. //depot/projects/wifi/sys/net80211/ieee80211_input.c#64 edit .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#49 edit .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.h#31 edit .. //depot/projects/wifi/sys/net80211/ieee80211_node.c#66 edit .. //depot/projects/wifi/sys/net80211/ieee80211_node.h#34 edit .. //depot/projects/wifi/sys/net80211/ieee80211_proto.h#24 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan.c#5 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan.h#3 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan_ap.c#3 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan_sta.c#4 edit .. //depot/projects/wifi/sys/net80211/ieee80211_var.h#37 edit Differences ... ==== //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#50 (text+ko) ==== @@ -927,12 +927,12 @@ if (len < sizeof(struct ieee80211req_scan_result)) return; - printf("%-14.14s %-17.17s %4s %4s %-5s %3s %4s\n" + printf("%-14.14s %-17.17s %4s %4s %-8s %3s %4s\n" , "SSID" , "BSSID" , "CHAN" , "RATE" - , "S:N" + , " S:N" , "INT" , "CAPS" ); @@ -943,13 +943,13 @@ sr = (struct ieee80211req_scan_result *) cp; vp = (u_int8_t *)(sr+1); - printf("%-14.*s %s %3d %3dM %2d:%-2d %3d %-4.4s" + printf("%-14.*s %s %3d %3dM %3d:%-3d %3d %-4.4s" , copy_essid(ssid, sizeof(ssid), vp, sr->isr_ssid_len) , ssid , ether_ntoa((const struct ether_addr *) sr->isr_bssid) , ieee80211_mhz2ieee(sr->isr_freq) , getmaxrate(sr->isr_rates, sr->isr_nrates) - , sr->isr_rssi, sr->isr_noise + , sr->isr_rssi+sr->isr_noise, sr->isr_noise , sr->isr_intval , getcaps(sr->isr_capinfo) ); ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#111 (text+ko) ==== @@ -87,6 +87,10 @@ #include #include /* XXX for softled */ +#ifdef ATH_TX99_DIAG +#include +#endif + /* unaligned little endian access */ #define LE_READ_2(p) \ ((u_int16_t) \ @@ -138,11 +142,13 @@ static void ath_desc_free(struct ath_softc *); static struct ieee80211_node *ath_node_alloc(struct ieee80211_node_table *); static void ath_node_free(struct ieee80211_node *); -static u_int8_t ath_node_getrssi(const struct ieee80211_node *); +static int8_t ath_node_getrssi(const struct ieee80211_node *); +static void ath_node_getsignal(const struct ieee80211_node *, + int8_t *, int8_t *); static int ath_rxbuf_init(struct ath_softc *, struct ath_buf *); static void ath_recv_mgmt(struct ieee80211com *ic, struct mbuf *m, struct ieee80211_node *ni, - int subtype, int rssi, u_int32_t rstamp); + int subtype, int rssi, int noise, u_int32_t rstamp); static void ath_setdefantenna(struct ath_softc *, u_int); static void ath_rx_proc(void *, int); static struct ath_txq *ath_txq_setup(struct ath_softc*, int qtype, int subtype); @@ -356,6 +362,7 @@ ath_rate_setup(sc, IEEE80211_MODE_11G); ath_rate_setup(sc, IEEE80211_MODE_TURBO_A); ath_rate_setup(sc, IEEE80211_MODE_TURBO_G); + ath_rate_setup(sc, IEEE80211_MODE_STURBO_A); ath_setup_subrates(sc); /* half/quarter rates */ /* NB: setup here so ath_rate_update is happy */ ath_setcurmode(sc, IEEE80211_MODE_11A); @@ -579,6 +586,7 @@ sc->sc_node_free = ic->ic_node_free; ic->ic_node_free = ath_node_free; ic->ic_node_getrssi = ath_node_getrssi; + ic->ic_node_getsignal = ath_node_getsignal; sc->sc_recv_mgmt = ic->ic_recv_mgmt; ic->ic_recv_mgmt = ath_recv_mgmt; sc->sc_newstate = ic->ic_newstate; @@ -641,6 +649,10 @@ * Other than that, it's straightforward... */ ieee80211_ifdetach(&sc->sc_ic); +#ifdef ATH_TX99_DIAG + if (sc->sc_tx99 != NULL) + sc->sc_tx99->detach(sc->sc_tx99); +#endif taskqueue_free(sc->sc_tq); ath_rate_detach(sc->sc_rc); ath_desc_free(sc); @@ -849,7 +861,8 @@ CHANNEL_PUREG, /* IEEE80211_MODE_11G */ 0, /* IEEE80211_MODE_FH */ CHANNEL_108A, /* IEEE80211_MODE_TURBO_A */ - CHANNEL_108G /* IEEE80211_MODE_TURBO_G */ + CHANNEL_108G, /* IEEE80211_MODE_TURBO_G */ + CHANNEL_ST /* IEEE80211_MODE_STURBO_A */ }; enum ieee80211_phymode mode = ieee80211_chan2mode(chan); int flags; @@ -947,6 +960,11 @@ * immediately call back to us to send mgmt frames. */ ath_chan_change(sc, ic->ic_curchan); +#ifdef ATH_TX99_DIAG + if (sc->sc_tx99 != NULL) + sc->sc_tx99->start(sc->sc_tx99); + else +#endif if (ic->ic_opmode != IEEE80211_M_MONITOR) { if (ic->ic_roaming != IEEE80211_ROAMING_MANUAL) ieee80211_new_state(ic, IEEE80211_S_SCAN, -1); @@ -2931,27 +2949,41 @@ sc->sc_node_free(ni); } -static u_int8_t +static int8_t ath_node_getrssi(const struct ieee80211_node *ni) { #define HAL_EP_RND(x, mul) \ ((((x)%(mul)) >= ((mul)/2)) ? ((x) + ((mul) - 1)) / (mul) : (x)/(mul)) u_int32_t avgrssi = ATH_NODE_CONST(ni)->an_avgrssi; - int32_t rssi; /* * When only one frame is received there will be no state in * avgrssi so fallback on the value recorded by the 802.11 layer. */ if (avgrssi != ATH_RSSI_DUMMY_MARKER) - rssi = HAL_EP_RND(avgrssi, HAL_RSSI_EP_MULTIPLIER); + return HAL_EP_RND(avgrssi, HAL_RSSI_EP_MULTIPLIER); else - rssi = ni->ni_rssi; - /* NB: theoretically we shouldn't need this, but be paranoid */ - return rssi < 0 ? 0 : rssi > 127 ? 127 : rssi; + return ni->ni_rssi; #undef HAL_EP_RND } +static void +ath_node_getsignal(const struct ieee80211_node *ni, int8_t *rssi, int8_t *noise) +{ + struct ieee80211com *ic = ni->ni_ic; + struct ath_softc *sc = ic->ic_ifp->if_softc; + struct ath_hal *ah = sc->sc_ah; + HAL_CHANNEL hchan; + + *rssi = ath_node_getrssi(ni); + if (ni->ni_chan != IEEE80211_CHAN_ANYC) { + hchan.channel = ni->ni_chan->ic_freq; + hchan.channelFlags = ath_chan2flags(ni->ni_chan); + *noise = ath_hal_getchannoise(ah, &hchan); + } else + *noise = -95; /* nominally correct */ +} + static int ath_rxbuf_init(struct ath_softc *sc, struct ath_buf *bf) { @@ -3013,7 +3045,7 @@ ds = bf->bf_desc; ds->ds_link = bf->bf_daddr; /* link to self */ ds->ds_data = bf->bf_segs[0].ds_addr; - ds->ds_vdata = mtod(m, void *);/*XXX*/ + ds->ds_vdata = mtod(m, void *); /* for radar */ ath_hal_setuprxdesc(ah, ds , m->m_len /* buffer size */ , 0 @@ -3047,7 +3079,7 @@ static void ath_recv_mgmt(struct ieee80211com *ic, struct mbuf *m, struct ieee80211_node *ni, - int subtype, int rssi, u_int32_t rstamp) + int subtype, int rssi, int noise, u_int32_t rstamp) { struct ath_softc *sc = ic->ic_ifp->if_softc; @@ -3055,7 +3087,7 @@ * Call up first so subsequent work can use information * potentially stored in the node (e.g. for ibss merge). */ - sc->sc_recv_mgmt(ic, m, ni, subtype, rssi, rstamp); + sc->sc_recv_mgmt(ic, m, ni, subtype, rssi, noise, rstamp); switch (subtype) { case IEEE80211_FC0_SUBTYPE_BEACON: /* update rssi statistics for use by the hal */ @@ -3126,7 +3158,7 @@ struct mbuf *m; struct ieee80211_node *ni; struct ath_node *an; - int len, type, ngood; + int len, type, ngood, noise; u_int phyerr; HAL_STATUS status; @@ -3134,6 +3166,7 @@ DPRINTF(sc, ATH_DEBUG_RX_PROC, "%s: pending %u\n", __func__, npending); ngood = 0; + noise = ath_hal_getchannoise(ah, &sc->sc_curchan); do { bf = STAILQ_FIRST(&sc->sc_rxbuf); if (bf == NULL) { /* NB: shouldn't happen */ @@ -3290,6 +3323,7 @@ if (sc->sc_drvbpf) { u_int8_t rix; + int16_t nf; /* * Discard anything shorter than an ack or cts. @@ -3305,8 +3339,10 @@ rix = ds->ds_rxstat.rs_rate; sc->sc_rx_th.wr_flags = sc->sc_hwmap[rix].rxflags; sc->sc_rx_th.wr_rate = sc->sc_hwmap[rix].ieeerate; - sc->sc_rx_th.wr_antsignal = ds->ds_rxstat.rs_rssi; sc->sc_rx_th.wr_antenna = ds->ds_rxstat.rs_antenna; + nf = ath_hal_getchannoise(ah, &sc->sc_curchan); + sc->sc_rx_th.wr_antsignal = ds->ds_rxstat.rs_rssi + nf; + sc->sc_rx_th.wr_antnoise = nf; /* XXX TSF */ bpf_mtap2(sc->sc_drvbpf, @@ -3352,7 +3388,7 @@ * Send frame up for processing. */ type = ieee80211_input(ic, m, ni, - ds->ds_rxstat.rs_rssi, ds->ds_rxstat.rs_tstamp); + ds->ds_rxstat.rs_rssi, noise, ds->ds_rxstat.rs_tstamp); ieee80211_free_node(ni); if (sc->sc_diversity) { /* @@ -4624,9 +4660,10 @@ ath_draintxq(sc); /* clear pending tx frames */ ath_stoprecv(sc); /* turn off frame recv */ if (!ath_hal_reset(ah, ic->ic_opmode, &hchan, AH_TRUE, &status)) { - if_printf(ic->ic_ifp, "ath_chan_set: unable to reset " - "channel %u (%u Mhz)\n", - ieee80211_chan2ieee(ic, chan), chan->ic_freq); + if_printf(ic->ic_ifp, "%s: unable to reset " + "channel %u (%u Mhz, flags 0x%x hal flags 0x%x)\n", + __func__, ieee80211_chan2ieee(ic, chan), + chan->ic_freq, chan->ic_flags, hchan.channelFlags); return EIO; } sc->sc_curchan = hchan; @@ -4687,6 +4724,7 @@ __func__, sc->sc_curchan.channel); sc->sc_stats.ast_per_calfail++; } + ath_hal_process_noisefloor(ah); /* * Poll more frequently when the IQ calibration is in * progress to speedup loading the final settings. @@ -4746,6 +4784,8 @@ ath_hal_setrxfilter(ah, rfilt); ath_hal_setassocid(ah, sc->sc_curbssid, sc->sc_curaid); + ath_hal_process_noisefloor(ah); + DPRINTF(sc, ATH_DEBUG_STATE, "%s: RX filter 0x%x bssid %s aid 0x%x\n", __func__, rfilt, ether_sprintf(sc->sc_curbssid), sc->sc_curaid); @@ -5126,11 +5166,14 @@ rt = ath_hal_getratetable(ah, HAL_MODE_11G); break; case IEEE80211_MODE_TURBO_A: - rt = ath_hal_getratetable(ah, HAL_MODE_TURBO); + rt = ath_hal_getratetable(ah, HAL_MODE_108A); break; case IEEE80211_MODE_TURBO_G: rt = ath_hal_getratetable(ah, HAL_MODE_108G); break; + case IEEE80211_MODE_STURBO_A: + rt = ath_hal_getratetable(ah, HAL_MODE_TURBO); + break; default: DPRINTF(sc, ATH_DEBUG_ANY, "%s: invalid mode %u\n", __func__, mode); @@ -5398,7 +5441,8 @@ /* NB: embed these numbers to get a consistent view */ sc->sc_stats.ast_tx_packets = ifp->if_opackets; sc->sc_stats.ast_rx_packets = ifp->if_ipackets; - sc->sc_stats.ast_rx_rssi = ieee80211_getrssi(ic); + ieee80211_getsignal(ic, &sc->sc_stats.ast_rx_rssi, + &sc->sc_stats.ast_rx_noise); ATH_UNLOCK(sc); /* * NB: Drop the softc lock in case of a page fault; @@ -5589,6 +5633,49 @@ return !ath_hal_setrfsilent(sc->sc_ah, rfsilent) ? EINVAL : 0; } +static int +ath_sysctl_regdomain(SYSCTL_HANDLER_ARGS) +{ + struct ath_softc *sc = arg1; + u_int32_t rd; + int error; + + if (!ath_hal_getregdomain(sc->sc_ah, &rd)) + return EINVAL; + error = sysctl_handle_int(oidp, &rd, 0, req); + if (error || !req->newptr) + return error; + return !ath_hal_setregdomain(sc->sc_ah, rd) ? EINVAL : 0; +} + +static int +ath_sysctl_tpack(SYSCTL_HANDLER_ARGS) +{ + struct ath_softc *sc = arg1; + u_int32_t tpack; + int error; + + ath_hal_gettpack(sc->sc_ah, &tpack); + error = sysctl_handle_int(oidp, &tpack, 0, req); + if (error || !req->newptr) + return error; + return !ath_hal_settpack(sc->sc_ah, tpack) ? EINVAL : 0; +} + +static int +ath_sysctl_tpcts(SYSCTL_HANDLER_ARGS) +{ + struct ath_softc *sc = arg1; + u_int32_t tpcts; + int error; + + ath_hal_gettpcts(sc->sc_ah, &tpcts); + error = sysctl_handle_int(oidp, &tpcts, 0, req); + if (error || !req->newptr) + return error; + return !ath_hal_settpcts(sc->sc_ah, tpcts) ? EINVAL : 0; +} + static void ath_sysctlattach(struct ath_softc *sc) { @@ -5600,10 +5687,9 @@ SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "countrycode", CTLFLAG_RD, &sc->sc_countrycode, 0, "EEPROM country code"); - ath_hal_getregdomain(sc->sc_ah, &sc->sc_regdomain); - SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, - "regdomain", CTLFLAG_RD, &sc->sc_regdomain, 0, - "EEPROM regdomain code"); + SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "regdomain", CTLTYPE_INT | CTLFLAG_RW, sc, 0, + ath_sysctl_regdomain, "I", "EEPROM regdomain code"); sc->sc_debug = ath_debug; SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "debug", CTLFLAG_RW, &sc->sc_debug, 0, @@ -5650,10 +5736,17 @@ SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "tpscale", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ath_sysctl_tpscale, "I", "tx power scaling"); - if (ath_hal_hastpc(ah)) + if (ath_hal_hastpc(ah)) { SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "tpc", CTLTYPE_INT | CTLFLAG_RW, sc, 0, ath_sysctl_tpc, "I", "enable/disable per-packet TPC"); + SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "tpack", CTLTYPE_INT | CTLFLAG_RW, sc, 0, + ath_sysctl_tpack, "I", "tx power for ack frames"); + SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "tpcts", CTLTYPE_INT | CTLFLAG_RW, sc, 0, + ath_sysctl_tpcts, "I", "tx power for cts frames"); + } if (ath_hal_hasfastframes(sc->sc_ah)) { sc->sc_fftxqmin = ATH_FF_TXQMIN; SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, ==== //depot/projects/wifi/sys/dev/ath/if_athioctl.h#11 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athioctl.h,v 1.11 2005/11/15 05:49:02 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athioctl.h,v 1.10 2005/03/30 20:13:08 sam Exp $ */ /* @@ -76,8 +76,8 @@ u_int32_t ast_tx_shortpre;/* tx frames with short preamble */ u_int32_t ast_tx_altrate; /* tx frames with alternate rate */ u_int32_t ast_tx_protect; /* tx frames with protection */ - u_int32_t ast_unused1; - u_int32_t ast_unused2; + u_int32_t ast_tx_ctsburst;/* tx frames with cts and bursting */ + u_int32_t ast_tx_ctsext; /* tx frames with cts extension */ u_int32_t ast_rx_nombuf; /* rx setup failed 'cuz no mbuf */ u_int32_t ast_rx_busdma; /* rx setup failed for dma resrcs */ u_int32_t ast_rx_orn; /* rx failed 'cuz of desc overrun */ @@ -111,7 +111,8 @@ u_int32_t ast_ff_rx; /* fast frames rx'd */ u_int32_t ast_ff_flush; /* fast frames flushed from staging q */ u_int32_t ast_tx_qfull; /* tx dropped 'cuz of queue limit */ - u_int32_t ast_pad[32]; + int8_t ast_rx_noise; /* rx noise floor */ + u_int32_t ast_pad[31]; }; #define SIOCGATHSTATS _IOWR('i', 137, struct ifreq) @@ -139,7 +140,8 @@ (1 << IEEE80211_RADIOTAP_RATE) | \ (1 << IEEE80211_RADIOTAP_CHANNEL) | \ (1 << IEEE80211_RADIOTAP_ANTENNA) | \ - (1 << IEEE80211_RADIOTAP_DB_ANTSIGNAL) | \ + (1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL) | \ + (1 << IEEE80211_RADIOTAP_DBM_ANTNOISE) | \ 0) struct ath_rx_radiotap_header { @@ -148,8 +150,9 @@ u_int8_t wr_rate; u_int16_t wr_chan_freq; u_int16_t wr_chan_flags; + u_int8_t wr_antsignal; + u_int8_t wr_antnoise; u_int8_t wr_antenna; - u_int8_t wr_antsignal; }; #define ATH_TX_RADIOTAP_PRESENT ( \ ==== //depot/projects/wifi/sys/dev/ath/if_athvar.h#46 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.30 2005/11/15 05:49:02 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.28 2005/07/24 05:11:39 sam Exp $ */ /* @@ -50,7 +50,7 @@ #define ATH_TIMEOUT 1000 #define ATH_RXBUF 40 /* number of RX buffers */ -#define ATH_TXBUF 100 /* number of TX buffers */ +#define ATH_TXBUF 200 /* number of TX buffers */ #define ATH_TXDESC 10 /* number of descriptors per buffer */ #define ATH_TXMAXTRY 11 /* max number of transmit attempts */ #define ATH_TXMGTTRY 4 /* xmit attempts for mgt/ctl frames */ @@ -180,13 +180,12 @@ struct ifnet *sc_ifp; /* interface common */ struct ath_stats sc_stats; /* interface statistics */ struct ieee80211com sc_ic; /* IEEE 802.11 common */ - int sc_regdomain; int sc_countrycode; int sc_debug; void (*sc_recv_mgmt)(struct ieee80211com *, struct mbuf *, struct ieee80211_node *, - int, int, u_int32_t); + int, int, int, u_int32_t); int (*sc_newstate)(struct ieee80211com *, enum ieee80211_state, int); void (*sc_node_free)(struct ieee80211_node *); @@ -199,6 +198,7 @@ struct proc *sc_tqproc; /* thread handling sc_tq */ struct ath_hal *sc_ah; /* Atheros HAL */ struct ath_ratectrl *sc_rc; /* tx rate control support */ + struct ath_tx99 *sc_tx99; /* tx99 adjunct state */ void (*sc_setdefantenna)(struct ath_softc *, u_int); unsigned int sc_invalid : 1, /* disable hardware accesses */ sc_mrretry : 1, /* multi-rate retry support */ @@ -466,7 +466,9 @@ #define ath_hal_ciphersupported(_ah, _cipher) \ (ath_hal_getcapability(_ah, HAL_CAP_CIPHER, _cipher, NULL) == HAL_OK) #define ath_hal_getregdomain(_ah, _prd) \ - ath_hal_getcapability(_ah, HAL_CAP_REG_DMN, 0, (_prd)) + (ath_hal_getcapability(_ah, HAL_CAP_REG_DMN, 0, (_prd)) == HAL_OK) +#define ath_hal_setregdomain(_ah, _rd) \ + ((*(_ah)->ah_setRegulatoryDomain)((_ah), (_rd), NULL)) #define ath_hal_getcountrycode(_ah, _pcc) \ (*(_pcc) = (_ah)->ah_countryCode) #define ath_hal_tkipsplit(_ah) \ @@ -527,6 +529,16 @@ (ath_hal_getcapability(_ah, HAL_CAP_RFSILENT, 2, _prfsilent) == HAL_OK) #define ath_hal_setrfsilent(_ah, _rfsilent) \ ath_hal_setcapability(_ah, HAL_CAP_RFSILENT, 2, _rfsilent, NULL) +#define ath_hal_gettpack(_ah, _ptpack) \ + (ath_hal_getcapability(_ah, HAL_CAP_TPC_ACK, 0, _ptpack) == HAL_OK) +#define ath_hal_settpack(_ah, _tpack) \ + ath_hal_setcapability(_ah, HAL_CAP_TPC_ACK, 0, _tpack, NULL) +#define ath_hal_gettpcts(_ah, _ptpcts) \ + (ath_hal_getcapability(_ah, HAL_CAP_TPC_CTS, 0, _ptpcts) == HAL_OK) +#define ath_hal_settpcts(_ah, _tpcts) \ + ath_hal_setcapability(_ah, HAL_CAP_TPC_CTS, 0, _tpcts, NULL) +#define ath_hal_getchannoise(_ah, _c) \ + ((*(_ah)->ah_getChanNoise)((_ah), (_c))) #define ath_hal_setuprxdesc(_ah, _ds, _size, _intreq) \ ((*(_ah)->ah_setupRxDesc)((_ah), (_ds), (_size), (_intreq))) ==== //depot/projects/wifi/sys/dev/ipw/if_ipw.c#8 (text+ko) ==== @@ -1052,7 +1052,7 @@ ni = ieee80211_find_rxnode(ic, (struct ieee80211_frame_min *)wh); /* send the frame to the 802.11 layer */ - ieee80211_input(ic, m, ni, status->rssi, 0); + ieee80211_input(ic, m, ni, status->rssi, -95/*XXX*/, 0); /* node is no longer needed */ ieee80211_free_node(ni); ==== //depot/projects/wifi/sys/dev/iwi/if_iwi.c#10 (text+ko) ==== @@ -1203,7 +1203,7 @@ ni = ieee80211_find_rxnode(ic, (struct ieee80211_frame_min *)wh); /* send the frame to the 802.11 layer */ - ieee80211_input(ic, m, ni, frame->rssi_dbm, 0); + ieee80211_input(ic, m, ni, frame->rssi_dbm, frame->noise, 0); /* node is no longer needed */ ieee80211_free_node(ni); @@ -2230,7 +2230,7 @@ return error; /* if we have a desired ESSID, set it now */ - if (ic->ic_des_esslen != 0) { + if (ic->ic_des_ssid[0].len != 0) { #ifdef IWI_DEBUG if (iwi_debug > 0) { printf("Setting desired ESSID to "); @@ -2239,8 +2239,8 @@ printf("\n"); } #endif - error = iwi_cmd(sc, IWI_CMD_SET_ESSID, ic->ic_des_essid, - ic->ic_des_esslen, 0); + error = iwi_cmd(sc, IWI_CMD_SET_ESSID, ic->ic_des_ssid[0].ssid, + ic->ic_des_ssid[0].len, 0); if (error != 0) return error; } @@ -2299,7 +2299,7 @@ memset(&scan, 0, sizeof scan); - if (ic->ic_des_esslen != 0) { + if (ic->ic_des_ssid[0].len != 0) { scan.bdirected = htole16(sc->dwelltime); memset(scan.type, IWI_SCAN_TYPE_BDIRECTED, sizeof scan.type); } else { ==== //depot/projects/wifi/sys/net80211/_ieee80211.h#9 (text+ko) ==== @@ -51,8 +51,9 @@ IEEE80211_MODE_FH = 4, /* 2GHz, GFSK */ IEEE80211_MODE_TURBO_A = 5, /* 5GHz, OFDM, 2x clock */ IEEE80211_MODE_TURBO_G = 6, /* 2GHz, OFDM, 2x clock */ + IEEE80211_MODE_STURBO_A = 7, /* 5GHz, OFDM, 2x clock, static */ }; -#define IEEE80211_MODE_MAX (IEEE80211_MODE_TURBO_G+1) +#define IEEE80211_MODE_MAX (IEEE80211_MODE_STURBO_A+1) enum ieee80211_opmode { IEEE80211_M_STA = 1, /* infrastructure station */ ==== //depot/projects/wifi/sys/net80211/ieee80211.c#30 (text+ko) ==== @@ -59,6 +59,7 @@ "FH", /* IEEE80211_MODE_FH */ "turboA", /* IEEE80211_MODE_TURBO_A */ "turboG", /* IEEE80211_MODE_TURBO_G */ + "sturboA", /* IEEE80211_MODE_STURBO_A */ }; /* list of all instances */ @@ -159,6 +160,8 @@ ic->ic_modecaps |= 1<ic_modecaps |= 1<ic_modecaps |= 1<ic_chan_active, ic->ic_chan_avail, @@ -623,9 +626,12 @@ * XXX does not apply to AUTO */ if (ime->ifm_media & IFM_IEEE80211_TURBO) { - if (newphymode == IEEE80211_MODE_11A) - newphymode = IEEE80211_MODE_TURBO_A; - else if (newphymode == IEEE80211_MODE_11G) + if (newphymode == IEEE80211_MODE_11A) { + if (ic->ic_flags & IEEE80211_F_TURBOP) + newphymode = IEEE80211_MODE_TURBO_A; + else + newphymode = IEEE80211_MODE_STURBO_A; + } else if (newphymode == IEEE80211_MODE_11G) newphymode = IEEE80211_MODE_TURBO_G; else return EINVAL; @@ -821,52 +827,7 @@ int ieee80211_setmode(struct ieee80211com *ic, enum ieee80211_phymode mode) { -#define N(a) (sizeof(a) / sizeof(a[0])) - static const u_int chanflags[] = { - 0, /* IEEE80211_MODE_AUTO */ - IEEE80211_CHAN_A, /* IEEE80211_MODE_11A */ - IEEE80211_CHAN_B, /* IEEE80211_MODE_11B */ - IEEE80211_CHAN_PUREG, /* IEEE80211_MODE_11G */ - IEEE80211_CHAN_FHSS, /* IEEE80211_MODE_FH */ - IEEE80211_CHAN_108A, /* IEEE80211_MODE_TURBO_A */ - IEEE80211_CHAN_108G, /* IEEE80211_MODE_TURBO_G */ - }; - struct ieee80211_channel *c; - u_int modeflags; - int i; - /* - * Calculate the active channel set. - */ - memset(ic->ic_chan_active, 0, sizeof(ic->ic_chan_active)); - KASSERT(mode < N(chanflags), ("Unexpected mode %u", mode)); - modeflags = chanflags[mode]; - for (i = 0; i < ic->ic_nchans; i++) { - c = &ic->ic_channels[i]; - if (mode == IEEE80211_MODE_AUTO) { - /* take anything but pure turbo channels */ - if ((c->ic_flags &~ IEEE80211_CHAN_TURBO) != 0) - setbit(ic->ic_chan_active, c->ic_ieee); - } else { - if ((c->ic_flags & modeflags) == modeflags) - setbit(ic->ic_chan_active, c->ic_ieee); - } - } -#if 0 - /* - * Potentially invalidate the bss channel. - */ - if (ic->ic_bsschan != IEEE80211_CHAN_ANYC && - mode != ieee80211_chan2mode(ic->ic_bsschan)) - ic->ic_bsschan = IEEE80211_CHAN_ANYC; /* invalidate */ - /* - * If the desired channel is set but no longer valid then reset it. - */ - if (ic->ic_des_chan != IEEE80211_CHAN_ANYC && - isclr(ic->ic_chan_active, ieee80211_chan2ieee(ic, ic->ic_des_chan))) - ic->ic_des_chan = IEEE80211_CHAN_ANYC; -#endif - /* * Do mode-specific rate setup. */ if (mode == IEEE80211_MODE_11G) { @@ -888,7 +849,6 @@ ieee80211_wme_initparams(ic); /* reset WME stat */ return 0; -#undef N } /* @@ -900,6 +860,8 @@ if (IEEE80211_IS_CHAN_108G(chan)) return IEEE80211_MODE_TURBO_G; + else if (IEEE80211_IS_CHAN_ST(chan)) + return IEEE80211_MODE_STURBO_A; else if (IEEE80211_IS_CHAN_TURBO(chan)) return IEEE80211_MODE_TURBO_A; else if (IEEE80211_IS_CHAN_A(chan)) @@ -964,6 +926,7 @@ switch (mode) { case IEEE80211_MODE_11A: case IEEE80211_MODE_TURBO_A: + case IEEE80211_MODE_STURBO_A: mask |= IFM_IEEE80211_11A; break; case IEEE80211_MODE_11B: ==== //depot/projects/wifi/sys/net80211/ieee80211_input.c#64 (text+ko) ==== @@ -131,7 +131,7 @@ */ int ieee80211_input(struct ieee80211com *ic, struct mbuf *m, - struct ieee80211_node *ni, int rssi, u_int32_t rstamp) + struct ieee80211_node *ni, int rssi, int noise, u_int32_t rstamp) { #define SEQ_LEQ(a,b) ((int)((a)-(b)) <= 0) #define HAS_SEQ(type) ((type & 0x4) == 0) @@ -234,7 +234,8 @@ * exist. This should probably done after an ACL check. */ if (ni == ic->ic_bss && - ic->ic_opmode != IEEE80211_M_HOSTAP) { + ic->ic_opmode != IEEE80211_M_HOSTAP && + IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_macaddr)) { /* * Fake up a node for this newly * discovered member of the IBSS. @@ -251,6 +252,7 @@ goto out; } ni->ni_rssi = rssi; + ni->ni_noise = noise; ni->ni_rstamp = rstamp; if (HAS_SEQ(type)) { u_int8_t tid; @@ -562,7 +564,7 @@ } if (ic->ic_rawbpf) bpf_mtap(ic->ic_rawbpf, m); - (*ic->ic_recv_mgmt)(ic, m, ni, subtype, rssi, rstamp); + (*ic->ic_recv_mgmt)(ic, m, ni, subtype, rssi, noise, rstamp); m_freem(m); return type; @@ -979,8 +981,8 @@ static void ieee80211_auth_open(struct ieee80211com *ic, struct ieee80211_frame *wh, - struct ieee80211_node *ni, int rssi, u_int32_t rstamp, u_int16_t seq, - u_int16_t status) + struct ieee80211_node *ni, int rssi, int noise, u_int32_t rstamp, + u_int16_t seq, u_int16_t status) { if (ni->ni_authmode == IEEE80211_AUTH_SHARED) { @@ -1108,8 +1110,8 @@ /* XXX TODO: add statistics */ static void ieee80211_auth_shared(struct ieee80211com *ic, struct ieee80211_frame *wh, - u_int8_t *frm, u_int8_t *efrm, struct ieee80211_node *ni, int rssi, - u_int32_t rstamp, u_int16_t seq, u_int16_t status) + u_int8_t *frm, u_int8_t *efrm, struct ieee80211_node *ni, + int rssi, int noise, u_int32_t rstamp, u_int16_t seq, u_int16_t status) { u_int8_t *challenge; int allocbs, estatus; @@ -1219,6 +1221,7 @@ */ ni->ni_flags |= IEEE80211_NODE_AREF; ni->ni_rssi = rssi; + ni->ni_noise = noise; ni->ni_rstamp = rstamp; if (!alloc_challenge(ic, ni)) { /* NB: don't return error so they rexmit */ @@ -1909,7 +1912,7 @@ void ieee80211_recv_mgmt(struct ieee80211com *ic, struct mbuf *m0, struct ieee80211_node *ni, - int subtype, int rssi, u_int32_t rstamp) + int subtype, int rssi, int noise, u_int32_t rstamp) { #define ISPROBE(_st) ((_st) == IEEE80211_FC0_SUBTYPE_PROBE_RESP) #define ISREASSOC(_st) ((_st) == IEEE80211_FC0_SUBTYPE_REASSOC_RESP) @@ -2161,7 +2164,7 @@ */ if (ic->ic_flags & IEEE80211_F_SCAN) ieee80211_add_scan(ic, &scan, wh, - subtype, rssi, rstamp); + subtype, rssi, noise, rstamp); else if (contbgscan(ic) || startbgscan(ic)) ieee80211_bg_scan(ic); return; @@ -2171,7 +2174,7 @@ */ if (ic->ic_flags & IEEE80211_F_SCAN) { ieee80211_add_scan(ic, &scan, wh, - subtype, rssi, rstamp); + subtype, rssi, noise, rstamp); return; } if (scan.capinfo & IEEE80211_CAPINFO_IBSS) { @@ -2180,6 +2183,12 @@ * Create a new entry in the neighbor table. */ ni = ieee80211_add_neighbor(ic, wh, &scan); + } else if (ni->ni_capinfo == 0) { + /* + * Update faked node created on transmit. + * Note this also updates the tsf. + */ + ieee80211_init_neighbor(ni, wh, &scan); } else { /* * Record tsf for potential resync. @@ -2189,6 +2198,7 @@ } if (ni != NULL) { ni->ni_rssi = rssi; + ni->ni_noise = noise; ni->ni_rstamp = rstamp; } } @@ -2245,8 +2255,12 @@ return; } + allocbs = 0; if (ni == ic->ic_bss) { - if (ic->ic_opmode == IEEE80211_M_IBSS) { + if (ic->ic_opmode != IEEE80211_M_IBSS) { + ni = ieee80211_tmp_node(ic, wh->i_addr2); + allocbs = 1; + } else if (!IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_macaddr)) { /* * XXX Cannot tell if the sender is operating * in ibss mode. But we need a new node to @@ -2255,13 +2269,10 @@ */ ni = ieee80211_fakeup_adhoc_node(&ic->ic_sta, wh->i_addr2); - } else - ni = ieee80211_tmp_node(ic, wh->i_addr2); + } if (ni == NULL) return; - allocbs = 1; - } else - allocbs = 0; + } IEEE80211_DPRINTF(ic, IEEE80211_MSG_ASSOC, "[%s] recv probe req\n", ether_sprintf(wh->i_addr2)); ni->ni_rssi = rssi; @@ -2278,8 +2289,11 @@ IEEE80211_SEND_MGMT(ic, ni, IEEE80211_FC0_SUBTYPE_PROBE_RESP, 0); } - if (allocbs && ic->ic_opmode != IEEE80211_M_IBSS) { - /* reclaim immediately */ + if (allocbs) { + /* + * Temporary node created just to send a + * response, reclaim immediately. + */ ieee80211_free_node(ni); } else if (ath != NULL) ieee80211_saveath(ni, ath); @@ -2330,10 +2344,10 @@ } if (algo == IEEE80211_AUTH_ALG_SHARED) ieee80211_auth_shared(ic, wh, frm + 6, efrm, ni, rssi, - rstamp, seq, status); + noise, rstamp, seq, status); else if (algo == IEEE80211_AUTH_ALG_OPEN) - ieee80211_auth_open(ic, wh, ni, rssi, rstamp, seq, - status); + ieee80211_auth_open(ic, wh, ni, rssi, noise, rstamp, + seq, status); else { IEEE80211_DISCARD(ic, IEEE80211_MSG_ANY, wh, "auth", "unsupported alg %d", algo); @@ -2517,6 +2531,7 @@ return; } ni->ni_rssi = rssi; + ni->ni_noise = noise; ni->ni_rstamp = rstamp; ni->ni_intval = lintval; ni->ni_capinfo = capinfo; ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#49 (text+ko) ==== @@ -176,7 +176,7 @@ ieee80211_ioctl_getchanlist(struct ieee80211com *ic, struct ieee80211req *ireq) { - if (sizeof(ic->ic_chan_active) > ireq->i_len) + if (sizeof(ic->ic_chan_active) < ireq->i_len) ireq->i_len = sizeof(ic->ic_chan_active); return copyout(&ic->ic_chan_active, ireq->i_data, ireq->i_len); } @@ -312,6 +312,7 @@ sr->isr_freq = se->se_chan->ic_freq; sr->isr_flags = se->se_chan->ic_flags; sr->isr_rssi = se->se_rssi; + sr->isr_noise = se->se_noise; sr->isr_intval = se->se_intval; sr->isr_capinfo = se->se_capinfo; sr->isr_erp = se->se_erp; @@ -434,7 +435,7 @@ si->isi_flags = ni->ni_chan->ic_flags; si->isi_state = ni->ni_flags; si->isi_authmode = ni->ni_authmode; - si->isi_rssi = ic->ic_node_getrssi(ni); + ic->ic_node_getsignal(ni, &si->isi_rssi, &si->isi_noise); si->isi_capinfo = ni->ni_capinfo; si->isi_erp = ni->ni_erp; IEEE80211_ADDR_COPY(si->isi_macaddr, ni->ni_macaddr); ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.h#31 (text+ko) ==== @@ -308,7 +308,8 @@ u_int16_t isi_flags; /* channel flags */ u_int16_t isi_state; /* state flags */ u_int8_t isi_authmode; /* authentication algorithm */ - u_int8_t isi_rssi; + int8_t isi_rssi; + int8_t isi_noise; u_int8_t isi_capinfo; /* capabilities */ u_int8_t isi_erp; /* ERP element */ u_int8_t isi_macaddr[IEEE80211_ADDR_LEN]; @@ -465,8 +466,8 @@ u_int16_t isr_len; /* length (mult of 4) */ u_int16_t isr_freq; /* MHz */ u_int16_t isr_flags; /* channel flags */ - u_int8_t isr_noise; - u_int8_t isr_rssi; + int8_t isr_noise; + int8_t isr_rssi; u_int8_t isr_intval; /* beacon interval */ u_int8_t isr_capinfo; /* capabilities */ u_int8_t isr_erp; /* ERP element */ ==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#66 (text+ko) ==== @@ -64,7 +64,8 @@ static struct ieee80211_node *node_alloc(struct ieee80211_node_table *); static void node_cleanup(struct ieee80211_node *); static void node_free(struct ieee80211_node *); -static u_int8_t node_getrssi(const struct ieee80211_node *); +static int8_t node_getrssi(const struct ieee80211_node *); +static void node_getsignal(const struct ieee80211_node *, int8_t *, int8_t *); static void ieee80211_setup_node(struct ieee80211_node_table *, struct ieee80211_node *, const u_int8_t *); @@ -86,6 +87,7 @@ ic->ic_node_free = node_free; ic->ic_node_cleanup = node_cleanup; ic->ic_node_getrssi = node_getrssi; + ic->ic_node_getsignal = node_getsignal; /* default station inactivity timer setings */ ic->ic_inact_init = IEEE80211_INACT_INIT; @@ -586,6 +588,7 @@ ni->ni_fhindex = se->se_fhindex; ni->ni_erp = se->se_erp; ni->ni_rssi = se->se_rssi; + ni->ni_noise = se->se_noise; if (se->se_wpa_ie != NULL) ieee80211_saveie(&ni->ni_wpa_ie, se->se_wpa_ie); if (se->se_wme_ie != NULL) @@ -704,13 +707,20 @@ FREE(ni, M_80211_NODE); } -static u_int8_t +static int8_t node_getrssi(const struct ieee80211_node *ni) { return ni->ni_rssi; } static void +node_getsignal(const struct ieee80211_node *ni, int8_t *rssi, int8_t *noise) +{ + *rssi = ni->ni_rssi; + *noise = ni->ni_noise; +} + +static void ieee80211_setup_node(struct ieee80211_node_table *nt, struct ieee80211_node *ni, const u_int8_t *macaddr) { @@ -890,10 +900,32 @@ return ni; } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 23 01:42:54 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D3F5116A421; Wed, 23 Nov 2005 01:42:53 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 A14B216A41F for ; Wed, 23 Nov 2005 01:42:53 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 19F2843D46 for ; Wed, 23 Nov 2005 01:42:53 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAN1grQT005182 for ; Wed, 23 Nov 2005 01:42:53 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAN1gqVK005179 for perforce@freebsd.org; Wed, 23 Nov 2005 01:42:52 GMT (envelope-from imp@freebsd.org) Date: Wed, 23 Nov 2005 01:42:52 GMT Message-Id: <200511230142.jAN1gqVK005179@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 87104 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 01:42:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=87104 Change 87104 by imp@imp_plunger on 2005/11/23 01:42:17 Kill bogomerge Affected files ... .. //depot/projects/arm/src/sys/arm/at91/uart_bus_at91rm92usart.c#2 edit .. //depot/projects/arm/src/sys/arm/at91/uart_cpu_at91rm92usart.c#2 edit .. //depot/projects/arm/src/sys/arm/conf/KB920X#3 edit .. //depot/user/imp/arm/src/sys/Makefile#1 branch .. //depot/user/imp/arm/src/sys/alpha/Makefile#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/api_up1000.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/atomic.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/autoconf.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/busdma_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/busspace.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/clock.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/clock_if.m#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/cpuconf.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/db_disasm.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/db_instruction.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/db_interface.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/db_trace.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_1000a.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_2100_a50.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_2100_a500.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_3000_300.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_3000_500.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_axppci_33.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_eb164.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_eb64plus.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_kn20aa.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_kn300.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_kn8ae.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_st550.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dec_st6600.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/divrem.m4#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/elf_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/exception.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/fp_emulate.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/gdb_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/genassym.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/ieee_float.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/ieee_float.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/in_cksum.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/interrupt.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/locore.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/mem.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/mp_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/pal.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/pmap.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/prom.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/prom_disp.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/promcons.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/sgmap.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/support.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/swtch.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/sys_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/trap.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/uio_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/uma_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/alpha/vm_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/compile/.cvsignore#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/.cvsignore#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/DEFAULTS#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/GENERIC#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/GENERIC.hints#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/MAC#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/Makefile#1 branch .. //depot/user/imp/arm/src/sys/alpha/conf/NOTES#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/_bus.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/_inttypes.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/_limits.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/_stdint.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/_types.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/alpha_cpu.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/asm.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/atomic.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/bootinfo.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/bus.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/bus_dma.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/bwx.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/chipset.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/clock.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/clockvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/cpu.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/cpuconf.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/cpufunc.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/db_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/elf.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/endian.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/exec.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/float.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/floatingpoint.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/fpu.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/frame.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/gdb_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ieee.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ieeefp.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/in_cksum.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/inst.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/intr.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/intrcnt.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ioctl_bt848.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ioctl_meteor.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/kdb.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/limits.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/md_var.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/memdev.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/mutex.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pal.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/param.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pc/bios.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pc/display.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pc/vesa.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pcb.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pcpu.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pmap.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pmc_mdep.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ppireg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/proc.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/profile.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/prom.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/pte.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ptrace.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/reg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/reloc.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/resource.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/rpb.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/runq.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/setjmp.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/sf_buf.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/sgmap.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/sigframe.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/signal.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/smp.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/stdarg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/swiz.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/sysarch.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/timerreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/ucontext.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/varargs.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/include/vmparam.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/isa/isa.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/isa/isa_dma.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/isa/isavar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/isa/mcclock_isa.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/Makefile#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_dummy.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_genassym.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_locore.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_proto.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_syscall.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_sysent.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/linux_sysvec.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/syscalls.conf#1 branch .. //depot/user/imp/arm/src/sys/alpha/linux/syscalls.master#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcbus.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcbusreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcbusvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcmem.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcpcia.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcpciareg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/mcbus/mcpciavar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/Makefile#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/README.mach-traps#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/exec_ecoff.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/imgact_osf1.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_ioctl.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_misc.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_mount.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_proto.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_signal.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_signal.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_syscall.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_sysent.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_sysvec.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/osf1_util.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/syscalls.conf#1 branch .. //depot/user/imp/arm/src/sys/alpha/osf1/syscalls.master#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/alphapci_if.m#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/apecs.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/apecs_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/apecsreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/apecsvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/bwx.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/cia.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/cia_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/ciareg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/ciavar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/irongate.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/irongate_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/irongatereg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/irongatevar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/lca.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/lca_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/lcareg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/lcavar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/pci_eb164_intr.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/pci_eb64plus_intr.s#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/pcibus.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/pcibus.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/swiz.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/t2.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/t2_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/t2reg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/t2var.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/tsunami.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/tsunami_pci.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/tsunamireg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/pci/tsunamivar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/dwlpx.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/dwlpxreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/dwlpxvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/gbus.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/gbusreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/gbusvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/kftxx.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/kftxxreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/kftxxvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/mcclock_tlsb.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/tlsb.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/tlsbcpu.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/tlsbmem.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/tlsbreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/tlsbvar.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/zs_tlsb.c#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/zsreg.h#1 branch .. //depot/user/imp/arm/src/sys/alpha/tlsb/zsvar.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/Makefile#1 branch .. //depot/user/imp/arm/src/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/acpica/madt.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/apic_vector.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/atomic.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/autoconf.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/bios.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/db_interface.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/db_trace.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/exception.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/fpu.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/gdb_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/genassym.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/identcpu.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/initcpu.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/intr_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/io.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/io_apic.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/legacy.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/local_apic.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/locore.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mem.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mp_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mp_watchdog.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mpboot.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mptable.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/mptable_pci.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/nexus.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/pmap.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/prof_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/support.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/trap.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/tsc.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/uio_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/compile/.cvsignore#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/.cvsignore#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/DEFAULTS#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/GENERIC#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/MAC#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/Makefile#1 branch .. //depot/user/imp/arm/src/sys/amd64/conf/NOTES#1 branch .. //depot/user/imp/arm/src/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/ia32/ia32_reg.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/ia32/ia32_sigtramp.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/_bus.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/_inttypes.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/_limits.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/_stdint.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/_types.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/apicreg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/apicvar.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/asm.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/asmacros.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/atomic.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/bus.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/bus_dma.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/clock.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/cpu.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/cpufunc.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/cputypes.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/db_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/elf.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/endian.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/exec.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/float.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/floatingpoint.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/fpu.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/frame.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/gdb_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/ieeefp.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/in_cksum.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/intr_machdep.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/iodev.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/kdb.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/legacyvar.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/limits.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/md_var.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/memdev.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/metadata.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/mp_watchdog.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/mptable.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/mutex.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/param.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pc/bios.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pc/display.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pcb.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pcb_ext.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pcpu.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pmap.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/pmc_mdep.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/ppireg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/proc.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/profile.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/psl.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/ptrace.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/reg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/reloc.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/resource.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/runq.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/segments.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/setjmp.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/sf_buf.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/sigframe.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/signal.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/smp.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/specialreg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/stdarg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/sysarch.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/timerreg.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/trap.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/tss.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/ucontext.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/varargs.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/include/vmparam.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/atpic.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/atpic_vector.S#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/clock.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/elcr.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/icu.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/isa.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/isa.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/isa_dma.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/isa/nmi.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/Makefile#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_dummy.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_genassym.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_ipc64.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_locore.s#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_machdep.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_proto.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_syscall.h#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_sysent.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/linux32_sysvec.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/syscalls.conf#1 branch .. //depot/user/imp/arm/src/sys/amd64/linux32/syscalls.master#1 branch .. //depot/user/imp/arm/src/sys/amd64/pci/pci_bus.c#1 branch .. //depot/user/imp/arm/src/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/user/imp/arm/src/sys/arm/arm/autoconf.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/bcopy_page.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/bcopyinout.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/bcopyinout_xscale.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/blockio.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/bootconfig.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/bus_space_asm_generic.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/busdma_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/copystr.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_arm10.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_arm7tdmi.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_arm8.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_arm9.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_armv4.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_ixp12x0.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_sa1.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_sa11x0.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/cpufunc_asm_xscale.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/db_disasm.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/db_interface.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/db_trace.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/disassem.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/dump_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/elf_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/elf_trampoline.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/exception.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/fiq.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/fiq_subr.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/fusu.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/genassym.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/identcpu.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/in_cksum.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/in_cksum_arm.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/inckern.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/intr.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/irq_dispatch.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/locore.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/mem.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/nexus.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/nexus_io.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/nexus_io_asm.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/pmap.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/setcpsr.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/setstack.s#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/support.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/swtch.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/sys_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/trap.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/uio_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/undefined.c#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/vectors.S#2 delete .. //depot/user/imp/arm/src/sys/arm/arm/vm_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/at91rm92.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/at91rm92reg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/at91rm92timer.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/at91rm92var.h#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/files.at91rm92#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/files.kb920x#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/kb920x_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/std.at91rm92#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/std.kb920x#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/uart_bus_at91rm92usart.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/uart_cpu_at91rm92usart.c#2 delete .. //depot/user/imp/arm/src/sys/arm/at91/uart_dev_at91rm92usart.c#2 delete .. //depot/user/imp/arm/src/sys/arm/compile/.cvsignore#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/.cvsignore#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/IQ31244#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/KB920X#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/SIMICS#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/SKYEYE#2 delete .. //depot/user/imp/arm/src/sys/arm/conf/TS7200#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xx.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xx.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xx_intr.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xx_space.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xxreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ep93xxvar.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/epclk.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/epclkreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/epsocvar.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/eptimer.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/files.ep93xx#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/files.ts7200#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/hints.ep93xx#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/std.ep93xx#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/std.ts7200#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/ts7200_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/tsarmreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/tsarmvar.h#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/uart_bus_ep93xx.c#2 delete .. //depot/user/imp/arm/src/sys/arm/ep93xx/uart_cpu_ep93xx.c#2 delete .. //depot/user/imp/arm/src/sys/arm/include/_bus.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/_inttypes.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/_limits.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/_stdint.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/_types.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/armreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/asm.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/asmacros.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/atomic.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/blockio.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/bootconfig.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/bus.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/bus_dma.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/clock.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/cpu.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/cpuconf.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/cpufunc.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/db_machdep.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/disassem.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/elf.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/endian.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/exec.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/fiq.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/float.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/floatingpoint.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/fp.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/frame.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/ieee.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/ieeefp.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/in_cksum.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/intr.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/katelib.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/kdb.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/limits.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/machdep.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/md_var.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/memdev.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/metadata.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/mutex.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/param.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/pcb.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/pcpu.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/pmap.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/pmc_mdep.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/proc.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/profile.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/psl.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/pte.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/ptrace.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/reg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/reloc.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/resource.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/runq.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/setjmp.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/sf_buf.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/sigframe.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/signal.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/smp.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/stdarg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/swi.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/sysarch.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/trap.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/ucontext.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/undefined.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/utrap.h#2 delete .. //depot/user/imp/arm/src/sys/arm/include/vmparam.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/assabet_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/files.sa11x0#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_dmacreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_gpioreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_io.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_io_asm.S#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_irq.S#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_irqhandler.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_ost.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_ostreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_ppcreg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_reg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/sa11x0_var.h#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/std.sa11x0#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/uart_bus_sa1110.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/uart_cpu_sa1110.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/uart_dev_sa1110.c#2 delete .. //depot/user/imp/arm/src/sys/arm/sa11x0/uart_dev_sa1110.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/files.i80321#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/files.iq31244#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_aau.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_dma.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_intr.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_mcu.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_pci.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_space.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_timer.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321_wdog.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321reg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/i80321var.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/iq31244_7seg.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/iq31244_machdep.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/iq80321.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/iq80321reg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/iq80321var.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/obio.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/obio_space.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/obiovar.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/std.i80321#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/std.iq31244#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/uart_bus_i80321.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/i80321/uart_cpu_i80321.c#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/std.xscale#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/xscalereg.h#2 delete .. //depot/user/imp/arm/src/sys/arm/xscale/xscalevar.h#2 delete .. //depot/user/imp/arm/src/sys/boot/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/README#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/boot1/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/boot1/boot1.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/cdboot/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/cdboot/version#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/common/Makefile.common#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/common/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/common/help.alpha#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/common/ldscript#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/common/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/OSFpal.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/alpha_copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/alpha_module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/bbinfo.h#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/bootinfo.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/common.h#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/delay.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/elf_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/getsecs.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/libalpha.h#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/pal.S#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/prom.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/prom_disp.S#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/prom_swpal.S#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/reboot.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/srmdisk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/srmnet.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/start.S#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/libalpha/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/loader/version#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/netboot/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/alpha/netboot/version#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/include/arcfuncs.h#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/include/arctypes.h#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/include/libarc.h#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/abort.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arcconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arcdisk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arch/alpha/copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arch/alpha/rpb.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arch/alpha/setjmp.S#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/arch/alpha/start.S#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/bootinfo.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/delay.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/elf_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/prom.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/setjmperr.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/lib/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/loader/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/loader/help.alpha#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/loader/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/arc/loader/version#1 branch .. //depot/user/imp/arm/src/sys/boot/common/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/common/bcache.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/boot.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/bootstrap.h#1 branch .. //depot/user/imp/arm/src/sys/boot/common/commands.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/console.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/dev_net.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/dev_net.h#1 branch .. //depot/user/imp/arm/src/sys/boot/common/devopen.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/help.common#1 branch .. //depot/user/imp/arm/src/sys/boot/common/interp.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/interp_backslash.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/interp_forth.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/interp_parse.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/isapnp.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/isapnp.h#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf32.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf32_obj.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf64.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf64_obj.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/load_elf_obj.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/loader.8#1 branch .. //depot/user/imp/arm/src/sys/boot/common/ls.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/merge_help.awk#1 branch .. //depot/user/imp/arm/src/sys/boot/common/misc.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/newvers.sh#1 branch .. //depot/user/imp/arm/src/sys/boot/common/panic.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/pnp.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/pnpdata#1 branch .. //depot/user/imp/arm/src/sys/boot/common/reloc_elf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/reloc_elf32.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/reloc_elf64.c#1 branch .. //depot/user/imp/arm/src/sys/boot/common/ufsread.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/README#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efi.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efiapi.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/eficon.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efidebug.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efidef.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efidevp.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efierr.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efifs.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efilib.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efinet.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efipart.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efiprot.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efiser.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/delay.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/efi/libefi/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/alpha/sysdep.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/alpha/sysdep.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/dict.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/ficl.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/ficl.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/fileaccess.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/float.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/loader.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/math64.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/math64.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/powerpc/sysdep.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/powerpc/sysdep.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/prefix.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/search.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/stack.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/testmain.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/tools.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/unix.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/vm.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ficl/words.c#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/beastie.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/frames.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/loader.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/loader.4th.8#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/loader.conf#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/loader.conf.5#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/loader.rc#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/pnp.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/screen.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/forth/support.4th#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot0/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot0/boot0.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot0/boot0ext.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot0ext/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot0sio/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot2/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot2/boot1.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot2/lib.h#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/boot2/sio.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/btx/btx.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/btxldr/btxldr.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/gatea20.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/pread.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/smbios.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/help.i386#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/loader.rc#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/loader/version#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/mbr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/user/imp/arm/src/sys/boot/i386/pxeldr/pxeldr.S#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/efimd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/ldscript.ia64#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/start.S#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/efi/version#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/bootinfo.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/delay.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/elf_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/exit.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/libski.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/start.S#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ia64/ski/version#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/common/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/user/imp/arm/src/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/io.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/start.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/boot2/table.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/btx/btx.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/btxldr/btxldr.S#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/gatea20.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/loader/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/user/imp/arm/src/sys/boot/pc98/loader/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/ldscript.powerpc#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/start.c#1 branch .. //depot/user/imp/arm/src/sys/boot/powerpc/loader/version#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/Makefile.inc#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/boot1/_start.s#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/main.c#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/user/imp/arm/src/sys/boot/sparc64/loader/version#1 branch .. //depot/user/imp/arm/src/sys/bsm/audit.h#1 branch .. //depot/user/imp/arm/src/sys/bsm/audit_kevents.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam.c#1 branch .. //depot/user/imp/arm/src/sys/cam/cam.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_ccb.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_debug.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_periph.c#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_periph.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_queue.c#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_queue.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_sim.c#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_sim.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_xpt.c#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_xpt.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_xpt_periph.h#1 branch .. //depot/user/imp/arm/src/sys/cam/cam_xpt_sim.h#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 23 06:18:30 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0112716A421; Wed, 23 Nov 2005 06:18:29 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 C4AEB16A41F for ; Wed, 23 Nov 2005 06:18:29 +0000 (GMT) (envelope-from soc-andrew@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 25A1843D5E for ; Wed, 23 Nov 2005 06:18:29 +0000 (GMT) (envelope-from soc-andrew@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAN6ITsj023291 for ; Wed, 23 Nov 2005 06:18:29 GMT (envelope-from soc-andrew@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAN6ISJV023288 for perforce@freebsd.org; Wed, 23 Nov 2005 06:18:28 GMT (envelope-from soc-andrew@freebsd.org) Date: Wed, 23 Nov 2005 06:18:28 GMT Message-Id: <200511230618.jAN6ISJV023288@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to soc-andrew@freebsd.org using -f From: soc-andrew To: Perforce Change Reviews Cc: Subject: PERFORCE change 87114 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 06:18:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=87114 Change 87114 by soc-andrew@soc-andrew_serv on 2005/11/23 06:18:18 Update the BSD Installer Affected files ... .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/install/220_format_disk.lua#3 edit .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/network.lua#4 edit .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/package.lua#4 edit .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/storage.lua#4 edit .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/target_system.lua#5 edit .. //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/target_system_ui.lua#3 edit Differences ... ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/install/220_format_disk.lua#3 (text+ko) ==== @@ -1,12 +1,113 @@ --- $Id: 220_format_disk.lua,v 1.13 2005/10/05 21:29:03 cpressey Exp $ +-- $Id: 220_format_disk.lua,v 1.14 2005/10/12 00:50:12 cpressey Exp $ -- -- Allow the user to format the selected disk, if they so desire. -- +-- +-- Utility function which asks the user what geometry they'd like to use. +-- +local select_geometry = function(step, dd) + local c_cyl, c_head, c_sec = dd:get_geometry() + local geom_msg = _( + "The system is reports that the geometry of %s is\n\n" .. + "%d cylinders, %d heads, %d sectors\n\n", + dd:get_name(), + dd:get_geometry_cyl(), + dd:get_geometry_head(), + dd:get_geometry_sec() + ) + local valid_msg + if dd:is_geometry_bios_friendly() then + valid_msg = _( + "This geometry should enable you to boot from " .. + "this disk. Unless you have a pressing reason " .. + "to do otherwise, it is recommended that you use " .. + "it.\n\n" + ) + else + c_cyl, c_head, c_sec = dd:get_normalized_geometry() + valid_msg = _( + "This geometry will NOT enable you to boot from " .. + "this disk! Unless you have a pressing reason " .. + "to do otherwise, it is recommended that you use " .. + "the following modified geometry:\n\n" .. + "%d cylinders, %d heads, %d sectors\n\n", + c_cyl, c_head, c_sec + ) + end + local end_msg = _( + "If you don't understand what any of this means, just " .. + "select 'Use this Geometry' to continue." + ) + + local response = App.ui:present{ + id = "select_geometry", + name = _("Select Geometry"), + short_desc = geom_msg .. valid_msg .. end_msg, + + fields = { + { + id = "cyl", + name = _("Cylinders"), + short_desc = _("Enter the number of cylinders in this disk's geometry") + }, + { + id = "head", + name = _("Heads"), + short_desc = _("Enter the number of heads in this disk's geometry") + }, + { + id = "sec", + name = _("Sectors"), + short_desc = _("Enter the number of sectors in this disk's geometry") + }, + }, + + datasets = { + { + cyl = tostring(c_cyl), + head = tostring(c_head), + sec = tonumber(c_sec) + } + }, + + actions = { + { + id = "ok", + name = _("Use this Geometry") + }, + { + id = "cancel", + accelerator = "ESC", + name = _("Return to %s", step:get_prev_name()) + } + } + } + + if response.action_id == "ok" then + dd:set_geometry( + tonumber(response.datasets[1].cyl), + tonumber(response.datasets[1].head), + tonumber(response.datasets[1].sec) + ) + return true + else + return false + end +end + +-- +-- Utility function which confirms that the user would like to proceed, +-- and actually executes the formatting commands. +-- local format_disk = function(step, dd) local cmds = CmdChain.new() + if not select_geometry(step, dd) then + return false + end + dd:cmds_format(cmds) local confirm = function() ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/network.lua#4 (text+ko) ==== @@ -1,4 +1,4 @@ --- $Id: network.lua,v 1.21 2005/09/02 22:07:53 cpressey Exp $ +-- $Id: network.lua,v 1.22 2005/11/10 16:38:02 cpressey Exp $ -- Lua abstraction for the Network Interfaces of a system. -- ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/package.lua#4 (text+ko) ==== @@ -93,7 +93,7 @@ -- method.is_archived_on = function(ps, ts) local filename = App.expand( - "${root}${base}usr/ports/packages/All/${name}.${suffix}", + "${root}${base}usr/packages/All/${name}.${suffix}", { base = ts:get_base(), name = name, @@ -119,7 +119,7 @@ if self:is_archived_on(ts) then cmd = App.expand( "${root}${TAR} -O -z -x -f " .. - "${root}usr/ports/packages/All/${pkg_name}.${suffix} " .. + "${root}usr/packages/All/${pkg_name}.${suffix} " .. "+CONTENTS | ${root}${GREP} '^@pkgdep'", { base = ts:get_base(), pkg_name = self:get_name(), @@ -253,7 +253,7 @@ -- if self:is_archived_on(App.state.source) then cmds:add( - "${root}${CP} ${root}usr/ports/packages/All/${pkg_name}.${pkg_suffix} " .. + "${root}${CP} ${root}usr/packages/All/${pkg_name}.${pkg_suffix} " .. "${root}${base}${pkg_tmp}/${pkg_name}.${pkg_suffix}" ) else @@ -485,7 +485,7 @@ -- method.enumerate_archived_on = function(self, ts) self:enumerate_archives_in( - App.expand("${root}${base}usr/ports/packages/All", { + App.expand("${root}${base}usr/packages/All", { base = ts:get_base() }) ) ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/storage.lua#4 (text+ko) ==== @@ -1,4 +1,4 @@ --- $Id: storage.lua,v 1.177 2005/10/05 20:27:40 cpressey Exp $ +-- $Id: storage.lua,v 1.182 2005/10/28 02:48:02 cpressey Exp $ -- Storage Descriptors (a la libinstaller) in Lua. -- @@ -685,6 +685,46 @@ return sec end + method.set_geometry = function(self, c, h, s) + cyl = c or cyl + head = h or head + sec = s or sec + end + + -- + -- Determine whether the geometry of the disk is "BIOS friendly" + -- or not, i.e., whether the C/H/S parameters are within the + -- limits of what is supported by legacy means of reading the + -- disk (int 13h), which are required during e.g. booting. + -- + -- This is needed because sometimes the system reports a + -- geometry for an unformatted disk as having some number of + -- sectors per track, such as 255, that will not permit booting + -- from the BIOS. + -- + -- XXX It is also possible that some systems require the number + -- of heads to be 16 or less, especially if they are set to + -- use "LBA" geometry translation. + -- + method.is_geometry_bios_friendly = function(self) + return sec >= 1 and sec <= 63 + end + + -- + -- Find a "BIOS-friendly" geometry that corresponds to the + -- capacity of this disk, so we can at least boot from it. + -- + method.get_normalized_geometry = function(self) + -- + -- Convert to something that the BIOS can boot from. + -- + local sec = 63 + local head = 255 + local cyl = math.floor(capacity:in_units("S") / (sec * head)) + + return cyl, head, sec + end + -- -- Return the name of the device which handles this disk. -- Note that, on all currently supported operating systems, @@ -907,28 +947,89 @@ end -- - -- Create commands to format (create one big partition on) this disk. + -- Create commands to format this disk. 'Format' in this sense + -- means to create one big partition, and to install a partition + -- table with the appropriate information in it. -- method.cmds_format = function(self, cmds) self:cmds_ensure_dev(cmds) -- - -- Currently you need to pass 'yes' to OpenBSD's fdisk to - -- be able to do these. (XXX this is a shot in the dark) + -- Initialize the disk. + -- + cmds:add("${root}${FDISK} -I " .. + self:get_raw_device_name()) + + -- + -- Under more pleasant conditions, we could just + -- shell 'fdisk -BI' here and be done with it. + -- However, life is not that simple. In order to + -- get fdisk to honour the geometry we have + -- selected, we need to create a fdisk script which + -- tells fdisk exactly the geometry of the disk and + -- the size of the partition we'd like to make. + -- + cmds:add{ + cmdline = "${root}${ECHO} 'g c${cyl} h${head} s${sec}' >${tmp}format.fdisk", + replacements = { + cyl = cyl, + head = head, + sec = sec + } + } + + -- + -- Allot the first partition as taking up the entire disk, + -- assuming the given geometry. This means that the part: + -- * has the default sysid (depends on the operating system); + -- * starts at the first track (after the zero'th track,) + -- * extends to the end of the disk. + -- + cmds:add{ + cmdline = "${root}${ECHO} 'p 1 ${sysid} ${start} ${size}' >>${tmp}format.fdisk", + replacements = { + sysid = App.conf.default_sysid, + start = sec, + size = (cyl * head * sec) - sec + } + } + + -- + -- Mark the other partitions as unused. + -- Mark the first partition as the active one. + -- Send a copy of this script to the log, and make sure + -- the system knows that it should delete it when done. + -- + cmds:add( + "${root}${ECHO} 'p 2 0 0 0' >>${tmp}format.fdisk", + "${root}${ECHO} 'p 3 0 0 0' >>${tmp}format.fdisk", + "${root}${ECHO} 'p 4 0 0 0' >>${tmp}format.fdisk", + "${root}${ECHO} 'a 1' >>${tmp}format.fdisk", + "${root}${CAT} ${tmp}format.fdisk" + ) + App.register_tmpfile("format.fdisk") + + -- + -- Execute the fdisk script. -- - if App.conf.os.name == "OpenBSD" then -- XXXXXX - cmds:add("${root}${ECHO} 'yes\nyes\nyes\n' | " .. - "${root}${FDISK} -I " .. - self:get_raw_device_name()) - cmds:add("${root}${ECHO} 'yes\nyes\nyes\n' | " .. - "${root}${FDISK} -B " .. - self:get_raw_device_name()) + if App.conf.os.name == "NetBSD" then -- XXXXXX + -- XXX Going to need to do this differently else - cmds:add("${root}${FDISK} -I " .. - self:get_raw_device_name()) - cmds:add("${root}${YES} | ${root}${FDISK} -B " .. - self:get_raw_device_name()) + cmds:add("${root}${FDISK} -v -f ${tmp}format.fdisk " .. + self:get_device_name()) end + + -- + -- Show the new state of the disk in the log. + -- + cmds:add("${root}${FDISK} " .. + self:get_device_name()) + + -- + -- Make the disk bootable. + -- + cmds:add("${root}${YES} | ${root}${FDISK} -B " .. + self:get_raw_device_name()) end -- @@ -1107,20 +1208,28 @@ end -- - -- Probe the (BIOS) geometry and the capacity of the disk. - -- Returns true, then the geometry (C, H, S,) then the capacity, - -- if all went well. Returns nil and an error message if not. + -- Probe the (BIOS) geometry of the disk. + -- Returns three values: cylinder, head, and sec/trk, if all went well. + -- Returns nil values if all did not go well. + -- Capacity in sectors can then be calculated by C * H * S, or an error + -- can be flagged, by the caller of this function. + -- -- This is the FreeBSD/DragonFly version of this function. -- local probe_geometry_freebsd = function(self) - local cyl, head, sec, capacity + local cyl, head, sec -- - -- Tell 'fdisk' to pretend to initialize the disk and - -- parse its output, to determine total # of sectors. + -- Tell 'fdisk' to give us the rundown of the disk. + -- Note that this does not use the 'summary' (-s) + -- feature of fdisk, because that feature has markedly + -- different behaviour when the disk is blank or + -- otherwise has an invalid boot sector: it fails + -- immediately. Whereas we need it to provide at least + -- the geometry (even if the part table is ficticious.) -- local cmd = App.expand( - "${root}${FDISK} -t -I " .. self:get_raw_device_name() + "${root}${FDISK} " .. self:get_raw_device_name() ) local pty = Pty.Logged.open(cmd, App.log_string) if not pty then @@ -1128,53 +1237,43 @@ end local line = pty:readline() while line do - local found_size, len, start, size = - string.find(line, "start%s*(%d+)%s*,%s*size%s*(%d+)") - if found_size then - capacity = Storage.Capacity.new( - tonumber(start) + tonumber(size), "S" - ) - end - local found_bios_geom = - string.find(line, "^%s*parameters to be used for BIOS") - line = pty:readline() - if found_bios_geom then + if string.find(line, "^%s*parameters to be used for BIOS") then -- -- Parse the line following. -- + line = pty:readline() found, len, cyl, head, sec = string.find(line, "^%s*cylinders=(%d+)%s*heads=(%d+)%s*" .. "sectors/track=(%d+)") - cyl = tonumber(cyl) - head = tonumber(head) - sec = tonumber(sec) - found_bios_geom = false + if found then + cyl = tonumber(cyl) + head = tonumber(head) + sec = tonumber(sec) + end + line = pty:readline() + else + -- + -- Keep looking... + -- line = pty:readline() end end pty:close() - if not cyl or not head or not sec then - return nil, string.format( - "could not determine geometry of disk '%s'", name - ) - end - if not capacity then - return nil, string.format( - "could not determine capacity of disk '%s'", name - ) - end - return true, cyl, head, sec, capacity + return cyl, head, sec end -- - -- Probe the (BIOS) geometry and the capacity of the disk. - -- Returns true, then the geometry (C, H, S,) then the capacity, - -- if all went well. Returns nil and an error message if not. + -- Probe the (BIOS) geometry of the disk. + -- Returns three values: cylinder, head, and sec/trk, if all went well. + -- Returns nil values if all did not go well. + -- Capacity in sectors can then be calculated by C * H * S, or an error + -- can be flagged, by the caller of this function. + -- -- This is the NetBSD version of this function. -- local probe_geometry_netbsd = function(self) - local cyl, head, sec, capacity + local cyl, head, sec -- -- Call 'fdisk' and parse its output. @@ -1188,13 +1287,6 @@ end local line = pty:readline() while line do - local found_size, len, size = - string.find(line, "^%s*total%s*sectors:%s*(%d+)") - if found_size then - capacity = Storage.Capacity.new( - tonumber(size), "S" - ) - end local found_bios_geom = string.find(line, "^%s*NetBSD%s*disklabel%s*disk%s*geometry") line = pty:readline() @@ -1214,17 +1306,7 @@ end pty:close() - if not cyl or not head or not sec then - return nil, string.format( - "could not determine geometry of disk '%s'", name - ) - end - if not capacity then - return nil, string.format( - "could not determine capacity of disk '%s'", name - ) - end - return true, cyl, head, sec, capacity + return cyl, head, sec end local probe_partitions_freebsd = function(self) @@ -1381,18 +1463,25 @@ local success if App.conf.os.name == "NetBSD" then -- XXXXXX netbsd needs its own subclass here - success, cyl, head, sec, capacity = + cyl, head, sec = probe_geometry_netbsd(self) else - success, cyl, head, sec, capacity = + cyl, head, sec = probe_geometry_freebsd(self) end - if not success then - App.log_warn(cyl) -- 'cyl' is the error message + if not cyl or not head or not sec then + App.log_warn( + "could not determine geometry of disk '%s'", name + ) return false end + -- + -- Calculate disk's capacity from its geometry. + -- + capacity = Storage.Capacity.new(cyl * head * sec, "S") + App.log("Disk " .. name .. " (" .. desc .. "): " .. capacity:format() .. ": " .. cyl .. "/" .. head .. "/" .. sec) ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/target_system.lua#5 (text+ko) ==== @@ -413,9 +413,9 @@ dir = src end cmds:add{ - cmdline = "${root}${TAR} " .. - "-x -C ${root}${base}${dest} -f " .. - "${root}usr/${uname}/${dir}/${src}.${dist_suffix}", + cmdline = "${root}${TAR} -f " .. + "${root}usr/${uname}/${dir}/${src}.${dist_suffix}" .. + "-x -C ${root}${base}${dest}" replacements = { base = base, src = src, ==== //depot/projects/soc2005/bsdinstaller/src/contrib/bsdinstaller/backend/lua/lib/target_system_ui.lua#3 (text+ko) ==== @@ -1,4 +1,4 @@ --- $Id: target_system_ui.lua,v 1.15 2005/08/26 04:25:25 cpressey Exp $ +-- $Id: target_system_ui.lua,v 1.16 2005/10/12 00:43:51 cpressey Exp $ -- -- Copyright (c)2005 Chris Pressey. All rights reserved. @@ -49,579 +49,579 @@ end TargetSystemUI.set_root_password = function(ts) - local done = false - local result - local cmds - local form = { - id = "root_passwd", - name = _("Set Root Password"), - short_desc = _( - "Here you can set the super-user (root) password." - ), - - fields = { - { - id = "root_passwd_1", - name = _("Root Password"), - short_desc = _("Enter the root password you would like to use"), - obscured = "true" - }, - { - id = "root_passwd_2", - name = _("Re-type Root Password"), - short_desc = _("Enter the same password again to confirm"), - obscured = "true" - } - }, - - actions = { - { - id = "ok", - name = _("Accept and Set Password") - }, - { - id = "cancel", - accelerator = "ESC", - name = _("Return to Configure Menu") - } - }, - - datasets = { - { root_passwd_1 = "", root_passwd_2 = "" } - } + local done = false + local result + local cmds + local form = { + id = "root_passwd", + name = _("Set Root Password"), + short_desc = _( + "Here you can set the super-user (root) password." + ), + + fields = { + { + id = "root_passwd_1", + name = _("Root Password"), + short_desc = _("Enter the root password you would like to use"), + obscured = "true" + }, + { + id = "root_passwd_2", + name = _("Re-type Root Password"), + short_desc = _("Enter the same password again to confirm"), + obscured = "true" + } + }, + + actions = { + { + id = "ok", + name = _("Accept and Set Password") + }, + { + id = "cancel", + accelerator = "ESC", + name = _("Return to Configure Menu") } - - while not done do - result = ui:present(form) - - if result.action_id == "ok" then - form.datasets = result.datasets + }, + + datasets = { + { root_passwd_1 = "", root_passwd_2 = "" } + } + } + + while not done do + result = ui:present(form) + + if result.action_id == "ok" then + form.datasets = result.datasets + + -- + -- Fetch form field values. + -- + + local root_passwd_1 = result.datasets[1].root_passwd_1 + local root_passwd_2 = result.datasets[1].root_passwd_2 + -- XXX validate password for bad characters here XXX + + if root_passwd_1 == root_passwd_2 then -- - -- Fetch form field values. + -- Passwords match, so set the root password. -- - - local root_passwd_1 = result.datasets[1].root_passwd_1 - local root_passwd_2 = result.datasets[1].root_passwd_2 - - -- XXX validate password for bad characters here XXX - - if root_passwd_1 == root_passwd_2 then - -- - -- Passwords match, so set the root password. - -- - cmds = CmdChain.new() - ts:cmds_set_password(cmds, - "root", root_passwd_1) - if cmds:execute() then - ui:inform( - _("The root password has been changed.") - ) - done = true - else - ui:inform( - _("An error occurred when " .. - "setting the root password.") - ) - done = false - end + cmds = CmdChain.new() + ts:cmds_set_password(cmds, + "root", root_passwd_1) + if cmds:execute() then + ui:inform( + _("The root password has been changed.") + ) + done = true else - -- - -- Passwords don't match - tell the user, let them try again. - -- ui:inform( - _("The passwords do not match.") + _("An error occurred when " .. + "setting the root password.") ) done = false end else - -- Cancelled - done = true + -- + -- Passwords don't match - tell the user, let them try again. + -- + ui:inform( + _("The passwords do not match.") + ) + done = false end + else + -- Cancelled + done = true end + end end TargetSystemUI.add_user = function(ts) - local done = false - local result - local cmds + local done = false + local result + local cmds - -- - -- Predicates which validate entered data. - -- - local is_gecos_clean = function(gecos) - local i, char + -- + -- Predicates which validate entered data. + -- + local is_gecos_clean = function(gecos) + local i, char - i = 1 - while i <= string.len(gecos) do - char = string.sub(gecos, i, i) - if string.find(char, "%c") or -- no ctrl chars - string.byte(char) == 127 or -- no 'DEL' char - string.find(":!@", char, 1, true) then -- none of these - return false - end - i = i + 1 + i = 1 + while i <= string.len(gecos) do + char = string.sub(gecos, i, i) + if string.find(char, "%c") or -- no ctrl chars + string.byte(char) == 127 or -- no 'DEL' char + string.find(":!@", char, 1, true) then -- none of these + return false end + i = i + 1 + end - return true - end + return true + end - local is_name_clean = function(name) - local i, char + local is_name_clean = function(name) + local i, char - i = 1 - while i <= string.len(name) do - char = string.sub(name, i, i) - if string.find(char, "%c") or -- no ctrl chars - string.byte(char) == 127 or -- no 'DEL' char - string.byte(char) > 127 or -- no 8-bit chars - -- and none of these: - string.find(" ,\t:+&#%^()!@~*?<>=|\\/\"", char, 1, true) or - (char == "-" and i == 1) or -- no '-' at start - -- '$' only at end: - (char == "$" and i ~= string.len(name)) then - return false - end - i = i + 1 + i = 1 + while i <= string.len(name) do + char = string.sub(name, i, i) + if string.find(char, "%c") or -- no ctrl chars + string.byte(char) == 127 or -- no 'DEL' char + string.byte(char) > 127 or -- no 8-bit chars + -- and none of these: + string.find(" ,\t:+&#%^()!@~*?<>=|\\/\"", char, 1, true) or + (char == "-" and i == 1) or -- no '-' at start + -- '$' only at end: + (char == "$" and i ~= string.len(name)) then + return false end + i = i + 1 + end - return true - end + return true + end - local is_filename_clean = function(filename) -- XXX incomplete - return true - end + local is_filename_clean = function(filename) -- XXX incomplete + return true + end - local is_uid_clean = function(uid) -- XXX incomplete - return true - end + local is_uid_clean = function(uid) -- XXX incomplete + return true + end - local is_grouplist_clean = function(grouplist) -- XXX incomplete - return true - end + local is_grouplist_clean = function(grouplist) -- XXX incomplete + return true + end - -- - -- Description of the form to display. - -- - local form = { - id = "add_user", - name = _("Add User"), - short_desc = _("Here you can add a user to an installed system.\n\n" .. - "You can leave the Home Directory, User ID, and Login Group " .. - "fields empty if you want these items to be automatically " .. - "allocated by the system."), - fields = { - { - id = "username", - name = _("Username"), - short_desc = _("Enter the username the user will log in as") - }, - { - id = "gecos", - name = _("Real Name"), - short_desc = _("Enter the real name (or GECOS field) of this user") - }, - { - id = "passwd_1", - name = _("Password"), - short_desc = _("Enter the user's password (will not be displayed)"), - obscured = "true" - }, - { - id = "passwd_2", - name = _("Password (Again)"), - short_desc = _("Re-enter the user's password to confirm"), - obscured = "true" - }, - { - id = "shell", - name = _("Shell"), - short_desc = _("Enter the full path to the user's shell program") - }, - { - id = "home", - name = _("Home Directory"), - short_desc = _("Enter the full path to the user's home directory, or leave blank") - }, - { - id = "uid", - name = _("User ID"), - short_desc = _("Enter this account's numeric user id, or leave blank") - }, - { - id = "group", - name = _("Login Group"), - short_desc = _("Enter the primary group for this account, or leave blank") - }, - { - id = "groups", - name = _("Other Group Memberships"), - short_desc = _( - "Enter a comma-separated list of other groups " .. - "that this user should belong to" - ) - } - }, - actions = { - { - id = "ok", - name = _("Accept and Add User") - }, - { - id = "cancel", - accelerator = "ESC", - name = _("Return to Configure Menu") - } - }, - datasets = { - { - username = "", - gecos = "", - passwd_1 = "", - passwd_2 = "", - shell = "/bin/tcsh", - home = "", - uid = "", - group = "", - groups = "" - } - } + -- + -- Description of the form to display. + -- + local form = { + id = "add_user", + name = _("Add User"), + short_desc = _("Here you can add a user to an installed system.\n\n" .. + "You can leave the Home Directory, User ID, and Login Group " .. + "fields empty if you want these items to be automatically " .. + "allocated by the system."), + fields = { + { + id = "username", + name = _("Username"), + short_desc = _("Enter the username the user will log in as") + }, + { + id = "gecos", + name = _("Real Name"), + short_desc = _("Enter the real name (or GECOS field) of this user") + }, + { + id = "passwd_1", + name = _("Password"), + short_desc = _("Enter the user's password (will not be displayed)"), + obscured = "true" + }, + { + id = "passwd_2", + name = _("Password (Again)"), + short_desc = _("Re-enter the user's password to confirm"), + obscured = "true" + }, + { + id = "shell", + name = _("Shell"), + short_desc = _("Enter the full path to the user's shell program") + }, + { + id = "home", + name = _("Home Directory"), + short_desc = _("Enter the full path to the user's home directory, or leave blank") + }, + { + id = "uid", + name = _("User ID"), + short_desc = _("Enter this account's numeric user id, or leave blank") + }, + { + id = "group", + name = _("Login Group"), + short_desc = _("Enter the primary group for this account, or leave blank") + }, + { + id = "groups", + name = _("Other Group Memberships"), + short_desc = _( + "Enter a comma-separated list of other groups " .. + "that this user should belong to" + ) + } + }, + actions = { + { + id = "ok", + name = _("Accept and Add User") + }, + { + id = "cancel", + accelerator = "ESC", + name = _("Return to Configure Menu") + } + }, + datasets = { + { + username = "", + gecos = "", + passwd_1 = "", + passwd_2 = "", + shell = "/bin/tcsh", + home = "", + uid = "", + group = "", + groups = "" } + } + } + + -- + -- Main loop which repeatedly displays the form until either + -- the user cancels or everything validates. + -- + while not done do + result = ui:present(form) + if result.action_id == "ok" then + form.datasets = result.datasets >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 23 06:20:33 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C214716A421; Wed, 23 Nov 2005 06:20:32 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 8424A16A41F for ; Wed, 23 Nov 2005 06:20:32 +0000 (GMT) (envelope-from soc-andrew@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3007043D45 for ; Wed, 23 Nov 2005 06:20:32 +0000 (GMT) (envelope-from soc-andrew@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAN6KWwt023397 for ; Wed, 23 Nov 2005 06:20:32 GMT (envelope-from soc-andrew@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAN6KVRu023394 for perforce@freebsd.org; Wed, 23 Nov 2005 06:20:31 GMT (envelope-from soc-andrew@freebsd.org) Date: Wed, 23 Nov 2005 06:20:31 GMT Message-Id: <200511230620.jAN6KVRu023394@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to soc-andrew@freebsd.org using -f From: soc-andrew To: Perforce Change Reviews Cc: Subject: PERFORCE change 87115 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 06:20:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=87115 Change 87115 by soc-andrew@soc-andrew_serv on 2005/11/23 06:19:51 IFC Affected files ... .. //depot/projects/soc2005/bsdinstaller/src/Makefile.inc1#4 integrate .. //depot/projects/soc2005/bsdinstaller/src/release/doc/share/misc/dev.archlist.txt#5 integrate Differences ... ==== //depot/projects/soc2005/bsdinstaller/src/Makefile.inc1#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.514 2005/11/03 08:56:39 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.522 2005/11/22 20:47:43 ru Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -237,7 +237,7 @@ LIB32MAKE= ${LIB32MAKEENV} ${MAKE} -DNO_CPU_CFLAGS -DCOMPAT_32BIT \ -DNO_BIND -DNO_MAN -DNO_NLS -DNO_INFO -DNO_HTML -LIB32IMAKE= ${LIB32MAKE:NINSTALL=*} +LIB32IMAKE= ${LIB32MAKE:NINSTALL=*} -DNO_INCS .endif # install stage @@ -252,6 +252,7 @@ # kernel stage KMAKEENV= ${WMAKEENV} +KMAKE= ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} # # buildworld @@ -476,14 +477,28 @@ kernel-toolchain: ${TOOLCHAIN_TGTS:N_includes:N_libraries} # -# Use this to add checks to installworld/installkernel targets. +# installcheck +# +# Checks to be sure system is ready for installworld/installkernel. # -SPECIAL_INSTALLCHECKS= +installcheck: # -# installcheck +# Require DESTDIR to be set if installing for a different architecture. +# +.if ${TARGET_ARCH} != ${MACHINE_ARCH} || ${TARGET} != ${MACHINE} +.if !make(distributeworld) +installcheck: installcheck_DESTDIR +installcheck_DESTDIR: +.if !defined(DESTDIR) || empty(DESTDIR) + @echo "ERROR: Please set DESTDIR!"; \ + false +.endif +.endif +.endif + # -# Checks to be sure system is ready for installworld +# Check for missing UIDs/GIDs. # CHECK_UIDS= CHECK_GIDS= @@ -495,7 +510,8 @@ CHECK_UIDS+= proxy CHECK_GIDS+= proxy authpf .endif -installcheck: ${SPECIAL_INSTALLCHECKS} +installcheck: installcheck_UGID +installcheck_UGID: .for uid in ${CHECK_UIDS} @if ! `id -u ${uid} >/dev/null 2>&1`; then \ echo "ERROR: Required ${uid} user is missing, see /usr/src/UPDATING."; \ @@ -536,7 +552,7 @@ # and do a 'make reinstall' on the *client* to install new binaries from the # most recent server build. # -reinstall: ${SPECIAL_INSTALLCHECKS} +reinstall: @echo "--------------------------------------------------------------" @echo ">>> Making hierarchy" @echo "--------------------------------------------------------------" @@ -638,15 +654,13 @@ @echo "--------------------------------------------------------------" @echo ">>> stage 2.1: cleaning up the object tree" @echo "--------------------------------------------------------------" - cd ${KRNLOBJDIR}/${_kernel}; \ - ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} ${CLEANDIR} + cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} ${CLEANDIR} .endif @echo @echo "--------------------------------------------------------------" @echo ">>> stage 2.2: rebuilding the object tree" @echo "--------------------------------------------------------------" - cd ${KRNLOBJDIR}/${_kernel}; \ - ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} obj + cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} obj @echo @echo "--------------------------------------------------------------" @echo ">>> stage 2.3: build tools" @@ -667,15 +681,13 @@ @echo "--------------------------------------------------------------" @echo ">>> stage 3.1: making dependencies" @echo "--------------------------------------------------------------" - cd ${KRNLOBJDIR}/${_kernel}; \ - ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} depend -DNO_MODULES_OBJ + cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} depend -DNO_MODULES_OBJ .endif @echo @echo "--------------------------------------------------------------" @echo ">>> stage 3.2: building everything" @echo "--------------------------------------------------------------" - cd ${KRNLOBJDIR}/${_kernel}; \ - ${KMAKEENV} ${MAKE} KERNEL=${INSTKERNNAME} all -DNO_MODULES_OBJ + cd ${KRNLOBJDIR}/${_kernel}; ${KMAKE} all -DNO_MODULES_OBJ @echo "--------------------------------------------------------------" @echo ">>> Kernel build for ${_kernel} completed on `LC_ALL=C date`" @echo "--------------------------------------------------------------" @@ -687,7 +699,7 @@ # Install the kernel defined by INSTALLKERNEL # installkernel installkernel.debug \ -reinstallkernel reinstallkernel.debug: ${SPECIAL_INSTALLCHECKS} +reinstallkernel reinstallkernel.debug: installcheck .if empty(INSTALLKERNEL) @echo "ERROR: No kernel \"${KERNCONF}\" to install."; \ false @@ -965,8 +977,8 @@ _generic_libs+= kerberos5/lib .endif -_prebuild_libs+= lib/libcom_err lib/libcrypt lib/libexpat \ - lib/libkvm lib/libmd \ +_prebuild_libs+= lib/libbz2 lib/libcom_err lib/libcrypt lib/libexpat \ + lib/libipx lib/libkiconv lib/libkvm lib/libmd \ lib/libncurses lib/libnetgraph lib/libopie lib/libpam \ lib/libradius \ lib/libsbuf lib/libtacplus lib/libutil \ @@ -979,8 +991,7 @@ .if !defined(NO_CRYPT) .if !defined(NO_OPENSSL) _prebuild_libs+= secure/lib/libcrypto secure/lib/libssl -lib/libradius__L: secure/lib/libssl__L -secure/lib/libssl__L: secure/lib/libcrypto__L +lib/libradius__L secure/lib/libssl__L: secure/lib/libcrypto__L .if !defined(NO_OPENSSH) _prebuild_libs+= secure/lib/libssh secure/lib/libssh__L: lib/libz__L secure/lib/libcrypto__L lib/libcrypt__L @@ -1083,15 +1094,14 @@ && rm ${RM_I} "${DESTDIR}/${file}")) .endfor # Remove catpages without corresponding manpages. - @for dir in ${DESTDIR}/usr/share/man/cat*; do \ - for catpage in $${dir}/*; do \ - manpage=$$(echo $${catpage} \ - | sed 's:${DESTDIR}/usr/share/man/cat:${DESTDIR}/usr/share/man/man:') \ - check_empty=$$(echo $${catpage} \ - | sed 's:.*\*:empty:'); \ - [ "$${check_empty}" != "empty" -a ! -e "$${manpage}" ] \ - && rm ${RM_I} $${catpage} || true; \ - done; \ + @3<&0; \ + find ${DESTDIR}/usr/share/man/cat* ! -type d | \ + sed -ep -e's:${DESTDIR}/usr/share/man/cat:${DESTDIR}/usr/share/man/man:' | \ + while read catpage; do \ + read manpage; \ + if [ ! -e "$${manpage}" ]; then \ + rm ${RM_I} $${catpage} <&3 ; \ + fi; \ done @echo ">>> Old files removed" @@ -1101,15 +1111,13 @@ @[ ! -f "${DESTDIR}/${file}" ] || echo "${DESTDIR}/${file}" .endfor # Check for catpages without corresponding manpages. - @for dir in ${DESTDIR}/usr/share/man/cat*; do \ - for catpage in $${dir}/*; do \ - manpage=$$(echo $${catpage} \ - | sed 's:${DESTDIR}/usr/share/man/cat:${DESTDIR}/usr/share/man/man:'); \ - check_empty=$$(echo $${catpage} \ - | sed 's:.*\*:empty:'); \ - [ "$${check_empty}" != "empty" -a ! -e "$${manpage}" ] \ - && echo $${catpage} || true; \ - done; \ + @find ${DESTDIR}/usr/share/man/cat* ! -type d | \ + sed -ep -e's:${DESTDIR}/usr/share/man/cat:${DESTDIR}/usr/share/man/man:' | \ + while read catpage; do \ + read manpage; \ + if [ ! -e "$${manpage}" ]; then \ + echo $${catpage} ; \ + fi; \ done delete-old-libs: ==== //depot/projects/soc2005/bsdinstaller/src/release/doc/share/misc/dev.archlist.txt#5 (text+ko) ==== @@ -23,7 +23,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.70 2005/10/25 04:32:42 brueffer Exp $ +# $FreeBSD: src/release/doc/share/misc/dev.archlist.txt,v 1.71 2005/11/09 22:05:41 brueffer Exp $ # # @@ -64,7 +64,6 @@ de i386,pc98,alpha,ia64,amd64 dpt i386,ia64,amd64 ed i386,pc98 -em i386,pc98,alpha,ia64,amd64 ep i386,pc98,amd64 esp sparc64 ex i386,amd64 From owner-p4-projects@FreeBSD.ORG Wed Nov 23 21:10:06 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1051816A421; Wed, 23 Nov 2005 21:10:06 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 BF33216A420 for ; Wed, 23 Nov 2005 21:10:05 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0315443D76 for ; Wed, 23 Nov 2005 21:09:44 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANL9gHT094185 for ; Wed, 23 Nov 2005 21:09:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANL9gwH094182 for perforce@freebsd.org; Wed, 23 Nov 2005 21:09:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Nov 2005 21:09:42 GMT Message-Id: <200511232109.jANL9gwH094182@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87151 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 21:10:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=87151 Change 87151 by rwatson@rwatson_zoo on 2005/11/23 21:08:52 Integrate mac_none to mac_devfs to create a devfs experimentation module. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Nov 23 21:19:57 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85EBC16A421; Wed, 23 Nov 2005 21:19:56 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 3546416A41F for ; Wed, 23 Nov 2005 21:19:56 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A096943D5E for ; Wed, 23 Nov 2005 21:19:55 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANLJtNf094668 for ; Wed, 23 Nov 2005 21:19:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANLJsTY094665 for perforce@freebsd.org; Wed, 23 Nov 2005 21:19:54 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Nov 2005 21:19:54 GMT Message-Id: <200511232119.jANLJsTY094665@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87152 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 21:19:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=87152 Change 87152 by rwatson@rwatson_zoo on 2005/11/23 21:19:51 Integrate makefile. Affected files ... .. //depot/projects/trustedbsd/mac/sys/modules/mac_devfs/Makefile#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Nov 23 21:25:11 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4D3616A422; Wed, 23 Nov 2005 21:25:10 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 A6ABA16A41F for ; Wed, 23 Nov 2005 21:25:10 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2700943D81 for ; Wed, 23 Nov 2005 21:25:04 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANLP2U3094895 for ; Wed, 23 Nov 2005 21:25:02 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANLP1L0094892 for perforce@freebsd.org; Wed, 23 Nov 2005 21:25:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Nov 2005 21:25:01 GMT Message-Id: <200511232125.jANLP1L0094892@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87153 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 21:25:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=87153 Change 87153 by rwatson@rwatson_zoo on 2005/11/23 21:24:39 Simple module to trace devfs path information. Affected files ... .. //depot/projects/trustedbsd/mac/sys/modules/mac_devfs/Makefile#2 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/modules/mac_devfs/Makefile#2 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/sys/modules/mac_none/Makefile,v 1.2 2002/10/22 17:10:15 rwatson Exp $ +# $FreeBSD$ -.PATH: ${.CURDIR}/../../security/mac_none +.PATH: ${.CURDIR}/../../security/mac_devfs -KMOD= mac_none +KMOD= mac_devfs SRCS= vnode_if.h \ - mac_none.c + mac_devfs.c .include ==== //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#2 (text+ko) ==== @@ -1,15 +1,9 @@ /*- - * Copyright (c) 1999-2002 Robert N. M. Watson - * Copyright (c) 2001-2003 Networks Associates Technology, Inc. + * Copyright (c) 2005 Robert N. M. Watson * All rights reserved. * * This software was developed by Robert Watson for the TrustedBSD Project. * - * This software was developed for the FreeBSD Project in part by Network - * Associates Laboratories, the Security Research Division of Network - * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), - * as part of the DARPA CHATS research program. - * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -31,15 +25,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac_none/mac_none.c,v 1.32 2005/09/19 18:52:50 phk Exp $ + * $FreeBSD$ */ /* * Developed by the TrustedBSD Project. - * - * Sample policy implementing no entry points; for performance measurement - * purposes only. If you're looking for a stub policy to base new policies - * on, try mac_stub. */ #include @@ -76,18 +66,53 @@ #include -SYSCTL_DECL(_security_mac); +static void +mac_devfs_associate_vnode_devfs(struct mount *mp, struct label *fslabel, + struct devfs_dirent *de, struct label *delabel, struct vnode *vp, + struct label *vlabel) +{ + +} + +static void +mac_devfs_create_devfs_device(struct ucred *cred, struct mount *mp, + struct cdev *dev, struct devfs_dirent *devfs_dirent, struct label *label, + const char *fullpath) +{ + + printf("mac_devfs_create_devfs_device(uid %d mp %s cdev %s " + "fullpath %s", cred != NULL ? cred->cr_uid : -1, + mp->mnt_stat.f_mntonname, dev->si_name, fullpath); +} + +static void +mac_devfs_create_devfs_directory(struct mount *mp, char *dirname, + int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label, + const char *fullpath) +{ + + printf("mac_devfs_create_devfs_device(mp %s dirname %s fullpath %s", + mp->mnt_stat.f_mntonname, dirname, fullpath); +} -SYSCTL_NODE(_security_mac, OID_AUTO, none, CTLFLAG_RW, 0, - "TrustedBSD mac_none policy controls"); +static void +mac_devfs_create_devfs_symlink(struct ucred *cred, struct mount *mp, + struct devfs_dirent *dd, struct label *ddlabel, struct devfs_dirent *de, + struct label *delabel, const char *fullpath) +{ -static int mac_none_enabled = 1; -SYSCTL_INT(_security_mac_none, OID_AUTO, enabled, CTLFLAG_RW, - &mac_none_enabled, 0, "Enforce none policy"); + printf("mac_devfs_create_devfs_device(uid %d mp %s fullpath %s", + cred != NULL ? cred->cr_uid : -1, mp->mnt_stat.f_mntonname, + fullpath); +} static struct mac_policy_ops mac_none_ops = { + .mpo_associate_vnode_devfs = mac_devfs_associate_vnode_devfs, + .mpo_create_devfs_device = mac_devfs_create_devfs_device, + .mpo_create_devfs_directory = mac_devfs_create_devfs_directory, + .mpo_create_devfs_symlink = mac_devfs_create_devfs_symlink, }; -MAC_POLICY_SET(&mac_none_ops, mac_none, "TrustedBSD MAC/None", +MAC_POLICY_SET(&mac_none_ops, mac_none, "TrustedBSD MAC/devfs", MPC_LOADTIME_FLAG_UNLOADOK, NULL); From owner-p4-projects@FreeBSD.ORG Wed Nov 23 22:38:33 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A4A816A424; Wed, 23 Nov 2005 22:38:32 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 5939716A423 for ; Wed, 23 Nov 2005 22:38:32 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B18E43D6B for ; Wed, 23 Nov 2005 22:38:31 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANMcVi2098221 for ; Wed, 23 Nov 2005 22:38:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANMcV0x098218 for perforce@freebsd.org; Wed, 23 Nov 2005 22:38:31 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Nov 2005 22:38:31 GMT Message-Id: <200511232238.jANMcV0x098218@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87155 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 22:38:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=87155 Change 87155 by rwatson@rwatson_zoo on 2005/11/23 22:38:10 Fix up printfs. Only printf for device creation of the device is "interesting". Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#3 (text+ko) ==== @@ -66,6 +66,17 @@ #include +static int +interesting(const char *str1, const char *str2) +{ + + if (str1 == NULL || str2 == NULL) + return (0); + if (strcmp(str1, str2) == 0) + return (0); + return (1); +} + static void mac_devfs_associate_vnode_devfs(struct mount *mp, struct label *fslabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, @@ -80,8 +91,11 @@ const char *fullpath) { + if (!interesting(dev->si_name, fullpath)) + return; + printf("mac_devfs_create_devfs_device(uid %d mp %s cdev %s " - "fullpath %s", cred != NULL ? cred->cr_uid : -1, + "fullpath %s)\n", cred != NULL ? cred->cr_uid : -1, mp->mnt_stat.f_mntonname, dev->si_name, fullpath); } @@ -91,8 +105,8 @@ const char *fullpath) { - printf("mac_devfs_create_devfs_device(mp %s dirname %s fullpath %s", - mp->mnt_stat.f_mntonname, dirname, fullpath); + printf("mac_devfs_create_devfs_directory(mp %s dirname %s " + "fullpath %s)\n", mp->mnt_stat.f_mntonname, dirname, fullpath); } static void @@ -101,7 +115,7 @@ struct label *delabel, const char *fullpath) { - printf("mac_devfs_create_devfs_device(uid %d mp %s fullpath %s", + printf("mac_devfs_create_devfs_symlink(uid %d mp %s fullpath %s)\n", cred != NULL ? cred->cr_uid : -1, mp->mnt_stat.f_mntonname, fullpath); } From owner-p4-projects@FreeBSD.ORG Wed Nov 23 22:40:35 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3288316A425; Wed, 23 Nov 2005 22:40:35 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 E943D16A41F for ; Wed, 23 Nov 2005 22:40:34 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A887143D60 for ; Wed, 23 Nov 2005 22:40:34 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANMeYY4001743 for ; Wed, 23 Nov 2005 22:40:34 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANMeYpG001734 for perforce@freebsd.org; Wed, 23 Nov 2005 22:40:34 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 23 Nov 2005 22:40:34 GMT Message-Id: <200511232240.jANMeYpG001734@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87156 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 22:40:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=87156 Change 87156 by rwatson@rwatson_zoo on 2005/11/23 22:40:13 Skip uninteresting directory creation printfs. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#4 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac_devfs/mac_devfs.c#4 (text+ko) ==== @@ -105,6 +105,9 @@ const char *fullpath) { + if (!interesting(dirname, fullpath)) + return; + printf("mac_devfs_create_devfs_directory(mp %s dirname %s " "fullpath %s)\n", mp->mnt_stat.f_mntonname, dirname, fullpath); } From owner-p4-projects@FreeBSD.ORG Wed Nov 23 22:47:15 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B101816A421; Wed, 23 Nov 2005 22:47:14 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 5302F16A41F for ; Wed, 23 Nov 2005 22:46:54 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4902943D7D for ; Wed, 23 Nov 2005 22:46:42 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANMkgX3004092 for ; Wed, 23 Nov 2005 22:46:42 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANMkf5c004089 for perforce@freebsd.org; Wed, 23 Nov 2005 22:46:41 GMT (envelope-from sam@freebsd.org) Date: Wed, 23 Nov 2005 22:46:41 GMT Message-Id: <200511232246.jANMkf5c004089@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87157 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 22:47:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=87157 Change 87157 by sam@sam_ebb on 2005/11/23 22:45:50 clear frag flags passed down from above; they must only be set on return from ieee80211_encap if the packet has been fragmented by the 802.11 layer Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_output.c#57 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_output.c#57 (text+ko) ==== @@ -694,6 +694,12 @@ } } } + /* + * NB: frag flags may leak from above; they should only + * be set on return to the caller if we fragment at + * the 802.11 layer. + */ + m->m_flags &= ~(M_FRAG | M_FIRSTFRAG); if (txfrag && !ieee80211_fragment(ic, m, hdrsize, key != NULL ? key->wk_cipher->ic_header : 0, ic->ic_fragthreshold)) goto bad; From owner-p4-projects@FreeBSD.ORG Wed Nov 23 22:48:05 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D63F516A421; Wed, 23 Nov 2005 22:48:04 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 AAF4F16A41F for ; Wed, 23 Nov 2005 22:48:04 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2584543D49 for ; Wed, 23 Nov 2005 22:48:04 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANMm45K004119 for ; Wed, 23 Nov 2005 22:48:04 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANMlhnt004111 for perforce@freebsd.org; Wed, 23 Nov 2005 22:47:43 GMT (envelope-from sam@freebsd.org) Date: Wed, 23 Nov 2005 22:47:43 GMT Message-Id: <200511232247.jANMlhnt004111@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87158 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 22:48:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=87158 Change 87158 by sam@sam_ebb on 2005/11/23 22:46:45 IFC Affected files ... .. //depot/projects/wifi/MAINTAINERS#10 integrate .. //depot/projects/wifi/Makefile.inc1#25 integrate .. //depot/projects/wifi/ObsoleteFiles.inc#5 integrate .. //depot/projects/wifi/UPDATING#21 integrate .. //depot/projects/wifi/bin/date/date.1#5 integrate .. //depot/projects/wifi/bin/kenv/kenv.1#4 integrate .. //depot/projects/wifi/bin/ls/ls.1#7 integrate .. //depot/projects/wifi/bin/ls/ls.c#4 integrate .. //depot/projects/wifi/bin/ls/util.c#5 integrate .. //depot/projects/wifi/bin/rm/rm.1#7 integrate .. //depot/projects/wifi/bin/sh/eval.c#3 integrate .. //depot/projects/wifi/bin/sh/exec.c#3 integrate .. //depot/projects/wifi/bin/sh/exec.h#2 integrate .. //depot/projects/wifi/bin/sh/histedit.c#3 integrate .. //depot/projects/wifi/bin/sh/memalloc.c#2 integrate .. //depot/projects/wifi/bin/sh/memalloc.h#2 integrate .. //depot/projects/wifi/bin/sh/miscbltin.c#3 integrate .. //depot/projects/wifi/bin/sh/options.c#4 integrate .. //depot/projects/wifi/bin/sh/sh.1#9 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#4 integrate .. //depot/projects/wifi/contrib/cpio/lib/argp.h#2 integrate .. //depot/projects/wifi/contrib/gcc/config/freebsd-spec.h#3 integrate .. //depot/projects/wifi/contrib/groff/COPYING#2 integrate .. //depot/projects/wifi/contrib/groff/ChangeLog#2 integrate .. //depot/projects/wifi/contrib/groff/ChangeLog.115#1 branch .. //depot/projects/wifi/contrib/groff/ChangeLog.116#1 branch .. //depot/projects/wifi/contrib/groff/ChangeLog.117#1 branch .. //depot/projects/wifi/contrib/groff/ChangeLog.118#1 branch .. //depot/projects/wifi/contrib/groff/FDL#2 integrate .. //depot/projects/wifi/contrib/groff/FREEBSD-upgrade#2 integrate .. //depot/projects/wifi/contrib/groff/INSTALL#2 integrate .. //depot/projects/wifi/contrib/groff/INSTALL.gen#2 integrate .. //depot/projects/wifi/contrib/groff/LICENSE#1 branch .. //depot/projects/wifi/contrib/groff/MANIFEST#2 integrate .. //depot/projects/wifi/contrib/groff/MORE.STUFF#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.ccpg#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.comm#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.cpg#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.in#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.init#2 integrate .. //depot/projects/wifi/contrib/groff/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/NEWS#2 integrate .. //depot/projects/wifi/contrib/groff/PROBLEMS#2 integrate .. //depot/projects/wifi/contrib/groff/PROJECTS#2 integrate .. //depot/projects/wifi/contrib/groff/README#2 integrate .. //depot/projects/wifi/contrib/groff/README.MinGW#1 branch .. //depot/projects/wifi/contrib/groff/README.WIN32#2 delete .. //depot/projects/wifi/contrib/groff/REVISION#2 integrate .. //depot/projects/wifi/contrib/groff/TODO#2 integrate .. //depot/projects/wifi/contrib/groff/aclocal.m4#2 integrate .. //depot/projects/wifi/contrib/groff/configure#2 integrate .. //depot/projects/wifi/contrib/groff/configure.ac#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/eqn2graph/eqn2graph.man#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/eqn2graph/eqn2graph.sh#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/ChangeLog#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/README#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/gdiffmk.man#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/gdiffmk.sh#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/file1#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/file2#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/runtests.in#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline10#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline6#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline7#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline8#1 branch .. //depot/projects/wifi/contrib/groff/contrib/gdiffmk/tests/test_baseline9#1 branch .. //depot/projects/wifi/contrib/groff/contrib/grap2graph/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/contrib/grap2graph/grap2graph.man#1 branch .. //depot/projects/wifi/contrib/groff/contrib/grap2graph/grap2graph.sh#1 branch .. //depot/projects/wifi/contrib/groff/contrib/groffer/ChangeLog#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/README#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/README_SH#1 branch .. //depot/projects/wifi/contrib/groff/contrib/groffer/TODO#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/groffer.man#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/groffer.sh#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/groffer/groffer2.sh#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mm/ChangeLog#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mm/groff_mm.man#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mm/m.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mm/mmroff.pl#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/BUGS#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/ChangeLog#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/NEWS#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/TODO#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/copyright#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/README.mom#2 delete .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/README.txt#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/elvis_syntax#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/elvis_syntax.new#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/macros.mom#2 delete .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/sample_docs.mom#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/typeset.mom#2 delete .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/typesetting.mom#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/examples/typewrite.mom#2 delete .. //depot/projects/wifi/contrib/groff/contrib/mom/groff_mom.man#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/appendices.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/color.html#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/cover.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/definitions.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/docelement.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/docprocessing.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/goodies.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/headfootpage.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/inlines.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/intro.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/letters.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/macrolist.html#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/rectoverso.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/refer.html#1 branch .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/reserved.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/toc.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/typemacdoc.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/typesetting.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/momdoc/using.html#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/mom/om.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/ChangeLog#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/PROBLEMS#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/README#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/TODO#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/cover.ms#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/pdfmark.ms#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/pdfmark.tmac#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/pdfroff.man#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/pdfroff.sh#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pdfmark/spdf.tmac#1 branch .. //depot/projects/wifi/contrib/groff/contrib/pic2graph/pic2graph.man#2 integrate .. //depot/projects/wifi/contrib/groff/contrib/pic2graph/pic2graph.sh#2 integrate .. //depot/projects/wifi/contrib/groff/doc/Makefile.in#2 integrate .. //depot/projects/wifi/contrib/groff/doc/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/doc/fdl.texi#2 integrate .. //depot/projects/wifi/contrib/groff/doc/fixinfo.sh#1 branch .. //depot/projects/wifi/contrib/groff/doc/groff#2 integrate .. //depot/projects/wifi/contrib/groff/doc/groff-1#2 integrate .. //depot/projects/wifi/contrib/groff/doc/groff-10#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-11#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-2#2 integrate .. //depot/projects/wifi/contrib/groff/doc/groff-3#2 integrate .. //depot/projects/wifi/contrib/groff/doc/groff-4#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-5#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-6#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-7#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-8#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff-9#2 delete .. //depot/projects/wifi/contrib/groff/doc/groff.css#1 branch .. //depot/projects/wifi/contrib/groff/doc/groff.texinfo#2 integrate .. //depot/projects/wifi/contrib/groff/doc/meref.me#2 integrate .. //depot/projects/wifi/contrib/groff/doc/pic.ms#2 integrate .. //depot/projects/wifi/contrib/groff/doc/texinfo.tex#2 integrate .. //depot/projects/wifi/contrib/groff/doc/webpage.ms#2 integrate .. //depot/projects/wifi/contrib/groff/font/devdvi/generate/Makefile#2 integrate .. //depot/projects/wifi/contrib/groff/font/devhtml/DESC.proto#2 integrate .. //depot/projects/wifi/contrib/groff/font/devhtml/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/font/devhtml/R.proto#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/AB#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/ABI#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/AI#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/ALBB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/ALBR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/AOB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/AOI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/AOR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/AR#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/CB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/CBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/CI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/CLARENDON#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/CORONET#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/CR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/GB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/GBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/GI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/GR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/LGB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/LGI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/LGR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/MARIGOLD#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/OB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/OBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/OI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/OR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/S#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/SYMBOL#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/TB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/TBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/TI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/TNRB#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/TNRBI#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/TNRI#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/TNRR#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/TR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UCB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UCBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UCI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UCR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/UR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/WINGDINGS#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/Makefile#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/special.awk#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/special.map#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/symbol.map#1 branch .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/text.map#2 integrate .. //depot/projects/wifi/contrib/groff/font/devlj4/generate/wingdings.map#1 branch .. //depot/projects/wifi/contrib/groff/font/devps/AB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/ABI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/AI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/AR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HNB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HNBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HNI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HNR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/HR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/NB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/NBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/NI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/NR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/PB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/PBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/PI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/PR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/S#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/SS#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/TB#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/TBI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/TI#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/TR#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/generate/Makefile#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/generate/afmname#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/generate/textmap#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/prologue.ps#2 integrate .. //depot/projects/wifi/contrib/groff/font/devps/symbolmap#2 integrate .. //depot/projects/wifi/contrib/groff/font/devutf8/NOTES#2 integrate .. //depot/projects/wifi/contrib/groff/font/devutf8/R.proto#2 integrate .. //depot/projects/wifi/contrib/groff/install-sh#2 integrate .. //depot/projects/wifi/contrib/groff/man/ditroff.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff_char.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff_diff.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff_font.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff_out.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/groff_tmac.man#2 integrate .. //depot/projects/wifi/contrib/groff/man/roff.man#2 integrate .. //depot/projects/wifi/contrib/groff/mkinstalldirs#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grodvi/dvi.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grodvi/grodvi.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/grohtml.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/html-table.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/html-table.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/html-text.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/html-text.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/html.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/output.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grohtml/post-html.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolbp/lbp.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolbp/lbp.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolj4/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolj4/grolj4.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolj4/lj4.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grolj4/lj4_font.man#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/grops/grops.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grops/ps.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grops/ps.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grops/psrm.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grotty/grotty.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/grotty/tty.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/devices/xditview/ChangeLog#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/DESC.in#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/Dvi.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/Dvi.h#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/DviP.h#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/FontMap#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/GXditview.ad#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/Menu.h#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/README#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/TODO#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/ad2c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/device.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/device.h#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/draw.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/font.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray1.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray2.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray3.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray4.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray5.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray6.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray7.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gray8.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/gxditview.man#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/lex.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/page.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/parse.c#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/xdit.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/xdit_mask.bm#1 branch .. //depot/projects/wifi/contrib/groff/src/devices/xditview/xditview.c#1 branch .. //depot/projects/wifi/contrib/groff/src/include/DviChar.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/XFontName.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/assert.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/cmap.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/color.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/config.hin#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/cset.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/device.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/driver.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/errarg.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/error.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/font.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/geometry.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/getopt_int.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/gettext.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/groff-getopt.h#2 delete .. //depot/projects/wifi/contrib/groff/src/include/html-strings.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/htmlhint.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/index.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/lib.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/macropath.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/nonposix.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/paper.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/posix.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/printer.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/ptable.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/refid.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/relocate.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/search.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/searchpath.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/stringclass.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/include/symbol.h#1 branch .. //depot/projects/wifi/contrib/groff/src/include/unicode.h#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libbib/common.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libbib/index.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libbib/linear.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libbib/map.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libbib/search.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libdriver/input.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libdriver/printer.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/assert.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/change_lf.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/cmap.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/color.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/cset.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/device.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/errarg.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/error.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/fatal.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/fmod.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/font.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/fontfile.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/geometry.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/getcwd.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/glyphuni.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/htmlhint.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/hypot.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/iftoa.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/invalid.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/itoa.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/lf.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/macropath.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/matherr.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/maxfilename.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/maxpathname.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/mksdir.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/mkstemp.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/nametoindex.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/new.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/paper.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/progname.c#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/progname.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/ptable.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/quotearg.c#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/relocate.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/searchpath.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/spawnvp.c#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/strcasecmp.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/strerror.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/string.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/strsave.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/strtol.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/symbol.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/tmpfile.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/tmpname.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/unicode.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/uniglyph.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libgroff/uniuni.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libxutil/DviChar.c#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libxutil/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libxutil/XFontName.c#1 branch .. //depot/projects/wifi/contrib/groff/src/libs/libxutil/xmalloc.c#1 branch .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/box.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/box.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/delim.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/eqn.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/eqn.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/eqn.y#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/lex.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/limit.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/list.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/main.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/mark.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/neqn.sh#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/other.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/over.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/pbox.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/pile.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/script.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/special.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/sqrt.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/eqn/text.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/gprint.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/grn.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/hdb.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/hgraph.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/hpoint.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/grn/main.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/html/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/html/pre-html.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/html/pre-html.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/html/pushback.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/html/pushback.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/TODO#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/common.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/common.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/lex.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/main.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/object.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/object.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/output.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/pic.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/pic.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/pic.y#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/position.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/tex.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/pic/troff.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/command.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/command.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/label.y#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/ref.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/ref.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/refer.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/refer.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/refer.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/token.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/refer/token.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/soelim/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/soelim/soelim.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/soelim/soelim.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/tbl/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/tbl/main.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/tbl/table.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/tbl/table.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/preproc/tbl/tbl.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/groff/groff.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/groff/groff.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/groff/pipeline.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/groff/pipeline.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/grog/grog.pl#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/grog/grog.sh#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/nroff/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/nroff/nroff.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/nroff/nroff.sh#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/charinfo.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/column.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/dictionary.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/dictionary.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/div.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/div.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/env.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/env.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/glyphuni.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/hvunits.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/input.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/input.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/mtsm.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/roff/troff/mtsm.h#1 branch .. //depot/projects/wifi/contrib/groff/src/roff/troff/node.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/node.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/number.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/reg.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/reg.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/request.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/symbol.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/symbol.h#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/token.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/troff.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/troff.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/roff/troff/unicode.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/unicode.h#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/uniglyph.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/roff/troff/uniuni.cpp#2 delete .. //depot/projects/wifi/contrib/groff/src/utils/addftinfo/addftinfo.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/addftinfo/guess.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/addftinfo/guess.h#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/afmtodit/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/afmtodit/afmtodit.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/afmtodit/afmtodit.pl#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/hpftodit/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/hpftodit/hpftodit.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/hpftodit/hpftodit.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/hpftodit/hpuni.cpp#1 branch .. //depot/projects/wifi/contrib/groff/src/utils/indxbib/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/indxbib/indxbib.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/indxbib/signal.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/lkbib/lkbib.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/lkbib/lkbib.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/lookbib/lookbib.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/lookbib/lookbib.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/pfbtops/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/pfbtops/pfbtops.c#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/pfbtops/pfbtops.man#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/tfmtodit/tfmtodit.cpp#2 integrate .. //depot/projects/wifi/contrib/groff/src/utils/xtotroff/Makefile.in#1 branch .. //depot/projects/wifi/contrib/groff/src/utils/xtotroff/Makefile.sub#1 branch .. //depot/projects/wifi/contrib/groff/src/utils/xtotroff/xtotroff.c#1 branch .. //depot/projects/wifi/contrib/groff/src/utils/xtotroff/xtotroff.man#1 branch .. //depot/projects/wifi/contrib/groff/src/xditview/ChangeLog#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/DESC#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/Dvi.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/Dvi.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/DviChar.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/DviChar.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/DviP.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/FontMap#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/GXditview-ad.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/GXditview.ad#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/INSTALL#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/Imakefile.in#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/Menu.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/README#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/TODO#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/XFontName.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/XFontName.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/ad2c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/device.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/device.h#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/draw.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/font.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray1.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray2.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray3.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray4.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray5.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray6.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray7.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gray8.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/gxditview.man#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/lex.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/page.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/parse.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/xdit.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/xdit_mask.bm#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/xditview.c#2 delete .. //depot/projects/wifi/contrib/groff/src/xditview/xtotroff.c#2 delete .. //depot/projects/wifi/contrib/groff/test-groff#2 delete .. //depot/projects/wifi/contrib/groff/test-groff.in#1 branch .. //depot/projects/wifi/contrib/groff/tmac/Makefile.sub#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/TODO#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/X.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/Xps.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/an-old.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/composite.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/devtag.tmac#1 branch .. //depot/projects/wifi/contrib/groff/tmac/doc-common#4 integrate .. //depot/projects/wifi/contrib/groff/tmac/doc-ditroff#3 integrate .. //depot/projects/wifi/contrib/groff/tmac/doc-nroff#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/doc-old.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/doc-syms#3 integrate .. //depot/projects/wifi/contrib/groff/tmac/doc.tmac#4 integrate .. //depot/projects/wifi/contrib/groff/tmac/dvi.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/e.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/groff_man.man#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/groff_mdoc.man#3 integrate .. //depot/projects/wifi/contrib/groff/tmac/groff_ms.man#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/groff_trace.man#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/groff_www.man#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/html.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/latin5.tmac#1 branch .. //depot/projects/wifi/contrib/groff/tmac/lbp.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/papersize.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/ps.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/s.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/trace.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/troffrc#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/troffrc-end#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/tty-char.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/tty.tmac#2 integrate .. //depot/projects/wifi/contrib/groff/tmac/unicode.tmac#1 branch .. //depot/projects/wifi/contrib/groff/tmac/www.tmac#2 integrate .. //depot/projects/wifi/contrib/smbfs/mount_smbfs/getmntopts.c#2 delete .. //depot/projects/wifi/contrib/smbfs/mount_smbfs/mntopts.h#2 delete .. //depot/projects/wifi/contrib/smbfs/mount_smbfs/mount_smbfs.8#3 integrate .. //depot/projects/wifi/contrib/smbfs/mount_smbfs/mount_smbfs.c#2 integrate .. //depot/projects/wifi/contrib/tcpdump/print-tcp.c#3 integrate .. //depot/projects/wifi/contrib/top/top.X#3 integrate .. //depot/projects/wifi/contrib/wpa_supplicant/driver_ndis.c#2 integrate .. //depot/projects/wifi/etc/Makefile#10 integrate .. //depot/projects/wifi/etc/bluetooth/Makefile#2 integrate .. //depot/projects/wifi/etc/bluetooth/hosts#2 integrate .. //depot/projects/wifi/etc/bluetooth/protocols#2 integrate .. //depot/projects/wifi/etc/defaults/Makefile#4 integrate .. //depot/projects/wifi/etc/defaults/bluetooth.device.conf#1 branch .. //depot/projects/wifi/etc/defaults/rc.conf#21 integrate .. //depot/projects/wifi/etc/devd.conf#12 integrate .. //depot/projects/wifi/etc/mtree/BSD.include.dist#10 integrate .. //depot/projects/wifi/etc/mtree/BSD.usr.dist#4 integrate .. //depot/projects/wifi/etc/mtree/BSD.x11-4.dist#5 integrate .. //depot/projects/wifi/etc/netstart#3 integrate .. //depot/projects/wifi/etc/network.subr#6 integrate .. //depot/projects/wifi/etc/periodic/daily/470.status-named#2 integrate .. //depot/projects/wifi/etc/rc.d/Makefile#13 integrate .. //depot/projects/wifi/etc/rc.d/NETWORKING#2 integrate .. //depot/projects/wifi/etc/rc.d/bluetooth#1 branch .. //depot/projects/wifi/etc/rc.d/devd#2 integrate .. //depot/projects/wifi/etc/rc.d/hcsecd#2 integrate .. //depot/projects/wifi/etc/rc.d/ike#2 integrate .. //depot/projects/wifi/etc/rc.d/ipfw#3 integrate .. //depot/projects/wifi/etc/rc.d/ipmon#2 integrate .. //depot/projects/wifi/etc/rc.d/named#7 integrate .. //depot/projects/wifi/etc/rc.d/netif#5 integrate .. //depot/projects/wifi/etc/rc.d/newsyslog#3 integrate .. //depot/projects/wifi/etc/rc.d/pf#5 integrate .. //depot/projects/wifi/etc/rc.d/powerd#2 integrate .. //depot/projects/wifi/etc/rc.d/ppp-user#3 delete .. //depot/projects/wifi/etc/rc.d/routing#2 integrate .. //depot/projects/wifi/etc/rc.d/sdpd#2 integrate .. //depot/projects/wifi/etc/rc.d/sendmail#4 integrate .. //depot/projects/wifi/etc/rc.d/sshd#3 integrate .. //depot/projects/wifi/etc/rc.d/wpa_supplicant#2 integrate .. //depot/projects/wifi/etc/rc.firewall#2 integrate .. //depot/projects/wifi/etc/rc.initdiskless#5 integrate .. //depot/projects/wifi/etc/rc.subr#7 integrate .. //depot/projects/wifi/games/fortune/datfiles/fortunes#17 integrate .. //depot/projects/wifi/games/morse/Makefile#2 integrate .. //depot/projects/wifi/games/morse/morse.c#3 integrate .. //depot/projects/wifi/gnu/usr.bin/cc/cc_tools/freebsd-native.h#2 integrate .. //depot/projects/wifi/gnu/usr.bin/diff/diff.1#2 integrate .. //depot/projects/wifi/gnu/usr.bin/gdb/kgdb/main.c#8 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/grep.1#3 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/grep.c#4 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/search.c#4 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/Makefile.inc#3 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/font/Makefile.tty#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/font/devhtml/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/font/devlj4/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/src/devices/grolj4/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/src/devices/xditview/Makefile#1 branch .. //depot/projects/wifi/gnu/usr.bin/groff/src/include/config.h#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/src/libs/libgroff/Makefile#3 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/src/roff/troff/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/src/utils/hpftodit/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/tmac/Makefile#2 integrate .. //depot/projects/wifi/gnu/usr.bin/man/apropos/apropos.man#4 integrate .. //depot/projects/wifi/gnu/usr.bin/send-pr/send-pr.sh#2 integrate .. //depot/projects/wifi/include/Makefile#18 integrate .. //depot/projects/wifi/include/pthread.h#6 integrate .. //depot/projects/wifi/include/signal.h#2 integrate .. //depot/projects/wifi/include/time.h#3 integrate .. //depot/projects/wifi/kerberos5/tools/asn1_compile/Makefile#3 integrate .. //depot/projects/wifi/lib/Makefile#10 integrate .. //depot/projects/wifi/lib/bind/bind/Makefile#2 integrate .. //depot/projects/wifi/lib/bind/bind9/Makefile#2 integrate .. //depot/projects/wifi/lib/bind/dns/Makefile#3 integrate .. //depot/projects/wifi/lib/bind/isc/Makefile#3 integrate .. //depot/projects/wifi/lib/bind/isccc/Makefile#2 integrate .. //depot/projects/wifi/lib/bind/isccfg/Makefile#2 integrate .. //depot/projects/wifi/lib/bind/lwres/Makefile#3 integrate .. //depot/projects/wifi/lib/libarchive/Makefile#15 integrate .. //depot/projects/wifi/lib/libarchive/archive.h.in#7 integrate .. //depot/projects/wifi/lib/libarchive/archive_entry.c#8 integrate .. //depot/projects/wifi/lib/libarchive/archive_platform.h#8 integrate .. //depot/projects/wifi/lib/libarchive/archive_private.h#7 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_compress.c#2 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_cpio.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_iso9660.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_tar.c#10 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_pax.c#12 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_ustar.c#4 integrate .. //depot/projects/wifi/lib/libarchive/configure.ac.in#8 integrate .. //depot/projects/wifi/lib/libarchive/libarchive-formats.5#7 integrate .. //depot/projects/wifi/lib/libc/gen/_pthread_stubs.c#2 integrate .. //depot/projects/wifi/lib/libc/gen/sem.c#3 integrate .. //depot/projects/wifi/lib/libc/locale/isalnum.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isalpha.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isblank.3#4 integrate .. //depot/projects/wifi/lib/libc/locale/iscntrl.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isdigit.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isgraph.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/islower.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isprint.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/ispunct.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isspace.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isupper.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/isxdigit.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/tolower.3#3 integrate .. //depot/projects/wifi/lib/libc/locale/toupper.3#3 integrate .. //depot/projects/wifi/lib/libc/net/name6.c#9 integrate .. //depot/projects/wifi/lib/libc/posix1e/acl_get_entry.3#3 integrate .. //depot/projects/wifi/lib/libc/string/memmem.3#2 integrate .. //depot/projects/wifi/lib/libc/sys/Makefile.inc#3 integrate .. //depot/projects/wifi/lib/libc/sys/clock_gettime.2#2 integrate .. //depot/projects/wifi/lib/libc/sys/intro.2#5 integrate .. //depot/projects/wifi/lib/libc/sys/mmap.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/read.2#7 integrate .. //depot/projects/wifi/lib/libc/sys/recv.2#6 integrate .. //depot/projects/wifi/lib/libc/sys/sendfile.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/sigqueue.2#1 branch .. //depot/projects/wifi/lib/libc/sys/sigwait.2#2 integrate .. //depot/projects/wifi/lib/libc/sys/sigwaitinfo.2#1 branch .. //depot/projects/wifi/lib/libc/sys/timer_create.2#1 branch .. //depot/projects/wifi/lib/libc/sys/timer_delete.2#1 branch .. //depot/projects/wifi/lib/libc/sys/timer_settime.2#1 branch .. //depot/projects/wifi/lib/libc/sys/wait.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/write.2#5 integrate .. //depot/projects/wifi/lib/libedit/editline.3#6 integrate .. //depot/projects/wifi/lib/libedit/editrc.5#4 integrate .. //depot/projects/wifi/lib/libform/Makefile#2 integrate .. //depot/projects/wifi/lib/libkvm/kvm_amd64.c#3 integrate .. //depot/projects/wifi/lib/libkvm/kvm_i386.c#3 integrate .. //depot/projects/wifi/lib/libmagic/Makefile#5 integrate .. //depot/projects/wifi/lib/libmd/sha256.3#4 integrate .. //depot/projects/wifi/lib/libmemstat/Makefile#3 integrate .. //depot/projects/wifi/lib/libmemstat/libmemstat.3#8 integrate .. //depot/projects/wifi/lib/libmenu/Makefile#2 integrate .. //depot/projects/wifi/lib/libmp/Makefile#3 integrate .. //depot/projects/wifi/lib/libncp/Makefile#4 integrate .. //depot/projects/wifi/lib/libnetgraph/debug.c#3 integrate .. //depot/projects/wifi/lib/libpanel/Makefile#2 integrate .. //depot/projects/wifi/lib/libpmc/pmc.3#6 integrate .. //depot/projects/wifi/lib/libpmc/pmclog.3#3 integrate .. //depot/projects/wifi/lib/libpthread/pthread.map#4 integrate .. //depot/projects/wifi/lib/libpthread/test/guard_b.c#2 integrate .. //depot/projects/wifi/lib/libpthread/test/mutex_d.c#2 integrate .. //depot/projects/wifi/lib/libpthread/test/sigsuspend_d.c#2 integrate .. //depot/projects/wifi/lib/libpthread/thread/Makefile.inc#2 integrate .. //depot/projects/wifi/lib/libpthread/thread/thr_condattr_pshared.c#1 branch .. //depot/projects/wifi/lib/libpthread/thread/thr_mattr_pshared.c#1 branch .. //depot/projects/wifi/lib/libradius/Makefile#4 integrate .. //depot/projects/wifi/lib/libsmb/Makefile#5 integrate .. //depot/projects/wifi/lib/libstand/cd9660.c#2 integrate .. //depot/projects/wifi/lib/libthr/Makefile#8 integrate .. //depot/projects/wifi/lib/libthr/arch/arm/arm/pthread_md.c#2 integrate .. //depot/projects/wifi/lib/libthr/arch/arm/include/pthread_md.h#2 integrate .. //depot/projects/wifi/lib/libthr/arch/i386/include/pthread_md.h#4 integrate .. //depot/projects/wifi/lib/libthr/pthread.map#5 integrate .. //depot/projects/wifi/lib/libthr/thread/Makefile.inc#4 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_exit.c#4 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_init.c#6 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_join.c#4 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_mutexattr.c#3 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_private.h#7 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_syscalls.c#4 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_timer.c#1 branch .. //depot/projects/wifi/lib/libutil/pidfile.3#3 integrate .. //depot/projects/wifi/lib/msun/Makefile#12 integrate .. //depot/projects/wifi/lib/msun/bsdsrc/mathimpl.h#4 integrate .. //depot/projects/wifi/lib/msun/i387/e_exp.S#3 integrate .. //depot/projects/wifi/lib/msun/man/ieee_test.3#2 integrate .. //depot/projects/wifi/lib/msun/man/ilogb.3#2 integrate .. //depot/projects/wifi/lib/msun/man/math.3#9 integrate .. //depot/projects/wifi/lib/msun/man/remainder.3#3 integrate .. //depot/projects/wifi/lib/msun/src/e_coshf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_logf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_rem_pio2f.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_sinhf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/k_cos.c#3 integrate .. //depot/projects/wifi/lib/msun/src/k_cosf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/k_sin.c#3 integrate .. //depot/projects/wifi/lib/msun/src/k_sinf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/k_tan.c#3 integrate .. //depot/projects/wifi/lib/msun/src/k_tanf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/math_private.h#3 integrate .. //depot/projects/wifi/lib/msun/src/s_cos.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_cosf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_sin.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_sinf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_tan.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_tanf.c#2 integrate .. //depot/projects/wifi/libexec/rtld-elf/rtld.c#7 integrate .. //depot/projects/wifi/libexec/tcpd/Makefile#3 integrate .. //depot/projects/wifi/release/Makefile#13 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#6 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/installation/common/trouble.sgml#4 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#20 integrate .. //depot/projects/wifi/release/doc/share/misc/dev.archlist.txt#16 integrate .. //depot/projects/wifi/release/doc/zh_CN.GB2312/readme/article.sgml#3 integrate .. //depot/projects/wifi/release/doc/zh_CN.GB2312/relnotes/common/new.sgml#7 integrate .. //depot/projects/wifi/release/scripts/package-split.py#5 integrate .. //depot/projects/wifi/sbin/atacontrol/atacontrol.8#4 integrate .. //depot/projects/wifi/sbin/bsdlabel/bsdlabel.8#4 integrate .. //depot/projects/wifi/sbin/devd/Makefile#3 integrate .. //depot/projects/wifi/sbin/devd/devd.cc#7 integrate .. //depot/projects/wifi/sbin/fsdb/fsdb.c#3 integrate .. //depot/projects/wifi/sbin/geom/class/mirror/geom_mirror.c#6 integrate .. //depot/projects/wifi/sbin/geom/class/mirror/gmirror.8#10 integrate .. //depot/projects/wifi/sbin/ggate/ggatec/ggatec.8#4 integrate .. //depot/projects/wifi/sbin/gpt/gpt.8#8 integrate .. //depot/projects/wifi/sbin/gvinum/Makefile#4 integrate .. //depot/projects/wifi/sbin/gvinum/gvinum.8#1 branch .. //depot/projects/wifi/sbin/gvinum/gvinum.c#4 integrate .. //depot/projects/wifi/sbin/init/init.8#5 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw.8#15 integrate .. //depot/projects/wifi/sbin/kldconfig/kldconfig.c#3 integrate .. //depot/projects/wifi/sbin/kldload/kldload.8#4 integrate .. //depot/projects/wifi/sbin/kldstat/kldstat.8#5 integrate .. //depot/projects/wifi/sbin/ldconfig/ldconfig.8#2 integrate .. //depot/projects/wifi/sbin/ldconfig/ldconfig.c#4 integrate .. //depot/projects/wifi/sbin/mdconfig/mdconfig.c#10 integrate .. //depot/projects/wifi/sbin/mdmfs/mdmfs.c#4 integrate .. //depot/projects/wifi/sbin/mount/Makefile#3 integrate .. //depot/projects/wifi/sbin/mount/extern.h#3 integrate .. //depot/projects/wifi/sbin/mount/getmntopts.c#4 integrate .. //depot/projects/wifi/sbin/mount/mntopts.h#5 integrate .. //depot/projects/wifi/sbin/mount/mount.c#6 integrate .. //depot/projects/wifi/sbin/mount/mount_fs.c#1 branch .. //depot/projects/wifi/sbin/mount/mount_ufs.c#4 integrate .. //depot/projects/wifi/sbin/mount_cd9660/Makefile#3 integrate .. //depot/projects/wifi/sbin/mount_cd9660/mount_cd9660.8#6 integrate .. //depot/projects/wifi/sbin/mount_cd9660/mount_cd9660.c#4 integrate .. //depot/projects/wifi/sbin/mount_msdosfs/Makefile#3 integrate .. //depot/projects/wifi/sbin/mount_msdosfs/mount_msdosfs.c#3 integrate .. //depot/projects/wifi/sbin/mount_nullfs/Makefile#2 integrate .. //depot/projects/wifi/sbin/mount_nullfs/mount_nullfs.c#4 integrate .. //depot/projects/wifi/sbin/mount_reiserfs/Makefile#2 integrate .. //depot/projects/wifi/sbin/mount_reiserfs/mount_reiserfs.c#3 integrate .. //depot/projects/wifi/sbin/ping/ping.8#3 integrate .. //depot/projects/wifi/sbin/reboot/Makefile#3 integrate .. //depot/projects/wifi/sbin/reboot/boot_i386.8#7 integrate .. //depot/projects/wifi/sbin/restore/restore.8#5 integrate .. //depot/projects/wifi/sbin/sysctl/sysctl.8#7 integrate .. //depot/projects/wifi/secure/lib/libssl/Makefile#6 integrate .. //depot/projects/wifi/share/doc/IPv6/IMPLEMENTATION#3 integrate .. //depot/projects/wifi/share/examples/cvsup/ports-supfile#3 integrate .. //depot/projects/wifi/share/examples/etc/make.conf#17 integrate .. //depot/projects/wifi/share/examples/ipfilter/ipf-howto.txt#2 integrate .. //depot/projects/wifi/share/examples/ses/Makefile#2 integrate .. //depot/projects/wifi/share/man/man3/queue.3#3 integrate .. //depot/projects/wifi/share/man/man4/Makefile#26 integrate .. //depot/projects/wifi/share/man/man4/ath.4#14 integrate .. //depot/projects/wifi/share/man/man4/bge.4#7 integrate .. //depot/projects/wifi/share/man/man4/bpf.4#6 integrate .. //depot/projects/wifi/share/man/man4/cardbus.4#3 integrate .. //depot/projects/wifi/share/man/man4/ciss.4#3 integrate .. //depot/projects/wifi/share/man/man4/dcons.4#4 integrate .. //depot/projects/wifi/share/man/man4/de.4#6 integrate .. //depot/projects/wifi/share/man/man4/ed.4#10 integrate .. //depot/projects/wifi/share/man/man4/em.4#11 integrate .. //depot/projects/wifi/share/man/man4/fwip.4#7 integrate .. //depot/projects/wifi/share/man/man4/geom.4#4 integrate .. //depot/projects/wifi/share/man/man4/hptmv.4#5 integrate .. //depot/projects/wifi/share/man/man4/hwpmc.4#9 integrate .. //depot/projects/wifi/share/man/man4/icmp.4#4 integrate .. //depot/projects/wifi/share/man/man4/if_bridge.4#4 integrate .. //depot/projects/wifi/share/man/man4/ip.4#7 integrate .. //depot/projects/wifi/share/man/man4/ipw.4#6 integrate .. //depot/projects/wifi/share/man/man4/iwi.4#8 integrate .. //depot/projects/wifi/share/man/man4/joy.4#3 integrate .. //depot/projects/wifi/share/man/man4/kbdmux.4#3 integrate .. //depot/projects/wifi/share/man/man4/lmc.4#2 integrate .. //depot/projects/wifi/share/man/man4/mac_seeotheruids.4#3 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/Makefile#8 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/acpi_fujitsu.4#4 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/acpi_ibm.4#6 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/acpi_sony.4#2 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/arl.4#5 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/cp.4#6 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/cs.4#6 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/cx.4#5 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/ep.4#12 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/ex.4#6 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/fe.4#7 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/ie.4#5 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/linux.4#2 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/lnc.4#7 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/perfmon.4#2 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/ray.4#8 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/spkr.4#3 delete .. //depot/projects/wifi/share/man/man4/man4.i386/vx.4#6 integrate .. //depot/projects/wifi/share/man/man4/ng_iface.4#4 integrate .. //depot/projects/wifi/share/man/man4/ng_ksocket.4#3 integrate .. //depot/projects/wifi/share/man/man4/ng_netflow.4#10 integrate .. //depot/projects/wifi/share/man/man4/pccard.4#3 integrate .. //depot/projects/wifi/share/man/man4/pccbb.4#4 integrate .. //depot/projects/wifi/share/man/man4/polling.4#7 integrate .. //depot/projects/wifi/share/man/man4/snd_ich.4#6 integrate .. //depot/projects/wifi/share/man/man4/spkr.4#1 branch .. //depot/projects/wifi/share/man/man4/twa.4#3 integrate .. //depot/projects/wifi/share/man/man4/txp.4#7 integrate .. //depot/projects/wifi/share/man/man4/ural.4#6 integrate .. //depot/projects/wifi/share/man/man4/wi.4#8 integrate .. //depot/projects/wifi/share/man/man4/xe.4#7 integrate .. //depot/projects/wifi/share/man/man5/disktab.5#3 integrate .. //depot/projects/wifi/share/man/man5/libmap.conf.5#4 integrate .. //depot/projects/wifi/share/man/man5/make.conf.5#13 integrate .. //depot/projects/wifi/share/man/man5/rc.conf.5#21 integrate .. //depot/projects/wifi/share/man/man7/Makefile#2 integrate .. //depot/projects/wifi/share/man/man7/bsd.snmpmod.mk.7#1 branch .. //depot/projects/wifi/share/man/man7/build.7#6 integrate .. //depot/projects/wifi/share/man/man8/diskless.8#4 integrate .. //depot/projects/wifi/share/man/man8/rc.subr.8#2 integrate .. //depot/projects/wifi/share/man/man8/rescue.8#2 integrate .. //depot/projects/wifi/share/man/man9/VFS_LOCK_GIANT.9#2 integrate .. //depot/projects/wifi/share/man/man9/atomic.9#3 integrate .. //depot/projects/wifi/share/man/man9/bios.9#4 integrate .. //depot/projects/wifi/share/man/man9/bus_dma.9#8 integrate .. //depot/projects/wifi/share/man/man9/device_add_child.9#3 integrate .. //depot/projects/wifi/share/man/man9/device_get_softc.9#4 integrate .. //depot/projects/wifi/share/man/man9/mbuf.9#7 integrate .. //depot/projects/wifi/share/man/man9/namei.9#4 integrate .. //depot/projects/wifi/share/man/man9/timeout.9#7 integrate .. //depot/projects/wifi/share/misc/bsd-family-tree#10 integrate .. //depot/projects/wifi/share/mk/Makefile#5 integrate .. //depot/projects/wifi/share/mk/bsd.README#3 integrate .. //depot/projects/wifi/share/mk/bsd.info.mk#5 integrate .. //depot/projects/wifi/share/mk/bsd.lib.mk#6 integrate .. //depot/projects/wifi/share/mk/bsd.prog.mk#7 integrate .. //depot/projects/wifi/share/mk/bsd.snmpmod.mk#1 branch .. //depot/projects/wifi/share/monetdef/he_IL.UTF-8.src#2 integrate .. //depot/projects/wifi/share/termcap/termcap.src#2 integrate .. //depot/projects/wifi/sys/alpha/alpha/clock.c#4 integrate .. //depot/projects/wifi/sys/alpha/alpha/interrupt.c#7 integrate .. //depot/projects/wifi/sys/alpha/alpha/machdep.c#10 integrate .. //depot/projects/wifi/sys/alpha/alpha/mp_machdep.c#6 integrate .. //depot/projects/wifi/sys/alpha/alpha/pmap.c#8 integrate .. //depot/projects/wifi/sys/alpha/alpha/promcons.c#3 integrate .. //depot/projects/wifi/sys/alpha/alpha/trap.c#6 integrate .. //depot/projects/wifi/sys/alpha/conf/DEFAULTS#1 branch .. //depot/projects/wifi/sys/alpha/conf/GENERIC#9 integrate .. //depot/projects/wifi/sys/alpha/include/smp.h#4 integrate .. //depot/projects/wifi/sys/alpha/isa/isa.c#3 integrate .. //depot/projects/wifi/sys/alpha/linux/linux_sysvec.c#4 integrate .. //depot/projects/wifi/sys/alpha/osf1/osf1_signal.c#6 integrate .. //depot/projects/wifi/sys/alpha/osf1/osf1_signal.h#2 integrate .. //depot/projects/wifi/sys/alpha/tlsb/zs_tlsb.c#2 integrate .. //depot/projects/wifi/sys/amd64/acpica/madt.c#5 integrate .. //depot/projects/wifi/sys/amd64/amd64/apic_vector.S#5 integrate .. //depot/projects/wifi/sys/amd64/amd64/cpu_switch.S#3 integrate .. //depot/projects/wifi/sys/amd64/amd64/identcpu.c#4 integrate .. //depot/projects/wifi/sys/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/wifi/sys/amd64/amd64/intr_machdep.c#8 integrate .. //depot/projects/wifi/sys/amd64/amd64/io_apic.c#6 integrate .. //depot/projects/wifi/sys/amd64/amd64/local_apic.c#8 integrate .. //depot/projects/wifi/sys/amd64/amd64/machdep.c#13 integrate .. //depot/projects/wifi/sys/amd64/amd64/mp_machdep.c#11 integrate .. //depot/projects/wifi/sys/amd64/amd64/mptable.c#5 integrate .. //depot/projects/wifi/sys/amd64/amd64/pmap.c#12 integrate .. //depot/projects/wifi/sys/amd64/amd64/trap.c#9 integrate .. //depot/projects/wifi/sys/amd64/amd64/vm_machdep.c#11 integrate .. //depot/projects/wifi/sys/amd64/conf/DEFAULTS#1 branch .. //depot/projects/wifi/sys/amd64/conf/GENERIC#13 integrate .. //depot/projects/wifi/sys/amd64/conf/NOTES#16 integrate .. //depot/projects/wifi/sys/amd64/ia32/ia32_reg.c#3 integrate .. //depot/projects/wifi/sys/amd64/ia32/ia32_signal.c#3 integrate .. //depot/projects/wifi/sys/amd64/ia32/ia32_syscall.c#3 integrate .. //depot/projects/wifi/sys/amd64/include/apicvar.h#6 integrate .. //depot/projects/wifi/sys/amd64/include/intr_machdep.h#3 integrate .. //depot/projects/wifi/sys/amd64/include/md_var.h#2 integrate .. //depot/projects/wifi/sys/amd64/include/smp.h#6 integrate .. //depot/projects/wifi/sys/amd64/include/specialreg.h#2 integrate .. //depot/projects/wifi/sys/amd64/isa/atpic.c#4 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux32_sysvec.c#8 integrate .. //depot/projects/wifi/sys/amd64/pci/pci_cfgreg.c#4 integrate .. //depot/projects/wifi/sys/arm/arm/bcopyinout.S#7 integrate .. //depot/projects/wifi/sys/arm/arm/identcpu.c#4 integrate .. //depot/projects/wifi/sys/arm/arm/intr.c#9 integrate .. //depot/projects/wifi/sys/arm/arm/machdep.c#8 integrate .. //depot/projects/wifi/sys/arm/arm/pmap.c#16 integrate .. //depot/projects/wifi/sys/arm/arm/support.S#6 integrate .. //depot/projects/wifi/sys/arm/arm/trap.c#13 integrate .. //depot/projects/wifi/sys/arm/arm/undefined.c#7 integrate .. //depot/projects/wifi/sys/arm/arm/vm_machdep.c#11 integrate .. //depot/projects/wifi/sys/arm/include/armreg.h#3 integrate .. //depot/projects/wifi/sys/arm/include/atomic.h#11 integrate .. //depot/projects/wifi/sys/arm/include/pcpu.h#3 integrate .. //depot/projects/wifi/sys/arm/include/pmap.h#9 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/i80321_space.c#4 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/i80321_timer.c#6 integrate .. //depot/projects/wifi/sys/boot/forth/beastie.4th#4 integrate .. //depot/projects/wifi/sys/boot/forth/loader.conf#9 integrate .. //depot/projects/wifi/sys/boot/forth/loader.conf.5#4 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 23 22:51:09 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 36E0016A422; Wed, 23 Nov 2005 22:51:09 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 EB9F616A420 for ; Wed, 23 Nov 2005 22:51:08 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A6D643D5E for ; Wed, 23 Nov 2005 22:51:08 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jANMp8qF004413 for ; Wed, 23 Nov 2005 22:51:08 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jANMp8Q0004410 for perforce@freebsd.org; Wed, 23 Nov 2005 22:51:08 GMT (envelope-from sam@freebsd.org) Date: Wed, 23 Nov 2005 22:51:08 GMT Message-Id: <200511232251.jANMp8Q0004410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87159 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Nov 2005 22:51:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=87159 Change 87159 by sam@sam_ebb on 2005/11/23 22:50:06 IFC Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#112 edit .. //depot/projects/wifi/sys/dev/ral/if_ral.c#7 edit .. //depot/projects/wifi/sys/dev/usb/if_ural.c#7 edit .. //depot/projects/wifi/sys/dev/wi/if_wi.c#20 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#112 (text+ko) ==== @@ -2151,7 +2151,7 @@ * * XXX should get from lladdr instead of arpcom but that's more work */ - IEEE80211_ADDR_COPY(ic->ic_myaddr, IFP2ENADDR(ifp)); + IEEE80211_ADDR_COPY(ic->ic_myaddr, IF_LLADDR(ifp)); ath_hal_setmac(ah, ic->ic_myaddr); /* calculate and install multicast filter */ ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#7 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/ral/if_ral.c,v 1.17 2005/09/19 03:10:19 imp Exp $ */ +/* $FreeBSD: src/sys/dev/ral/if_ral.c,v 1.19 2005/11/15 17:17:15 damien Exp $ */ /*- * Copyright (c) 2005 @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ral/if_ral.c,v 1.17 2005/09/19 03:10:19 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ral/if_ral.c,v 1.19 2005/11/15 17:17:15 damien Exp $"); /*- * Ralink Technology RT2500 chipset driver @@ -1280,7 +1280,7 @@ struct ieee80211_frame *wh; struct ieee80211_node *ni; struct ral_node *rn; - struct mbuf *m; + struct mbuf *mnew, *m; int hw, error; /* retrieve last decriptor index processed by cipher engine */ @@ -1308,12 +1308,51 @@ goto skip; } + /* + * Try to allocate a new mbuf for this ring element and load it + * before processing the current mbuf. If the ring element + * cannot be loaded, drop the received packet and reuse the old + * mbuf. In the unlikely case that the old mbuf can't be + * reloaded either, explicitly panic. + */ + mnew = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + if (mnew == NULL) { + ifp->if_ierrors++; + goto skip; + } + bus_dmamap_sync(sc->rxq.data_dmat, data->map, BUS_DMASYNC_POSTREAD); bus_dmamap_unload(sc->rxq.data_dmat, data->map); + error = bus_dmamap_load(sc->rxq.data_dmat, data->map, + mtod(mnew, void *), MCLBYTES, ral_dma_map_addr, &physaddr, + 0); + if (error != 0) { + m_freem(mnew); + + /* try to reload the old mbuf */ + error = bus_dmamap_load(sc->rxq.data_dmat, data->map, + mtod(data->m, void *), MCLBYTES, ral_dma_map_addr, + &physaddr, 0); + if (error != 0) { + /* very unlikely that it will fail... */ + panic("%s: could not load old rx mbuf", + device_get_name(sc->sc_dev)); + } + ifp->if_ierrors++; + goto skip; + } + + /* + * New mbuf successfully loaded, update Rx ring and continue + * processing. + */ + m = data->m; + data->m = mnew; + desc->physaddr = htole32(physaddr); + /* finalize mbuf */ - m = data->m; m->m_pkthdr.rcvif = ifp; m->m_pkthdr.len = m->m_len = (le32toh(desc->flags) >> 16) & 0xfff; @@ -1343,7 +1382,7 @@ (struct ieee80211_frame_min *)wh); /* send the frame to the 802.11 layer */ - ieee80211_input(ic, m, ni, desc->rssi, 0); + ieee80211_input(ic, m, ni, desc->rssi, -95/*XXX*/, 0); /* give rssi to the rate adatation algorithm */ rn = (struct ral_node *)ni; @@ -1352,25 +1391,6 @@ /* node is no longer needed */ ieee80211_free_node(ni); - data->m = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); - if (data->m == NULL) { - device_printf(sc->sc_dev, - "could not allocate rx mbuf\n"); - break; - } - - error = bus_dmamap_load(sc->rxq.data_dmat, data->map, - mtod(data->m, void *), MCLBYTES, ral_dma_map_addr, - &physaddr, 0); - if (error != 0) { - device_printf(sc->sc_dev, - "could not load rx buf DMA map\n"); - m_freem(data->m); - data->m = NULL; - break; - } - - desc->physaddr = htole32(physaddr); skip: desc->flags = htole32(RAL_RX_BUSY); DPRINTFN(15, ("decryption done idx=%u\n", sc->rxq.cur_decrypt)); @@ -1567,33 +1587,18 @@ ral_txtime(int len, int rate, uint32_t flags) { uint16_t txtime; - int ceil, dbps; if (RAL_RATE_IS_OFDM(rate)) { - /* - * OFDM TXTIME calculation. - * From IEEE Std 802.11a-1999, pp. 37. - */ - dbps = rate * 2; /* data bits per OFDM symbol */ - - ceil = (16 + 8 * len + 6) / dbps; - if ((16 + 8 * len + 6) % dbps != 0) - ceil++; - - txtime = 16 + 4 + 4 * ceil + 6; + /* IEEE Std 802.11a-1999, pp. 37 */ + txtime = (8 + 4 * len + 3 + rate - 1) / rate; + txtime = 16 + 4 + 4 * txtime + 6; } else { - /* - * High Rate TXTIME calculation. - * From IEEE Std 802.11b-1999, pp. 28. - */ - ceil = (8 * len * 2) / rate; - if ((8 * len * 2) % rate != 0) - ceil++; - + /* IEEE Std 802.11b-1999, pp. 28 */ + txtime = (16 * len + rate - 1) / rate; if (rate != 2 && (flags & IEEE80211_F_SHPREAMBLE)) - txtime = 72 + 24 + ceil; + txtime += 72 + 24; else - txtime = 144 + 48 + ceil; + txtime += 144 + 48; } return txtime; ==== //depot/projects/wifi/sys/dev/usb/if_ural.c#7 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/usb/if_ural.c,v 1.16 2005/09/19 18:19:22 damien Exp $ */ +/* $FreeBSD: src/sys/dev/usb/if_ural.c,v 1.21 2005/11/19 15:08:05 damien Exp $ */ /*- * Copyright (c) 2005 @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_ural.c,v 1.16 2005/09/19 18:19:22 damien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_ural.c,v 1.21 2005/11/19 15:08:05 damien Exp $"); /*- * Ralink Technology RT2500USB chipset driver @@ -70,7 +70,7 @@ #ifdef USB_DEBUG #define DPRINTF(x) do { if (uraldebug > 0) logprintf x; } while (0) #define DPRINTFN(n, x) do { if (uraldebug >= (n)) logprintf x; } while (0) -int uraldebug = 2; +int uraldebug = 0; SYSCTL_NODE(_hw_usb, OID_AUTO, ural, CTLFLAG_RW, 0, "USB ural"); SYSCTL_INT(_hw_usb_ural, OID_AUTO, debug, CTLFLAG_RW, &uraldebug, 0, "ural debug level"); @@ -158,6 +158,13 @@ Static void ural_set_rxantenna(struct ural_softc *, int); Static void ural_init(void *); Static void ural_stop(void *); +Static void ural_amrr_start(struct ural_softc *, + struct ieee80211_node *); +Static void ural_amrr_timeout(void *); +Static void ural_amrr_update(usbd_xfer_handle, usbd_private_handle, + usbd_status status); +Static void ural_ratectl(struct ural_amrr *, + struct ieee80211_node *); /* * Supported rates for 802.11a/b/g modes (in 500Kbps unit). @@ -410,6 +417,7 @@ MTX_DEF | MTX_RECURSE); usb_init_task(&sc->sc_task, ural_task, sc); + callout_init(&sc->amrr_ch, 0); /* retrieve RT2570 rev. no */ sc->asic_rev = ural_read(sc, RAL_MAC_CSR0); @@ -520,6 +528,7 @@ struct ifnet *ifp = ic->ic_ifp; usb_rem_task(sc->sc_udev, &sc->sc_task); + callout_stop(&sc->amrr_ch); if (sc->sc_rx_pipeh != NULL) { usbd_abort_pipe(sc->sc_rx_pipeh); @@ -734,6 +743,12 @@ if (ic->ic_opmode != IEEE80211_M_MONITOR) ural_enable_tsf_sync(sc); + + /* enable automatic rate adaptation in STA mode */ + if (ic->ic_opmode == IEEE80211_M_STA && + ic->ic_fixed_rate == IEEE80211_FIXED_RATE_NONE) + ural_amrr_start(sc, ic->ic_bss); + break; default: @@ -749,6 +764,7 @@ struct ural_softc *sc = ic->ic_ifp->if_softc; usb_rem_task(sc->sc_udev, &sc->sc_task); + callout_stop(&sc->amrr_ch); /* do it in a process context */ sc->sc_state = nstate; @@ -810,7 +826,7 @@ struct ural_rx_desc *desc; struct ieee80211_frame *wh; struct ieee80211_node *ni; - struct mbuf *m; + struct mbuf *mnew, *m; int len; if (status != USBD_NORMAL_COMPLETION) { @@ -844,8 +860,17 @@ goto skip; } + mnew = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + if (mnew == NULL) { + ifp->if_ierrors++; + goto skip; + } + + m = data->m; + data->m = mnew; + data->buf = mtod(data->m, uint8_t *); + /* finalize mbuf */ - m = data->m; m->m_pkthdr.rcvif = ifp; m->m_pkthdr.len = m->m_len = (le32toh(desc->flags) >> 16) & 0xfff; m->m_flags |= M_HASFCS; /* hardware appends FCS */ @@ -854,20 +879,11 @@ ni = ieee80211_find_rxnode(ic, (struct ieee80211_frame_min *)wh); /* send the frame to the 802.11 layer */ - ieee80211_input(ic, m, ni, desc->rssi, 0); + ieee80211_input(ic, m, ni, desc->rssi, -95/*XXX*/, 0); /* node is no longer needed */ ieee80211_free_node(ni); - data->m = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); - if (data->m == NULL) { - printf("%s: could not allocate rx mbuf\n", - USBDEVNAME(sc->sc_dev)); - return; - } - - data->buf = mtod(data->m, uint8_t *); - DPRINTFN(15, ("rx done\n")); skip: /* setup a new transfer */ @@ -919,33 +935,18 @@ ural_txtime(int len, int rate, uint32_t flags) { uint16_t txtime; - int ceil, dbps; if (RAL_RATE_IS_OFDM(rate)) { - /* - * OFDM TXTIME calculation. - * From IEEE Std 802.11a-1999, pp. 37. - */ - dbps = rate * 2; /* data bits per OFDM symbol */ - - ceil = (16 + 8 * len + 6) / dbps; - if ((16 + 8 * len + 6) % dbps != 0) - ceil++; - - txtime = 16 + 4 + 4 * ceil + 6; + /* IEEE Std 802.11a-1999, pp. 37 */ + txtime = (8 + 4 * len + 3 + rate - 1) / rate; + txtime = 16 + 4 + 4 * txtime + 6; } else { - /* - * High Rate TXTIME calculation. - * From IEEE Std 802.11b-1999, pp. 28. - */ - ceil = (8 * len * 2) / rate; - if ((8 * len * 2) % rate != 0) - ceil++; - + /* IEEE Std 802.11b-1999, pp. 28 */ + txtime = (16 * len + rate - 1) / rate; if (rate != 2 && (flags & IEEE80211_F_SHPREAMBLE)) - txtime = 72 + 24 + ceil; + txtime += 72 + 24; else - txtime = 144 + 48 + ceil; + txtime += 144 + 48; } return txtime; @@ -1170,7 +1171,6 @@ wh = mtod(m0, struct ieee80211_frame *); - /* XXX should do automatic rate adaptation */ if (ic->ic_fixed_rate != IEEE80211_FIXED_RATE_NONE) rate = ic->ic_fixed_rate; else @@ -1906,7 +1906,7 @@ struct ifnet *ifp = ic->ic_ifp; struct ieee80211_key *wk; struct ural_rx_data *data; - uint16_t sta[11], tmp; + uint16_t tmp; usbd_status error; int i, ntries; @@ -1942,7 +1942,7 @@ ural_set_chan(sc, ic->ic_curchan); /* clear statistic registers (STA_CSR0 to STA_CSR10) */ - ural_read_multi(sc, RAL_STA_CSR0, sta, sizeof sta); + ural_read_multi(sc, RAL_STA_CSR0, sc->sta, sizeof sc->sta); ural_set_txantenna(sc, sc->tx_ant); ural_set_rxantenna(sc, sc->rx_ant); @@ -1960,6 +1960,16 @@ } /* + * Allocate xfer for AMRR statistics requests. + */ + sc->amrr_xfer = usbd_alloc_xfer(sc->sc_udev); + if (sc->amrr_xfer == NULL) { + printf("%s: could not allocate AMRR xfer\n", + USBDEVNAME(sc->sc_dev)); + goto fail; + } + + /* * Open Tx and Rx USB bulk pipes. */ error = usbd_open_pipe(sc->sc_iface, sc->sc_tx_no, USBD_EXCLUSIVE_USE, @@ -2052,6 +2062,11 @@ ural_write(sc, RAL_MAC_CSR1, RAL_RESET_ASIC | RAL_RESET_BBP); ural_write(sc, RAL_MAC_CSR1, 0); + if (sc->amrr_xfer != NULL) { + usbd_free_xfer(sc->amrr_xfer); + sc->amrr_xfer = NULL; + } + if (sc->sc_rx_pipeh != NULL) { usbd_abort_pipe(sc->sc_rx_pipeh); usbd_close_pipe(sc->sc_rx_pipeh); @@ -2068,4 +2083,149 @@ ural_free_tx_list(sc); } +Static void +ural_amrr_start(struct ural_softc *sc, struct ieee80211_node *ni) +{ + struct ural_amrr *amrr = &sc->amrr; + int i; + + /* clear statistic registers (STA_CSR0 to STA_CSR10) */ + ural_read_multi(sc, RAL_STA_CSR0, sc->sta, sizeof sc->sta); + + amrr->success = 0; + amrr->recovery = 0; + amrr->success_threshold = 0; + amrr->txcnt = amrr->retrycnt = 0; + + /* set rate to some reasonable initial value */ + for (i = ni->ni_rates.rs_nrates - 1; + i > 0 && (ni->ni_rates.rs_rates[i] & IEEE80211_RATE_VAL) > 72; + i--); + + ni->ni_txrate = i; + + callout_reset(&sc->amrr_ch, hz, ural_amrr_timeout, sc); +} + +Static void +ural_amrr_timeout(void *arg) +{ + struct ural_softc *sc = (struct ural_softc *)arg; + usb_device_request_t req; + int s; + + s = splusb(); + + /* + * Asynchronously read statistic registers (cleared by read). + */ + req.bmRequestType = UT_READ_VENDOR_DEVICE; + req.bRequest = RAL_READ_MULTI_MAC; + USETW(req.wValue, 0); + USETW(req.wIndex, RAL_STA_CSR0); + USETW(req.wLength, sizeof sc->sta); + + usbd_setup_default_xfer(sc->amrr_xfer, sc->sc_udev, sc, + USBD_DEFAULT_TIMEOUT, &req, sc->sta, sizeof sc->sta, 0, + ural_amrr_update); + (void)usbd_transfer(sc->amrr_xfer); + + splx(s); +} + +Static void +ural_amrr_update(usbd_xfer_handle xfer, usbd_private_handle priv, + usbd_status status) +{ + struct ural_softc *sc = (struct ural_softc *)priv; + struct ural_amrr *amrr = &sc->amrr; + + if (status != USBD_NORMAL_COMPLETION) + return; + + amrr->retrycnt = + sc->sta[7] + /* TX one-retry ok count */ + sc->sta[8] + /* TX more-retry ok count */ + sc->sta[8]; /* TX retry-fail count */ + + amrr->txcnt = + amrr->retrycnt + + sc->sta[6]; /* TX no-retry ok count */ + + ural_ratectl(amrr, sc->sc_ic.ic_bss); + + callout_reset(&sc->amrr_ch, hz, ural_amrr_timeout, sc); +} + +/*- + * Naive implementation of the Adaptive Multi Rate Retry algorithm: + * "IEEE 802.11 Rate Adaptation: A Practical Approach" + * Mathieu Lacage, Hossein Manshaei, Thierry Turletti + * INRIA Sophia - Projet Planete + * http://www-sop.inria.fr/rapports/sophia/RR-5208.html + * + * This algorithm is particularly well suited for ural since it does not + * require per-frame retry statistics. Note however that since h/w does + * not provide per-frame stats, we can't do per-node rate adaptation and + * thus automatic rate adaptation is only enabled in STA operating mode. + */ + +#define URAL_AMRR_MIN_SUCCESS_THRESHOLD 1 +#define URAL_AMRR_MAX_SUCCESS_THRESHOLD 10 + +#define is_success(amrr) \ + ((amrr)->retrycnt < (amrr)->txcnt / 10) +#define is_failure(amrr) \ + ((amrr)->retrycnt > (amrr)->txcnt / 3) +#define is_enough(amrr) \ + ((amrr)->txcnt > 10) +#define is_min_rate(ni) \ + ((ni)->ni_txrate == 0) +#define is_max_rate(ni) \ + ((ni)->ni_txrate == (ni)->ni_rates.rs_nrates - 1) +#define increase_rate(ni) \ + ((ni)->ni_txrate++) +#define decrease_rate(ni) \ + ((ni)->ni_txrate--) +#define reset_cnt(amrr) \ + do { (amrr)->txcnt = (amrr)->retrycnt = 0; } while (0) +Static void +ural_ratectl(struct ural_amrr *amrr, struct ieee80211_node *ni) +{ + int need_change = 0; + + if (is_success(amrr) && is_enough(amrr)) { + amrr->success++; + if (amrr->success >= amrr->success_threshold && + !is_max_rate(ni)) { + amrr->recovery = 1; + amrr->success = 0; + increase_rate(ni); + need_change = 1; + } else { + amrr->recovery = 0; + } + } else if (is_failure(amrr)) { + amrr->success = 0; + if (!is_min_rate(ni)) { + if (amrr->recovery) { + amrr->success_threshold *= 2; + if (amrr->success_threshold > + URAL_AMRR_MAX_SUCCESS_THRESHOLD) + amrr->success_threshold = + URAL_AMRR_MAX_SUCCESS_THRESHOLD; + } else { + amrr->success_threshold = + URAL_AMRR_MIN_SUCCESS_THRESHOLD; + } + decrease_rate(ni); + need_change = 1; + } + amrr->recovery = 0; /* original paper was incorrect */ + } + + if (is_enough(amrr) || need_change) + reset_cnt(amrr); +} + DRIVER_MODULE(ural, uhub, ural_driver, ural_devclass, usbd_driver_load, 0); ==== //depot/projects/wifi/sys/dev/wi/if_wi.c#20 (text+ko) ==== @@ -62,7 +62,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/wi/if_wi.c,v 1.193 2005/10/02 04:29:08 avatar Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/wi/if_wi.c,v 1.194 2005/11/11 16:04:56 ru Exp $"); #define WI_HERMES_AUTOINC_WAR /* Work around data write autoinc bug. */ #define WI_HERMES_STATS_WAR /* Work around stats counter bug. */ @@ -659,8 +659,6 @@ struct wi_joinreq join; int i; int error = 0, wasenabled; - struct ifaddr *ifa; - struct sockaddr_dl *sdl; WI_LOCK_DECL(); WI_LOCK(sc); @@ -724,9 +722,7 @@ wi_write_ssid(sc, WI_RID_OWN_SSID, ic->ic_des_ssid[0].ssid, ic->ic_des_ssid[0].len); - ifa = ifaddr_byindex(ifp->if_index); - sdl = (struct sockaddr_dl *) ifa->ifa_addr; - IEEE80211_ADDR_COPY(ic->ic_myaddr, LLADDR(sdl)); + IEEE80211_ADDR_COPY(ic->ic_myaddr, IF_LLADDR(ifp)); wi_write_rid(sc, WI_RID_MAC_NODE, ic->ic_myaddr, IEEE80211_ADDR_LEN); if (ic->ic_caps & IEEE80211_C_PMGT) @@ -1578,7 +1574,7 @@ /* * Send frame up for processing. */ - ieee80211_input(ic, m, ni, rssi, rstamp); + ieee80211_input(ic, m, ni, rssi, -95/*XXXXwi_rx_silence?*/, rstamp); /* * The frame may have caused the node to be marked for * reclamation (e.g. in response to a DEAUTH message) From owner-p4-projects@FreeBSD.ORG Thu Nov 24 01:47:54 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06A7F16A422; Thu, 24 Nov 2005 01:47:54 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 CE4E316A41F for ; Thu, 24 Nov 2005 01:47:53 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B9A1243D79 for ; Thu, 24 Nov 2005 01:47:42 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAO1lgmX029611 for ; Thu, 24 Nov 2005 01:47:42 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAO1lgoe029608 for perforce@freebsd.org; Thu, 24 Nov 2005 01:47:42 GMT (envelope-from sam@freebsd.org) Date: Thu, 24 Nov 2005 01:47:42 GMT Message-Id: <200511240147.jAO1lgoe029608@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87164 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 01:47:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=87164 Change 87164 by sam@sam_ebb on 2005/11/24 01:47:36 change assertion so we don't panic in monitor mode Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_node.c#67 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#67 (text+ko) ==== @@ -1720,9 +1720,7 @@ "[%s] station with aid %d leaves\n", ether_sprintf(ni->ni_macaddr), IEEE80211_NODE_AID(ni)); - KASSERT(ic->ic_opmode == IEEE80211_M_HOSTAP || - ic->ic_opmode == IEEE80211_M_IBSS || - ic->ic_opmode == IEEE80211_M_AHDEMO, + KASSERT(ic->ic_opmode != IEEE80211_M_STA, ("unexpected operating mode %u", ic->ic_opmode)); /* * If node wasn't previously associated all From owner-p4-projects@FreeBSD.ORG Thu Nov 24 01:48:45 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA93F16A421; Thu, 24 Nov 2005 01:48:44 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 ADA6716A41F for ; Thu, 24 Nov 2005 01:48:44 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4D28043D67 for ; Thu, 24 Nov 2005 01:48:44 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAO1mi3q029719 for ; Thu, 24 Nov 2005 01:48:44 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAO1mhCq029716 for perforce@freebsd.org; Thu, 24 Nov 2005 01:48:43 GMT (envelope-from sam@freebsd.org) Date: Thu, 24 Nov 2005 01:48:43 GMT Message-Id: <200511240148.jAO1mhCq029716@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87165 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 01:48:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=87165 Change 87165 by sam@sam_ebb on 2005/11/24 01:48:18 explicitly sync scanner state when we move directly to RUN state (i.e. w/o scanning) Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_proto.c#38 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan.c#6 edit .. //depot/projects/wifi/sys/net80211/ieee80211_scan.h#4 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_proto.c#38 (text+ko) ==== @@ -1011,9 +1011,11 @@ ic->ic_opmode == IEEE80211_M_AHDEMO) && ic->ic_des_chan != IEEE80211_CHAN_ANYC) { /* - * AP operation and we already have a channel; - * bypass the scan and startup immediately. + * Already have a channel; bypass the + * scan and startup immediately. Because + * of this explicitly sync the scanner state. */ + ieee80211_scan_update(ic); ieee80211_create_ibss(ic, ic->ic_des_chan); } else { ieee80211_check_scan(ic, @@ -1143,8 +1145,10 @@ ic->ic_opmode == IEEE80211_M_HOSTAP) { /* * Already have a channel; bypass the - * scan and startup immediately. + * scan and startup immediately. Because + * of this explicitly sync the scanner state. */ + ieee80211_scan_update(ic); ieee80211_create_ibss(ic, ic->ic_curchan); break; } ==== //depot/projects/wifi/sys/net80211/ieee80211_scan.c#6 (text+ko) ==== @@ -193,6 +193,45 @@ scanners[m] = NULL; } +/* + * Update common scanner state to reflect the current + * operating mode. This is called when the state machine + * is transitioned to RUN state w/o scanning--e.g. when + * operating in monitor mode. The purpose of this is to + * ensure later callbacks find ss_ops set to properly + * reflect current operating mode. + */ +int +ieee80211_scan_update(struct ieee80211com *ic) +{ + struct ieee80211_scan_state *ss = ic->ic_scan; + const struct ieee80211_scanner *scan; + + scan = ieee80211_scanner_get(ic->ic_opmode); + IEEE80211_LOCK(ic); + if (scan == NULL) { + IEEE80211_DPRINTF(ic, IEEE80211_MSG_SCAN, + "%s: no scanner support for mode %u\n", + __func__, ic->ic_opmode); + /* XXX stat */ + } + ss->ss_ic = ic; + if (ss->ss_ops != scan) { + /* switch scanners; detach old, attach new */ + if (ss->ss_ops != NULL) + ss->ss_ops->scan_detach(ss); + if (scan != NULL && !scan->scan_attach(ss)) { + /* XXX attach failure */ + /* XXX stat+msg */ + ss->ss_ops = NULL; + } else + ss->ss_ops = scan; + } + IEEE80211_UNLOCK(ic); + + return (scan != NULL); +} + static void change_channel(struct ieee80211com *ic, struct ieee80211_channel *chan) ==== //depot/projects/wifi/sys/net80211/ieee80211_scan.h#4 (text+ko) ==== @@ -80,6 +80,7 @@ void ieee80211_scan_dump_channels(const struct ieee80211_scan_state *); +int ieee80211_scan_update(struct ieee80211com *); #define IEEE80211_SCAN_FOREVER 0x7fffffff int ieee80211_start_scan(struct ieee80211com *, int flags, u_int duration, u_int nssid, const struct ieee80211_scan_ssid ssids[]); From owner-p4-projects@FreeBSD.ORG Thu Nov 24 05:12:51 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 49C9E16A421; Thu, 24 Nov 2005 05:12:51 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 0D37116A41F for ; Thu, 24 Nov 2005 05:12:51 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ACFD643D46 for ; Thu, 24 Nov 2005 05:12:50 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAO5CoMZ048544 for ; Thu, 24 Nov 2005 05:12:50 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAO5Co46048541 for perforce@freebsd.org; Thu, 24 Nov 2005 05:12:50 GMT (envelope-from sam@freebsd.org) Date: Thu, 24 Nov 2005 05:12:50 GMT Message-Id: <200511240512.jAO5Co46048541@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87168 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 05:12:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=87168 Change 87168 by sam@sam_ebb on 2005/11/24 05:11:53 pull nexttbtt forward when joining an existing ibss Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#113 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#113 (text+ko) ==== @@ -2570,11 +2570,14 @@ static void ath_beacon_config(struct ath_softc *sc) { -#define TSF_TO_TU(_h,_l) (((_h) << 22) | ((_l) >> 10)) +#define TSF_TO_TU(_h,_l) \ + ((((u_int32_t)(_h)) << 22) | (((u_int32_t)(_l)) >> 10)) +#define FUDGE 2 struct ath_hal *ah = sc->sc_ah; struct ieee80211com *ic = &sc->sc_ic; struct ieee80211_node *ni = ic->ic_bss; - u_int32_t nexttbtt, intval; + u_int32_t nexttbtt, intval, tsftu; + u_int64_t tsf; /* extract tstamp from last beacon and convert to TU */ nexttbtt = TSF_TO_TU(LE_READ_4(ni->ni_tstamp.data + 4), @@ -2589,8 +2592,6 @@ __func__, nexttbtt, intval, ni->ni_intval); if (ic->ic_opmode == IEEE80211_M_STA) { HAL_BEACON_STATE bs; - u_int64_t tsf; - u_int32_t tsftu; int dtimperiod, dtimcount; int cfpperiod, cfpcount; @@ -2606,13 +2607,12 @@ dtimcount = 0; /* XXX? */ cfpperiod = 1; /* NB: no PCF support yet */ cfpcount = 0; -#define FUDGE 2 /* * Pull nexttbtt forward to reflect the current * TSF and calculate dtim+cfp state for the result. */ tsf = ath_hal_gettsf64(ah); - tsftu = TSF_TO_TU((u_int32_t)(tsf>>32), (u_int32_t)tsf) + FUDGE; + tsftu = TSF_TO_TU(tsf>>32, tsf) + FUDGE; do { nexttbtt += intval; if (--dtimcount < 0) { @@ -2621,7 +2621,6 @@ cfpcount = cfpperiod - 1; } } while (nexttbtt < tsftu); -#undef FUDGE memset(&bs, 0, sizeof(bs)); bs.bs_intval = intval; bs.bs_nexttbtt = nexttbtt; @@ -2703,6 +2702,17 @@ intval |= HAL_BEACON_ENA; if (!sc->sc_hasveol) sc->sc_imask |= HAL_INT_SWBA; + if ((intval & HAL_BEACON_RESET_TSF) == 0) { + /* + * Pull nexttbtt forward to reflect + * the current TSF. + */ + tsf = ath_hal_gettsf64(ah); + tsftu = TSF_TO_TU(tsf>>32, tsf) + FUDGE; + do { + nexttbtt += intval; + } while (nexttbtt < tsftu); + } ath_beaconq_config(sc); } else if (ic->ic_opmode == IEEE80211_M_HOSTAP) { /* @@ -2724,6 +2734,7 @@ ath_beacon_proc(sc, 0); } sc->sc_syncbeacon = 0; +#undef FUDGE #undef TSF_TO_TU } From owner-p4-projects@FreeBSD.ORG Thu Nov 24 05:13:53 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D75616A421; Thu, 24 Nov 2005 05:13:53 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 0F2EA16A41F for ; Thu, 24 Nov 2005 05:13:53 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 70D4543D66 for ; Thu, 24 Nov 2005 05:13:52 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAO5Dqeu048649 for ; Thu, 24 Nov 2005 05:13:52 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAO5Dqi4048646 for perforce@freebsd.org; Thu, 24 Nov 2005 05:13:52 GMT (envelope-from sam@freebsd.org) Date: Thu, 24 Nov 2005 05:13:52 GMT Message-Id: <200511240513.jAO5Dqi4048646@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87169 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 05:13:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=87169 Change 87169 by sam@sam_ebb on 2005/11/24 05:12:58 include local tsf in rx radiotap header Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#114 edit .. //depot/projects/wifi/sys/dev/ath/if_athioctl.h#12 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#114 (text+ko) ==== @@ -3070,14 +3070,11 @@ /* * Extend 15-bit time stamp from rx descriptor to - * a full 64-bit TSF using the current h/w TSF. + * a full 64-bit TSF using the specified TSF. */ static __inline u_int64_t -ath_extend_tsf(struct ath_hal *ah, u_int32_t rstamp) +ath_extend_tsf(u_int32_t rstamp, u_int64_t tsf) { - u_int64_t tsf; - - tsf = ath_hal_gettsf64(ah); if ((tsf & 0x7fff) < rstamp) tsf -= 0x8000; return ((tsf &~ 0x7fff) | rstamp); @@ -3115,7 +3112,8 @@ case IEEE80211_FC0_SUBTYPE_PROBE_RESP: if (ic->ic_opmode == IEEE80211_M_IBSS && ic->ic_state == IEEE80211_S_RUN) { - u_int64_t tsf = ath_extend_tsf(sc->sc_ah, rstamp); + u_int64_t tsf = ath_extend_tsf(rstamp, + ath_hal_gettsf64(sc->sc_ah)); /* * Handle ibss merge as needed; check the tsf on the * frame before attempting the merge. The 802.11 spec @@ -3172,12 +3170,14 @@ int len, type, ngood, noise; u_int phyerr; HAL_STATUS status; + u_int64_t tsf; NET_LOCK_GIANT(); /* XXX */ DPRINTF(sc, ATH_DEBUG_RX_PROC, "%s: pending %u\n", __func__, npending); ngood = 0; noise = ath_hal_getchannoise(ah, &sc->sc_curchan); + tsf = ath_hal_gettsf64(ah); do { bf = STAILQ_FIRST(&sc->sc_rxbuf); if (bf == NULL) { /* NB: shouldn't happen */ @@ -3347,14 +3347,15 @@ m_freem(m); goto rx_next; } + sc->sc_rx_th.wr_tsf = htole64( + ath_extend_tsf(ds->ds_rxstat.rs_tstamp, tsf)); rix = ds->ds_rxstat.rs_rate; sc->sc_rx_th.wr_flags = sc->sc_hwmap[rix].rxflags; sc->sc_rx_th.wr_rate = sc->sc_hwmap[rix].ieeerate; - sc->sc_rx_th.wr_antenna = ds->ds_rxstat.rs_antenna; nf = ath_hal_getchannoise(ah, &sc->sc_curchan); sc->sc_rx_th.wr_antsignal = ds->ds_rxstat.rs_rssi + nf; sc->sc_rx_th.wr_antnoise = nf; - /* XXX TSF */ + sc->sc_rx_th.wr_antenna = ds->ds_rxstat.rs_antenna; bpf_mtap2(sc->sc_drvbpf, &sc->sc_rx_th, sc->sc_rx_th_len, m); @@ -3442,7 +3443,7 @@ /* rx signal state monitoring */ ath_hal_rxmonitor(ah, &sc->sc_halstats, &sc->sc_curchan); if (ngood) - sc->sc_lastrx = ath_hal_gettsf64(ah); + sc->sc_lastrx = tsf; NET_UNLOCK_GIANT(); /* XXX */ #undef PA2DESC ==== //depot/projects/wifi/sys/dev/ath/if_athioctl.h#12 (text+ko) ==== @@ -136,6 +136,7 @@ * Radio capture format. */ #define ATH_RX_RADIOTAP_PRESENT ( \ + (1 << IEEE80211_RADIOTAP_TSFT) | \ (1 << IEEE80211_RADIOTAP_FLAGS) | \ (1 << IEEE80211_RADIOTAP_RATE) | \ (1 << IEEE80211_RADIOTAP_CHANNEL) | \ @@ -146,6 +147,7 @@ struct ath_rx_radiotap_header { struct ieee80211_radiotap_header wr_ihdr; + u_int64_t wr_tsf; u_int8_t wr_flags; /* XXX for padding */ u_int8_t wr_rate; u_int16_t wr_chan_freq; From owner-p4-projects@FreeBSD.ORG Thu Nov 24 12:27:20 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0439016A421; Thu, 24 Nov 2005 12:27:20 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 CA7A116A41F for ; Thu, 24 Nov 2005 12:27:19 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 451D543D6B for ; Thu, 24 Nov 2005 12:27:13 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOCRDIO073691 for ; Thu, 24 Nov 2005 12:27:13 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOCR5xV073688 for perforce@freebsd.org; Thu, 24 Nov 2005 12:27:05 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 12:27:05 GMT Message-Id: <200511241227.jAOCR5xV073688@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87177 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 12:27:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=87177 Change 87177 by rwatson@rwatson_zoo on 2005/11/24 12:26:34 Integrate netsmp branch. Affected files ... .. //depot/projects/netsmp/src/sys/alpha/alpha/clock.c#2 integrate .. //depot/projects/netsmp/src/sys/alpha/alpha/mp_machdep.c#2 integrate .. //depot/projects/netsmp/src/sys/alpha/alpha/pmap.c#5 integrate .. //depot/projects/netsmp/src/sys/alpha/conf/DEFAULTS#1 branch .. //depot/projects/netsmp/src/sys/alpha/conf/GENERIC#3 integrate .. //depot/projects/netsmp/src/sys/alpha/include/smp.h#2 integrate .. //depot/projects/netsmp/src/sys/amd64/acpica/madt.c#4 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/apic_vector.S#3 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/identcpu.c#3 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/io_apic.c#4 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/local_apic.c#3 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/machdep.c#3 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/mp_machdep.c#5 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/pmap.c#9 integrate .. //depot/projects/netsmp/src/sys/amd64/amd64/trap.c#4 integrate .. //depot/projects/netsmp/src/sys/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/netsmp/src/sys/amd64/conf/GENERIC#5 integrate .. //depot/projects/netsmp/src/sys/amd64/conf/NOTES#5 integrate .. //depot/projects/netsmp/src/sys/amd64/ia32/ia32_signal.c#3 integrate .. //depot/projects/netsmp/src/sys/amd64/include/apicvar.h#2 integrate .. //depot/projects/netsmp/src/sys/amd64/include/intr_machdep.h#3 integrate .. //depot/projects/netsmp/src/sys/amd64/linux32/linux32_sysvec.c#4 integrate .. //depot/projects/netsmp/src/sys/arm/arm/cpufunc_asm_arm9.S#2 integrate .. //depot/projects/netsmp/src/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/netsmp/src/sys/arm/arm/identcpu.c#2 integrate .. //depot/projects/netsmp/src/sys/arm/arm/machdep.c#3 integrate .. //depot/projects/netsmp/src/sys/arm/arm/pmap.c#4 integrate .. //depot/projects/netsmp/src/sys/arm/include/armreg.h#2 integrate .. //depot/projects/netsmp/src/sys/arm/include/elf.h#2 integrate .. //depot/projects/netsmp/src/sys/arm/include/pcpu.h#2 integrate .. //depot/projects/netsmp/src/sys/arm/include/pmap.h#3 integrate .. //depot/projects/netsmp/src/sys/arm/xscale/i80321/iq31244_machdep.c#3 integrate .. //depot/projects/netsmp/src/sys/boot/forth/loader.conf#7 integrate .. //depot/projects/netsmp/src/sys/boot/forth/loader.conf.5#3 integrate .. //depot/projects/netsmp/src/sys/boot/i386/boot2/boot2.c#5 integrate .. //depot/projects/netsmp/src/sys/cam/scsi/scsi_cd.c#2 integrate .. //depot/projects/netsmp/src/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/netsmp/src/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/netsmp/src/sys/compat/ia32/ia32_sysvec.c#2 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/kern_ndis.c#4 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/kern_windrv.c#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/ndis_var.h#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/ntoskrnl_var.h#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/subr_hal.c#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/subr_ndis.c#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/subr_ntoskrnl.c#3 integrate .. //depot/projects/netsmp/src/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.alpha#3 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.amd64#4 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.arm#4 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.i386#3 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.ia64#3 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.pc98#3 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.powerpc#4 integrate .. //depot/projects/netsmp/src/sys/conf/Makefile.sparc64#3 integrate .. //depot/projects/netsmp/src/sys/conf/files#12 integrate .. //depot/projects/netsmp/src/sys/conf/files.amd64#4 integrate .. //depot/projects/netsmp/src/sys/conf/files.i386#6 integrate .. //depot/projects/netsmp/src/sys/conf/files.pc98#3 integrate .. //depot/projects/netsmp/src/sys/conf/files.powerpc#2 integrate .. //depot/projects/netsmp/src/sys/conf/files.sparc64#3 integrate .. //depot/projects/netsmp/src/sys/conf/ldscript.arm#2 integrate .. //depot/projects/netsmp/src/sys/conf/options#4 integrate .. //depot/projects/netsmp/src/sys/conf/options.i386#3 integrate .. //depot/projects/netsmp/src/sys/conf/options.pc98#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/CHANGES.txt#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acapps.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acconfig.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acdebug.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acdisasm.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acdispat.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acefi.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acenv.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acevents.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acexcep.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acfreebsd.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acgcc.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acglobal.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/achware.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acinterp.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/aclocal.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acmacros.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acnames.h#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acnamesp.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acobject.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acopcode.h#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acoutput.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acparser.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acpi.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acpica_prep.sh#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acpiosxf.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acpixf.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acresrc.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acstruct.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/actables.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/actbl.h#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/actbl1.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/actbl2.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/actypes.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/acutils.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/aecommon.h#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/aeexec.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/amlcode.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/amlresrc.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/common/adisasm.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/common/getopt.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslanalyze.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslcodegen.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslcompile.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslcompiler.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslcompiler.l#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslcompiler.y#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asldefine.h#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslerror.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslfiles.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslfold.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslglobal.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asllength.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asllisting.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslload.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asllookup.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslmain.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslmap.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslopcodes.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asloperands.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslopt.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslresource.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslrestype1.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslrestype2.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslstubs.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asltransform.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asltree.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/asltypes.h#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/compiler/aslutils.c#2 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbcmds.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbdisply.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbexec.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbfileio.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbhistry.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbinput.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbstats.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dbxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmbuffer.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmnames.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmobject.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmopcode.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmresrc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmresrcl.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmresrcs.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dmwalk.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsfield.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsinit.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsmethod.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsmthdat.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsobject.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsopcode.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dsutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dswexec.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dswload.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dswscope.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/dswstate.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evevent.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evgpe.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evgpeblk.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evmisc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evregion.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evrgnini.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evsci.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evxfevnt.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/evxfregn.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exconfig.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exconvrt.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/excreate.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exdump.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exfield.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exfldio.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exmisc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exmutex.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exnames.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exoparg1.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exoparg2.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exoparg3.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exoparg6.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exprep.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exregion.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exresnte.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exresolv.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exresop.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exstore.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exstoren.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exstorob.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exsystem.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/exutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/hwacpi.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/hwgpe.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/hwregs.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/hwsleep.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/hwtimer.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsaccess.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsalloc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsdump.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsdumpdv.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nseval.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsinit.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsload.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsnames.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsobject.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsparse.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nssearch.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nswalk.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsxfeval.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsxfname.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/nsxfobj.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/osunixxf.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psargs.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psloop.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psopcode.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psparse.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psscope.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/pstree.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/pswalk.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/psxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsaddr.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rscalc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rscreate.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsdump.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsinfo.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsio.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsirq.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rslist.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsmemory.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsmisc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/rsxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbconvrt.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbget.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbgetall.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbinstal.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbrsdt.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbutils.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/tbxfroot.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utalloc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utcache.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utclib.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utcopy.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utdebug.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utdelete.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/uteval.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utglobal.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utinit.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utmath.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utmisc.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utmutex.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utobject.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utstate.c#1 branch .. //depot/projects/netsmp/src/sys/contrib/dev/acpica/utxface.c#3 integrate .. //depot/projects/netsmp/src/sys/contrib/dev/oltr/if_oltr.c#5 integrate .. //depot/projects/netsmp/src/sys/contrib/pf/net/if_pflog.c#6 integrate .. //depot/projects/netsmp/src/sys/contrib/pf/net/if_pfsync.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/aac/aac.c#5 integrate .. //depot/projects/netsmp/src/sys/dev/aac/aac_pci.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/Osd/OsdSynch.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/Osd/OsdTable.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_battery.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_cmbat.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_hpet.c#1 branch .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_pci_link.c#5 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_pcib.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_resource.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpi_smbat.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/acpica/acpivar.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/aic7xxx/aicasm/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/dev/amr/amr.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/amr/amr_cam.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/amr/amrvar.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/an/if_an.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/arl/if_arl.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/ath/ath_rate/sample/sample.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/ath/if_ath.c#12 integrate .. //depot/projects/netsmp/src/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/netsmp/src/sys/dev/bfe/if_bfe.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/bktr/bktr_card.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/bktr/bktr_card.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/bktr/bktr_tuner.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/bktr/bktr_tuner.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/ciss/ciss.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/dc/if_dc.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/ed/if_ed.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/em/if_em.c#9 integrate .. //depot/projects/netsmp/src/sys/dev/em/if_em.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/em/if_em_hw.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/em/if_em_hw.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/em/if_em_osdep.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/ep/if_ep.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/ex/if_ex.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/fb/boot_font.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/fe/if_fe.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/fe/if_fe_pccard.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/fxp/if_fxp.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/gem/if_gem.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/hme/if_hme.c#11 integrate .. //depot/projects/netsmp/src/sys/dev/hptmv/entry.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/hwpmc/hwpmc_x86.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/ie/if_ie.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/if_ndis/if_ndis.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/ipw/if_ipw.c#9 integrate .. //depot/projects/netsmp/src/sys/dev/iwi/if_iwi.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/iwi/if_iwireg.h#5 integrate .. //depot/projects/netsmp/src/sys/dev/iwi/if_iwivar.h#5 integrate .. //depot/projects/netsmp/src/sys/dev/ixgb/if_ixgb.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/joy/joy.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/lge/if_lge.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/lge/if_lgereg.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/lnc/if_lnc.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/lnc/if_lnc_cbus.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/mpt/mpt.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/mpt/mpt_raid.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/my/if_my.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/nge/if_nge.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/nve/if_nve.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/nve/if_nvereg.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/ofw/ofw_bus_if.m#2 integrate .. //depot/projects/netsmp/src/sys/dev/ofw/ofw_bus_subr.c#1 branch .. //depot/projects/netsmp/src/sys/dev/ofw/ofw_bus_subr.h#1 branch .. //depot/projects/netsmp/src/sys/dev/ofw/openfirm.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/owi/if_ieee80211.h#2 delete .. //depot/projects/netsmp/src/sys/dev/owi/if_owi.c#7 delete .. //depot/projects/netsmp/src/sys/dev/owi/if_owi_pccard.c#3 delete .. //depot/projects/netsmp/src/sys/dev/owi/if_wireg.h#2 delete .. //depot/projects/netsmp/src/sys/dev/owi/if_wivar.h#2 delete .. //depot/projects/netsmp/src/sys/dev/pccbb/pccbbdevid.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/pci/pci.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/pdq/if_fea.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/pdq/pdq_freebsd.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/pdq/pdq_ifsubr.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/puc/puc.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/puc/pucdata.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/ral/if_ral.c#9 integrate .. //depot/projects/netsmp/src/sys/dev/ray/if_ray.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/re/if_re.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/rp/rp.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/sbni/if_sbni.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/si/si_pci.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/si/sireg.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/snc/dp83932.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/sound/isa/mss.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/sound/isa/sb16.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pci/als4000.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pci/es137x.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pci/ich.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pci/via8233.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/ac97.c#5 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/channel.c#5 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/dsp.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/feeder_fmt.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/feeder_rate.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/feeder_volume.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/sound/pcm/mixer.c#5 integrate .. //depot/projects/netsmp/src/sys/dev/sound/usb/uaudio.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/sound/usb/uaudio.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/sound/usb/uaudio_pcm.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/speaker/speaker.h#1 branch .. //depot/projects/netsmp/src/sys/dev/speaker/spkr.c#1 branch .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_externs.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_fwif.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_fwimg.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_init.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_intr.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_io.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_ioctl.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_misc.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_cl_share.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl_cam.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl_freebsd.c#4 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl_includes.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl_inline.h#1 branch .. //depot/projects/netsmp/src/sys/dev/twa/tw_osl_share.h#3 integrate .. //depot/projects/netsmp/src/sys/dev/tx/if_tx.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/txp/if_txp.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_aue.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_axe.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_cue.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_kue.c#7 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_rue.c#10 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_udav.c#9 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_ural.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/usb/if_uralvar.h#2 integrate .. //depot/projects/netsmp/src/sys/dev/usb/ubser.c#3 integrate .. //depot/projects/netsmp/src/sys/dev/usb/ulpt.c#2 integrate .. //depot/projects/netsmp/src/sys/dev/vge/if_vge.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/vx/if_vx.c#6 integrate .. //depot/projects/netsmp/src/sys/dev/wi/if_wi.c#12 integrate .. //depot/projects/netsmp/src/sys/dev/wl/if_wl.c#8 integrate .. //depot/projects/netsmp/src/sys/dev/xe/if_xe.c#7 integrate .. //depot/projects/netsmp/src/sys/fs/devfs/devfs_vnops.c#9 integrate .. //depot/projects/netsmp/src/sys/fs/msdosfs/msdosfs_vfsops.c#5 integrate .. //depot/projects/netsmp/src/sys/fs/smbfs/smbfs_smb.c#2 integrate .. //depot/projects/netsmp/src/sys/fs/smbfs/smbfs_vfsops.c#4 integrate .. //depot/projects/netsmp/src/sys/geom/geom_disk.c#3 integrate .. //depot/projects/netsmp/src/sys/geom/geom_disk.h#2 integrate .. //depot/projects/netsmp/src/sys/geom/geom_dump.c#2 integrate .. //depot/projects/netsmp/src/sys/geom/geom_gpt.c#4 integrate .. //depot/projects/netsmp/src/sys/geom/geom_subr.c#2 integrate .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum.c#3 integrate .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum.h#2 integrate .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum_drive.c#4 integrate .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum_move.c#1 branch .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum_rename.c#1 branch .. //depot/projects/netsmp/src/sys/geom/vinum/geom_vinum_rm.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/acpica/madt.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/conf/DEFAULTS#2 integrate .. //depot/projects/netsmp/src/sys/i386/conf/GENERIC#5 integrate .. //depot/projects/netsmp/src/sys/i386/conf/NOTES#6 integrate .. //depot/projects/netsmp/src/sys/i386/conf/PAE#4 integrate .. //depot/projects/netsmp/src/sys/i386/conf/XBOX#1 branch .. //depot/projects/netsmp/src/sys/i386/i386/apic_vector.s#3 integrate .. //depot/projects/netsmp/src/sys/i386/i386/identcpu.c#3 integrate .. //depot/projects/netsmp/src/sys/i386/i386/io_apic.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/i386/local_apic.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/i386/machdep.c#3 integrate .. //depot/projects/netsmp/src/sys/i386/i386/mp_machdep.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/i386/pmap.c#10 integrate .. //depot/projects/netsmp/src/sys/i386/i386/trap.c#3 integrate .. //depot/projects/netsmp/src/sys/i386/i386/vm_machdep.c#4 integrate .. //depot/projects/netsmp/src/sys/i386/include/apicvar.h#2 integrate .. //depot/projects/netsmp/src/sys/i386/include/intr_machdep.h#3 integrate .. //depot/projects/netsmp/src/sys/i386/include/smp.h#3 integrate .. //depot/projects/netsmp/src/sys/i386/include/smptests.h#3 delete .. //depot/projects/netsmp/src/sys/i386/include/speaker.h#2 integrate .. //depot/projects/netsmp/src/sys/i386/include/xbox.h#1 branch .. //depot/projects/netsmp/src/sys/i386/isa/clock.c#2 integrate .. //depot/projects/netsmp/src/sys/i386/isa/spkr.c#2 delete .. //depot/projects/netsmp/src/sys/i386/pci/pci_cfgreg.c#3 integrate .. //depot/projects/netsmp/src/sys/i386/xbox/pic16l.s#1 branch .. //depot/projects/netsmp/src/sys/i386/xbox/xbox.c#1 branch .. //depot/projects/netsmp/src/sys/i386/xbox/xboxfb.c#1 branch .. //depot/projects/netsmp/src/sys/ia64/conf/DEFAULTS#1 branch .. //depot/projects/netsmp/src/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/netsmp/src/sys/ia64/ia64/pmap.c#6 integrate .. //depot/projects/netsmp/src/sys/kern/imgact_elf.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/init_main.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/kern_acct.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_descrip.c#5 integrate .. //depot/projects/netsmp/src/sys/kern/kern_exec.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_exit.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/kern_fork.c#2 integrate .. //depot/projects/netsmp/src/sys/kern/kern_kse.c#5 integrate .. //depot/projects/netsmp/src/sys/kern/kern_ktrace.c#2 integrate .. //depot/projects/netsmp/src/sys/kern/kern_malloc.c#5 integrate .. //depot/projects/netsmp/src/sys/kern/kern_mbuf.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_proc.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_resource.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_sig.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/kern_thr.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_thread.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/kern_time.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/link_elf.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/subr_kdb.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/subr_pcpu.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/subr_power.c#2 integrate .. //depot/projects/netsmp/src/sys/kern/subr_rman.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/subr_sleepqueue.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/subr_trap.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/sys_process.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_mbuf.c#4 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_proto.c#2 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_socket.c#21 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_socket2.c#8 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_syscalls.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/uipc_usrreq.c#6 integrate .. //depot/projects/netsmp/src/sys/kern/vfs_aio.c#5 integrate .. //depot/projects/netsmp/src/sys/kern/vfs_mount.c#3 integrate .. //depot/projects/netsmp/src/sys/kern/vfs_subr.c#13 integrate .. //depot/projects/netsmp/src/sys/modules/Makefile#7 integrate .. //depot/projects/netsmp/src/sys/modules/acpi/acpi/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/modules/geom/geom_vinum/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/modules/i2c/controllers/pcf/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/modules/i2c/controllers/viapm/Makefile#2 integrate .. //depot/projects/netsmp/src/sys/modules/iwi/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/modules/md/Makefile#2 integrate .. //depot/projects/netsmp/src/sys/modules/oldcard/Makefile#2 delete .. //depot/projects/netsmp/src/sys/modules/owi/Makefile#2 delete .. //depot/projects/netsmp/src/sys/modules/speaker/Makefile#2 integrate .. //depot/projects/netsmp/src/sys/modules/twa/Makefile#3 integrate .. //depot/projects/netsmp/src/sys/net/fddi.h#2 integrate .. //depot/projects/netsmp/src/sys/net/if.c#18 integrate .. //depot/projects/netsmp/src/sys/net/if_arcsubr.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_arp.h#2 integrate .. //depot/projects/netsmp/src/sys/net/if_bridge.c#11 integrate .. //depot/projects/netsmp/src/sys/net/if_bridgevar.h#3 integrate .. //depot/projects/netsmp/src/sys/net/if_clone.c#3 integrate .. //depot/projects/netsmp/src/sys/net/if_clone.h#2 integrate .. //depot/projects/netsmp/src/sys/net/if_disc.c#3 integrate .. //depot/projects/netsmp/src/sys/net/if_ef.c#4 integrate .. //depot/projects/netsmp/src/sys/net/if_ethersubr.c#10 integrate .. //depot/projects/netsmp/src/sys/net/if_faith.c#5 integrate .. //depot/projects/netsmp/src/sys/net/if_fddisubr.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_fwsubr.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_gif.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_gre.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_iso88025subr.c#7 integrate .. //depot/projects/netsmp/src/sys/net/if_mib.c#3 integrate .. //depot/projects/netsmp/src/sys/net/if_ppp.c#6 integrate .. //depot/projects/netsmp/src/sys/net/if_stf.c#3 integrate .. //depot/projects/netsmp/src/sys/net/if_tap.c#5 integrate .. //depot/projects/netsmp/src/sys/net/if_var.h#13 integrate .. //depot/projects/netsmp/src/sys/net/if_vlan.c#12 integrate .. //depot/projects/netsmp/src/sys/net/iso88025.h#2 integrate .. //depot/projects/netsmp/src/sys/net/route.c#5 integrate .. //depot/projects/netsmp/src/sys/net/rtsock.c#10 integrate .. //depot/projects/netsmp/src/sys/net80211/ieee80211.c#5 integrate .. //depot/projects/netsmp/src/sys/net80211/ieee80211_freebsd.c#3 integrate .. //depot/projects/netsmp/src/sys/net80211/ieee80211_ioctl.c#9 integrate .. //depot/projects/netsmp/src/sys/net80211/ieee80211_output.c#6 integrate .. //depot/projects/netsmp/src/sys/net80211/ieee80211_var.h#5 integrate .. //depot/projects/netsmp/src/sys/netatalk/aarp.c#2 integrate .. //depot/projects/netsmp/src/sys/netatalk/at_proto.c#3 integrate .. //depot/projects/netsmp/src/sys/netatm/atm_if.c#4 integrate .. //depot/projects/netsmp/src/sys/netatm/atm_proto.c#2 integrate .. //depot/projects/netsmp/src/sys/netgraph/bluetooth/socket/ng_btsocket.c#2 integrate .. //depot/projects/netsmp/src/sys/netgraph/netgraph.h#7 integrate .. //depot/projects/netsmp/src/sys/netgraph/ng_base.c#7 integrate .. //depot/projects/netsmp/src/sys/netgraph/ng_eiface.c#4 integrate .. //depot/projects/netsmp/src/sys/netgraph/ng_ether.c#5 integrate .. //depot/projects/netsmp/src/sys/netgraph/ng_fec.c#6 integrate .. //depot/projects/netsmp/src/sys/netgraph/ng_socket.c#4 integrate .. //depot/projects/netsmp/src/sys/netinet/if_ether.c#7 integrate .. //depot/projects/netsmp/src/sys/netinet/igmp.c#5 integrate .. //depot/projects/netsmp/src/sys/netinet/in_gif.c#2 integrate .. //depot/projects/netsmp/src/sys/netinet/in_proto.c#3 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_carp.c#7 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_divert.c#2 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_fastfwd.c#7 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_fw2.c#8 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_icmp.c#3 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_input.c#5 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_mroute.c#3 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_options.c#1 branch .. //depot/projects/netsmp/src/sys/netinet/ip_options.h#1 branch .. //depot/projects/netsmp/src/sys/netinet/ip_output.c#10 integrate .. //depot/projects/netsmp/src/sys/netinet/ip_var.h#2 integrate .. //depot/projects/netsmp/src/sys/netinet/tcp_input.c#4 integrate .. //depot/projects/netsmp/src/sys/netinet/tcp_output.c#2 integrate .. //depot/projects/netsmp/src/sys/netinet/tcp_sack.c#3 integrate .. //depot/projects/netsmp/src/sys/netinet/tcp_subr.c#6 integrate .. //depot/projects/netsmp/src/sys/netinet/tcp_syncache.c#4 integrate .. //depot/projects/netsmp/src/sys/netinet/udp_usrreq.c#5 integrate .. //depot/projects/netsmp/src/sys/netinet6/in6.c#7 integrate .. //depot/projects/netsmp/src/sys/netinet6/in6_proto.c#4 integrate .. //depot/projects/netsmp/src/sys/netinet6/mld6.c#8 integrate .. //depot/projects/netsmp/src/sys/netipsec/ipsec_output.c#2 integrate .. //depot/projects/netsmp/src/sys/netipsec/keysock.c#2 integrate .. //depot/projects/netsmp/src/sys/netipx/ipx_ip.c#2 integrate .. //depot/projects/netsmp/src/sys/netipx/ipx_proto.c#3 integrate .. //depot/projects/netsmp/src/sys/netipx/spx_usrreq.c#4 integrate .. //depot/projects/netsmp/src/sys/netkey/keysock.c#2 integrate .. //depot/projects/netsmp/src/sys/netnatm/natm_proto.c#3 integrate .. //depot/projects/netsmp/src/sys/netsmb/smb_dev.c#3 integrate .. //depot/projects/netsmp/src/sys/nfsclient/nfs_bio.c#3 integrate .. //depot/projects/netsmp/src/sys/nfsclient/nfs_socket.c#5 integrate .. //depot/projects/netsmp/src/sys/nfsclient/nfs_subs.c#3 integrate .. //depot/projects/netsmp/src/sys/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/netsmp/src/sys/nfsclient/nfsm_subs.h#2 integrate .. //depot/projects/netsmp/src/sys/pc98/conf/DEFAULTS#2 integrate .. //depot/projects/netsmp/src/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/netsmp/src/sys/pc98/include/smptests.h#2 delete .. //depot/projects/netsmp/src/sys/pc98/pc98/machdep.c#4 integrate .. //depot/projects/netsmp/src/sys/pci/agp_amd64.c#3 integrate .. //depot/projects/netsmp/src/sys/pci/if_de.c#11 integrate .. //depot/projects/netsmp/src/sys/pci/if_devar.h#6 integrate .. //depot/projects/netsmp/src/sys/pci/if_pcn.c#12 integrate .. //depot/projects/netsmp/src/sys/pci/if_rl.c#8 integrate .. //depot/projects/netsmp/src/sys/pci/if_sf.c#10 integrate .. //depot/projects/netsmp/src/sys/pci/if_sis.c#9 integrate .. //depot/projects/netsmp/src/sys/pci/if_sk.c#9 integrate .. //depot/projects/netsmp/src/sys/pci/if_ste.c#10 integrate .. //depot/projects/netsmp/src/sys/pci/if_ti.c#8 integrate .. //depot/projects/netsmp/src/sys/pci/if_tl.c#8 integrate .. //depot/projects/netsmp/src/sys/pci/if_vr.c#9 integrate .. //depot/projects/netsmp/src/sys/pci/if_vrreg.h#3 integrate .. //depot/projects/netsmp/src/sys/pci/if_wb.c#10 integrate .. //depot/projects/netsmp/src/sys/pci/if_xl.c#10 integrate .. //depot/projects/netsmp/src/sys/powerpc/conf/DEFAULTS#1 branch .. //depot/projects/netsmp/src/sys/powerpc/conf/GENERIC#2 integrate .. //depot/projects/netsmp/src/sys/powerpc/include/mmuvar.h#1 branch .. //depot/projects/netsmp/src/sys/powerpc/include/pmap.h#2 integrate .. //depot/projects/netsmp/src/sys/powerpc/include/pte.h#2 integrate .. //depot/projects/netsmp/src/sys/powerpc/powerpc/machdep.c#4 integrate .. //depot/projects/netsmp/src/sys/powerpc/powerpc/mmu_if.m#1 branch .. //depot/projects/netsmp/src/sys/powerpc/powerpc/mmu_oea.c#1 branch .. //depot/projects/netsmp/src/sys/powerpc/powerpc/ofw_machdep.c#3 integrate .. //depot/projects/netsmp/src/sys/powerpc/powerpc/pmap.c#3 delete .. //depot/projects/netsmp/src/sys/powerpc/powerpc/pmap_dispatch.c#1 branch .. //depot/projects/netsmp/src/sys/powerpc/psim/ata_iobus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/central/central.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/conf/DEFAULTS#1 branch .. //depot/projects/netsmp/src/sys/sparc64/conf/GENERIC#3 integrate .. //depot/projects/netsmp/src/sys/sparc64/ebus/ebus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/fhc/fhc.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/fhc/fhc_central.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/fhc/fhc_nexus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/fhc/fhcvar.h#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/include/smp.h#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/pci/ofw_pcibus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/pci/psycho.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/pci/psychoreg.h#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/pci/psychovar.h#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/sbus/dma_sbus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/sparc64/mp_machdep.c#2 integrate .. //depot/projects/netsmp/src/sys/sparc64/sparc64/pmap.c#3 integrate .. //depot/projects/netsmp/src/sys/sys/ata.h#5 integrate .. //depot/projects/netsmp/src/sys/sys/bio.h#2 integrate .. //depot/projects/netsmp/src/sys/sys/event.h#3 integrate .. //depot/projects/netsmp/src/sys/sys/ktrace.h#2 integrate .. //depot/projects/netsmp/src/sys/sys/mbuf.h#4 integrate .. //depot/projects/netsmp/src/sys/sys/mdioctl.h#2 integrate .. //depot/projects/netsmp/src/sys/sys/mount.h#4 integrate .. //depot/projects/netsmp/src/sys/sys/param.h#7 integrate .. //depot/projects/netsmp/src/sys/sys/proc.h#6 integrate .. //depot/projects/netsmp/src/sys/sys/queue.h#3 integrate .. //depot/projects/netsmp/src/sys/sys/resource.h#2 integrate .. //depot/projects/netsmp/src/sys/sys/signal.h#5 integrate .. //depot/projects/netsmp/src/sys/sys/signalvar.h#4 integrate .. //depot/projects/netsmp/src/sys/sys/socketvar.h#7 integrate .. //depot/projects/netsmp/src/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/netsmp/src/sys/sys/sysent.h#3 integrate .. //depot/projects/netsmp/src/sys/sys/time.h#2 integrate .. //depot/projects/netsmp/src/sys/sys/wait.h#2 integrate .. //depot/projects/netsmp/src/sys/ufs/ffs/ffs_alloc.c#3 integrate .. //depot/projects/netsmp/src/sys/ufs/ffs/ffs_vfsops.c#6 integrate .. //depot/projects/netsmp/src/sys/ufs/ufs/ufs_extattr.c#3 integrate .. //depot/projects/netsmp/src/sys/vm/pmap.h#3 integrate .. //depot/projects/netsmp/src/sys/vm/vm_map.c#4 integrate .. //depot/projects/netsmp/src/sys/vm/vm_page.c#4 integrate .. //depot/projects/netsmp/src/sys/vm/vm_pageout.c#3 integrate .. //depot/projects/netsmp/src/sys/vm/vnode_pager.c#4 integrate .. //depot/projects/netsmp/src/tools/regression/geom_gpt/gctl.t#2 integrate .. //depot/projects/netsmp/src/tools/regression/sigqueue/Makefile#1 branch .. //depot/projects/netsmp/src/tools/regression/sigqueue/sigqtest1/Makefile#1 branch .. //depot/projects/netsmp/src/tools/regression/sigqueue/sigqtest1/sigqtest1.c#1 branch .. //depot/projects/netsmp/src/tools/regression/sigqueue/sigqtest2/Makefile#1 branch .. //depot/projects/netsmp/src/tools/regression/sigqueue/sigqtest2/sigqtest2.c#1 branch .. //depot/projects/netsmp/src/tools/regression/sockets/unix_passfd/Makefile#1 branch .. //depot/projects/netsmp/src/tools/regression/sockets/unix_passfd/unix_passfd.c#1 branch .. //depot/projects/netsmp/src/tools/regression/usr.bin/pkill/pgrep-t.t#2 integrate .. //depot/projects/netsmp/src/tools/regression/usr.bin/pkill/pkill-t.t#2 integrate Differences ... ==== //depot/projects/netsmp/src/sys/alpha/alpha/clock.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.39 2005/05/14 09:10:00 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.40 2005/11/20 01:31:29 marcel Exp $"); #include "opt_clock.h" @@ -475,31 +475,20 @@ * and the time of year clock (if any) provides the rest. */ void -inittodr(base) - time_t base; +inittodr(time_t base) { - register int days, yr; struct clocktime ct; - time_t deltat; - int badbase, clock_compat_osf1; - int s; struct timespec ts; - - if (base < 5*SECYR) { - printf("WARNING: preposterous time in filesystem"); - /* read the system clock anyway */ - base = 6*SECYR + 186*SECDAY + SECDAY/2; - badbase = 1; - } else - badbase = 0; + int clock_compat_osf1, todr_unreliable; + int days, yr; if (getenv_int("clock_compat_osf1", &clock_compat_osf1)) { if (clock_compat_osf1) clock_year_offset = UNIX_YEAR_OFFSET; } + todr_unreliable = 0; CLOCK_GET(clockdev, base, &ct); - clockinitted = 1; #ifdef DEBUG printf("readclock: %d/%d/%d/%d/%d/%d\n", ct.year, ct.mon, ct.day, @@ -508,7 +497,7 @@ ct.year += clock_year_offset; if (ct.year < 70) ct.year += 100; - + /* simple sanity checks */ if (ct.year < 70 || ct.mon < 1 || ct.mon > 12 || ct.day < 1 || ct.day > 31 || ct.hour > 23 || ct.min > 59 || ct.sec > 59) { @@ -516,48 +505,47 @@ * Believe the time in the filesystem for lack of * anything better, resetting the TODR. */ - s = splclock(); ts.tv_sec = base; - ts.tv_nsec = 0; - tc_setclock(&ts); - splx(s); - if (!badbase) { - printf("WARNING: preposterous clock chip time\n"); - resettodr(); - } - goto bad; + printf("WARNING: preposterous real-time clock"); + todr_unreliable = 1; + } else { + days = 0; + for (yr = 70; yr < ct.year; yr++) + days += LEAPYEAR(yr) ? 366 : 365; + days += dayyr[ct.mon - 1] + ct.day - 1; + if (LEAPYEAR(yr) && ct.mon > 2) + days++; + /* now have days since Jan 1, 1970; the rest is easy... */ + ts.tv_sec = days * SECDAY + ct.hour * SECHOUR + + ct.min * SECMIN + ct.sec; + if (wall_cmos_clock) + ts.tv_sec += adjkerntz; + /* + * The time base comes from a saved time, whereas the real- + * time clock is supposed to represent the current time. + * It is logically not possible for a saved time to be + * larger than the current time, so if that happens, assume + * the real-time clock is off. Warn when the real-time + * clock is off by two or more days. + */ + if (ts.tv_sec < base) { + ts.tv_sec = base; + days = (base - ts.tv_sec) / (60L * 60L * 24L); + if (days >= 2) { + printf("WARNING: real-time clock lost %d days", + days); + todr_unreliable = 1; + } + } } - days = 0; - for (yr = 70; yr < ct.year; yr++) - days += LEAPYEAR(yr) ? 366 : 365; - days += dayyr[ct.mon - 1] + ct.day - 1; - if (LEAPYEAR(yr) && ct.mon > 2) - days++; - /* now have days since Jan 1, 1970; the rest is easy... */ - s = splclock(); - ts.tv_sec = - days * SECDAY + ct.hour * SECHOUR + ct.min * SECMIN + ct.sec; - if (wall_cmos_clock) - ts.tv_sec += adjkerntz; ts.tv_nsec = 0; tc_setclock(&ts); - splx(s); + clockinitted = 1; - if (!badbase) { - /* - * See if we gained/lost two or more days; - * if so, assume something is amiss. - */ - deltat = ts.tv_sec - base; - if (deltat < 0) - deltat = -deltat; - if (deltat < 2 * SECDAY) - return; - printf("WARNING: clock %s %d days", - ts.tv_sec < base ? "lost" : "gained", deltat / SECDAY); + if (todr_unreliable) { + printf(" -- CHECK AND RESET THE DATE!\n"); + resettodr(); } -bad: - printf(" -- CHECK AND RESET THE DATE!\n"); } /* ==== //depot/projects/netsmp/src/sys/alpha/alpha/mp_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.56 2005/04/04 21:53:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.57 2005/11/03 21:08:19 jhb Exp $"); #include "opt_kstack_pages.h" @@ -62,6 +62,7 @@ static struct mtx ap_boot_mtx; u_int64_t boot_cpu_id; +struct pcb stoppcbs[MAXCPU]; static void release_aps(void *dummy); static int smp_cpu_enabled(struct pcs *pcsp); @@ -543,11 +544,12 @@ case IPI_STOP: CTR0(KTR_SMP, "IPI_STOP"); - atomic_set_int(&stopped_cpus, cpumask); + savectx(&stoppcbs[PCPU_GET(cpuid)]); + atomic_set_acq_int(&stopped_cpus, cpumask); while ((started_cpus & cpumask) == 0) - alpha_mb(); - atomic_clear_int(&started_cpus, cpumask); - atomic_clear_int(&stopped_cpus, cpumask); + cpu_spinwait(); + atomic_clear_rel_int(&started_cpus, cpumask); + atomic_clear_rel_int(&stopped_cpus, cpumask); break; } } ==== //depot/projects/netsmp/src/sys/alpha/alpha/pmap.c#5 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.181 2005/10/31 16:14:07 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.186 2005/11/20 06:09:47 alc Exp $"); #include #include @@ -186,8 +186,6 @@ #define PMAP_DIAGNOSTIC #endif -#define MINPV 2048 - #if 0 #define PMAP_DIAGNOSTIC #define PMAP_DEBUG @@ -319,10 +317,9 @@ */ static uma_zone_t pvzone; static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0; -int pmap_pagedaemon_waken; static PMAP_INLINE void free_pv_entry(pv_entry_t pv); -static pv_entry_t get_pv_entry(void); +static pv_entry_t get_pv_entry(pmap_t locked_pmap); static void alpha_protection_init(void); static void pmap_changebit(vm_page_t m, int bit, boolean_t setem); @@ -571,27 +568,18 @@ void pmap_init(void) { + int shpgperproc = PMAP_SHPGPERPROC; /* - * init the pv free list + * Initialize the address space (zone) for the pv entries. Set a + * high water mark so that the system can recover from excessive + * numbers of pv entries. */ - pvzone = uma_zcreate("PV ENTRY", sizeof (struct pv_entry), NULL, NULL, + pvzone = uma_zcreate("PV ENTRY", sizeof(struct pv_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE); - uma_prealloc(pvzone, MINPV); -} - -/* - * Initialize the address space (zone) for the pv_entries. Set a - * high water mark so that the system can recover from excessive - * numbers of pv entries. - */ -void -pmap_init2() -{ - int shpgperproc = PMAP_SHPGPERPROC; - TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); - pv_entry_max = shpgperproc * maxproc + vm_page_array_size; + pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; + TUNABLE_INT_FETCH("vm.pmap.pv_entries", &pv_entry_max); pv_entry_high_water = 9 * (pv_entry_max / 10); } @@ -1305,23 +1293,88 @@ /* * get a new pv_entry, allocating a block from the system * when needed. - * the memory allocation is performed bypassing the malloc code - * because of the possibility of allocations at interrupt time. */ static pv_entry_t -get_pv_entry(void) +get_pv_entry(pmap_t locked_pmap) { - pv_entry_count++; - if (pv_entry_high_water && - (pv_entry_count > pv_entry_high_water) && - (pmap_pagedaemon_waken == 0)) { - pmap_pagedaemon_waken = 1; - wakeup (&vm_pages_needed); + static const struct timeval printinterval = { 60, 0 }; + static struct timeval lastprint; + struct vpgqueues *vpq; + pmap_t pmap; + pt_entry_t *pte, tpte; + pv_entry_t allocated_pv, next_pv, pv; + vm_offset_t va; + vm_page_t m; + + PMAP_LOCK_ASSERT(locked_pmap, MA_OWNED); + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + allocated_pv = uma_zalloc(pvzone, M_NOWAIT); + if (allocated_pv != NULL) { + pv_entry_count++; + if (pv_entry_count > pv_entry_high_water) + pagedaemon_wakeup(); + else + return (allocated_pv); + } + + /* + * Reclaim pv entries: At first, destroy mappings to inactive + * pages. After that, if a pv entry is still needed, destroy + * mappings to active pages. + */ + if (ratecheck(&lastprint, &printinterval)) + printf("Approaching the limit on PV entries, " + "increase the vm.pmap.shpgperproc tunable.\n"); + vpq = &vm_page_queues[PQ_INACTIVE]; +retry: + TAILQ_FOREACH(m, &vpq->pl, pageq) { + if (m->hold_count || m->busy || (m->flags & PG_BUSY)) + continue; + TAILQ_FOREACH_SAFE(pv, &m->md.pv_list, pv_list, next_pv) { + va = pv->pv_va; + pmap = pv->pv_pmap; + /* Avoid deadlock and lock recursion. */ + if (pmap > locked_pmap) + PMAP_LOCK(pmap); + else if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) + continue; + pmap->pm_stats.resident_count--; + pte = pmap_lev3pte(pmap, va); + tpte = *pte; + *pte = 0; + KASSERT((tpte & PG_W) == 0, + ("get_pv_entry: wired pte %#lx", tpte)); + if ((tpte & PG_FOR) == 0) + vm_page_flag_set(m, PG_REFERENCED); + if ((tpte & PG_FOW) == 0) { + if (pmap_track_modified(va)) + vm_page_dirty(m); + } + pmap_invalidate_page(pmap, va); + TAILQ_REMOVE(&pmap->pm_pvlist, pv, pv_plist); + TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); + if (TAILQ_EMPTY(&m->md.pv_list)) + vm_page_flag_clear(m, PG_WRITEABLE); + m->md.pv_list_count--; + pmap_unuse_pt(pmap, va, pv->pv_ptem); + if (pmap != locked_pmap) + PMAP_UNLOCK(pmap); + if (allocated_pv == NULL) + allocated_pv = pv; + else + free_pv_entry(pv); + } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Nov 24 13:16:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6C4216A421; Thu, 24 Nov 2005 13:16:23 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 912A716A41F for ; Thu, 24 Nov 2005 13:16:23 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9052A43D9B for ; Thu, 24 Nov 2005 13:16:13 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAODGCvu083065 for ; Thu, 24 Nov 2005 13:16:12 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAODGCxD083062 for perforce@freebsd.org; Thu, 24 Nov 2005 13:16:12 GMT (envelope-from wsalamon@computer.org) Date: Thu, 24 Nov 2005 13:16:12 GMT Message-Id: <200511241316.jAODGCxD083062@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 87178 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 13:16:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=87178 Change 87178 by wsalamon@gretsch on 2005/11/24 13:15:24 Change the copyright notice, using the new one from Apple. Retain existing additions to the old copyright. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#6 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#9 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_private.h#12 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_syscalls.c#6 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_audit.c#50 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_audit.c#29 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_klib.c#18 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#6 (text+ko) ==== @@ -1,24 +1,30 @@ /* - * @APPLE_LICENSE_HEADER_START@ - * - * Copyright (c) 1999-2004 Apple Computer, Inc. All Rights Reserved. - * - * This file contains Original Code and/or Modifications of Original Code - * as defined in and that are subject to the Apple Public Source License - * Version 2.0 (the 'License'). You may not use this file except in - * compliance with the License. Please obtain a copy of the License at - * http://www.opensource.apple.com/apsl/ and read it before using this - * file. - * - * The Original Code and all software distributed under the License are - * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. - * Please see the License for the specific language governing rights and - * limitations under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ /* ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#9 (text+ko) ==== @@ -1,23 +1,30 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. All rights reserved. + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ #include ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_private.h#12 (text+ko) ==== @@ -1,24 +1,30 @@ /* - * @APPLE_LICENSE_HEADER_START@ - * - * Copyright (c) 1999-2004 Apple Computer, Inc. All Rights Reserved. - * - * This file contains Original Code and/or Modifications of Original Code - * as defined in and that are subject to the Apple Public Source License - * Version 2.0 (the 'License'). You may not use this file except in - * compliance with the License. Please obtain a copy of the License at - * http://www.opensource.apple.com/apsl/ and read it before using this - * file. - * - * The Original Code and all software distributed under the License are - * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. - * Please see the License for the specific language governing rights and - * limitations under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ /* ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_syscalls.c#6 (text+ko) ==== @@ -1,23 +1,30 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. All rights reserved. + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ #include ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_audit.c#50 (text+ko) ==== @@ -1,23 +1,30 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. All rights reserved. + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ #include ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_audit.c#29 (text+ko) ==== @@ -1,23 +1,30 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. All rights reserved. + * Copyright (c) 1999-2005 Apple Computer, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * @APPLE_LICENSE_HEADER_START@ - * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ #include ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_klib.c#18 (text+ko) ==== @@ -1,25 +1,31 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. + * Copyright (c) 1999-2005 Apple Computer, Inc. * Copyright (c) 2005 Robert N. M. Watson * All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ - * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ #include From owner-p4-projects@FreeBSD.ORG Thu Nov 24 13:31:33 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1304C16A424; Thu, 24 Nov 2005 13:31:33 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 C585A16A41F for ; Thu, 24 Nov 2005 13:31:32 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BD3AB43D55 for ; Thu, 24 Nov 2005 13:31:31 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAODVV0b083643 for ; Thu, 24 Nov 2005 13:31:31 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAODVVY4083640 for perforce@freebsd.org; Thu, 24 Nov 2005 13:31:31 GMT (envelope-from cognet@freebsd.org) Date: Thu, 24 Nov 2005 13:31:31 GMT Message-Id: <200511241331.jAODVVY4083640@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 87179 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 13:31:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=87179 Change 87179 by cognet@cognet on 2005/11/24 13:30:53 IFC Affected files ... .. //depot/projects/arm/src/sys/amd64/amd64/machdep.c#6 integrate .. //depot/projects/arm/src/sys/arm/arm/cpufunc_asm_arm9.S#3 integrate .. //depot/projects/arm/src/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/arm/src/sys/arm/arm/machdep.c#5 integrate .. //depot/projects/arm/src/sys/arm/include/elf.h#2 integrate .. //depot/projects/arm/src/sys/arm/xscale/i80321/iq31244_machdep.c#5 integrate .. //depot/projects/arm/src/sys/compat/ndis/subr_ntoskrnl.c#6 integrate .. //depot/projects/arm/src/sys/conf/Makefile.arm#4 integrate .. //depot/projects/arm/src/sys/conf/files#6 integrate .. //depot/projects/arm/src/sys/conf/files.powerpc#3 integrate .. //depot/projects/arm/src/sys/conf/files.sparc64#3 integrate .. //depot/projects/arm/src/sys/conf/ldscript.arm#2 integrate .. //depot/projects/arm/src/sys/conf/options#6 integrate .. //depot/projects/arm/src/sys/conf/options.i386#4 integrate .. //depot/projects/arm/src/sys/conf/options.pc98#3 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_battery.c#4 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_cmbat.c#3 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_pci_link.c#3 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_smbat.c#2 integrate .. //depot/projects/arm/src/sys/dev/dc/if_dc.c#2 integrate .. //depot/projects/arm/src/sys/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/arm/src/sys/dev/em/if_em.c#5 integrate .. //depot/projects/arm/src/sys/dev/em/if_em_hw.c#3 integrate .. //depot/projects/arm/src/sys/dev/em/if_em_hw.h#4 integrate .. //depot/projects/arm/src/sys/dev/lge/if_lge.c#4 integrate .. //depot/projects/arm/src/sys/dev/lge/if_lgereg.h#3 integrate .. //depot/projects/arm/src/sys/dev/nve/if_nve.c#3 integrate .. //depot/projects/arm/src/sys/dev/nve/if_nvereg.h#3 integrate .. //depot/projects/arm/src/sys/dev/ofw/ofw_bus_if.m#2 integrate .. //depot/projects/arm/src/sys/dev/ofw/ofw_bus_subr.c#1 branch .. //depot/projects/arm/src/sys/dev/ofw/ofw_bus_subr.h#1 branch .. //depot/projects/arm/src/sys/dev/ofw/openfirm.c#2 integrate .. //depot/projects/arm/src/sys/dev/ral/if_ral.c#2 integrate .. //depot/projects/arm/src/sys/dev/re/if_re.c#5 integrate .. //depot/projects/arm/src/sys/dev/usb/if_ural.c#3 integrate .. //depot/projects/arm/src/sys/fs/smbfs/smbfs_smb.c#3 integrate .. //depot/projects/arm/src/sys/i386/conf/NOTES#5 integrate .. //depot/projects/arm/src/sys/i386/i386/apic_vector.s#3 integrate .. //depot/projects/arm/src/sys/i386/i386/machdep.c#5 integrate .. //depot/projects/arm/src/sys/i386/i386/mp_machdep.c#3 integrate .. //depot/projects/arm/src/sys/i386/include/smp.h#3 integrate .. //depot/projects/arm/src/sys/i386/include/smptests.h#3 delete .. //depot/projects/arm/src/sys/kern/uipc_socket2.c#6 integrate .. //depot/projects/arm/src/sys/kern/vfs_mount.c#5 integrate .. //depot/projects/arm/src/sys/modules/i2c/controllers/pcf/Makefile#3 integrate .. //depot/projects/arm/src/sys/netsmb/smb_dev.c#3 integrate .. //depot/projects/arm/src/sys/pc98/include/smptests.h#2 delete .. //depot/projects/arm/src/sys/pc98/pc98/machdep.c#2 integrate .. //depot/projects/arm/src/sys/pci/if_de.c#4 integrate .. //depot/projects/arm/src/sys/pci/if_devar.h#3 integrate .. //depot/projects/arm/src/sys/sparc64/central/central.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/arm/src/sys/sparc64/ebus/ebus.c#3 integrate .. //depot/projects/arm/src/sys/sparc64/fhc/fhc.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/fhc/fhc_central.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/fhc/fhc_nexus.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/fhc/fhcvar.h#4 integrate .. //depot/projects/arm/src/sys/sparc64/pci/ofw_pcibus.c#3 integrate .. //depot/projects/arm/src/sys/sparc64/pci/psycho.c#2 integrate .. //depot/projects/arm/src/sys/sparc64/pci/psychoreg.h#2 integrate .. //depot/projects/arm/src/sys/sparc64/pci/psychovar.h#2 integrate .. //depot/projects/arm/src/sys/sparc64/sbus/dma_sbus.c#2 integrate .. //depot/projects/arm/src/sys/sparc64/sbus/sbus.c#3 integrate .. //depot/projects/arm/src/sys/sys/bio.h#3 integrate .. //depot/projects/arm/src/sys/sys/event.h#4 integrate .. //depot/projects/arm/src/sys/sys/queue.h#5 integrate Differences ... ==== //depot/projects/arm/src/sys/amd64/amd64/machdep.c#6 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.644 2005/11/21 18:39:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.645 2005/11/24 08:16:17 ru Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -343,7 +343,7 @@ sigreturn(td, uap) struct thread *td; struct sigreturn_args /* { - const __ucontext *sigcntxp; + const struct __ucontext *sigcntxp; } */ *uap; { ucontext_t uc; ==== //depot/projects/arm/src/sys/arm/arm/cpufunc_asm_arm9.S#3 (text+ko) ==== @@ -32,6 +32,7 @@ */ #include +__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc_asm_arm9.S,v 1.4 2005/11/23 18:02:40 cognet Exp $"); /* * Functions to set the MMU Translation Table Base register ==== //depot/projects/arm/src/sys/arm/arm/elf_trampoline.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.1 2005/10/03 14:09:36 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.2 2005/11/24 02:27:55 cognet Exp $"); #include #include #include @@ -36,6 +36,14 @@ extern char kernel_start[]; extern char kernel_end[]; +void __start(void); + +void +_start(void) +{ + __start(); +} + static __inline void * memcpy(void *dst, const void *src, int len) { @@ -168,8 +176,10 @@ phdr[i].p_filesz); } /* Now grab the symbol tables. */ - *(Elf_Addr *)curaddr = ssym - curaddr + KERNVIRTADDR; - *((Elf_Addr *)curaddr + 1) = lastaddr - curaddr + KERNVIRTADDR; + *(Elf_Addr *)curaddr = MAGIC_TRAMP_NUMBER; + *((Elf_Addr *)curaddr + 1) = ssym - curaddr + KERNVIRTADDR; + *((Elf_Addr *)curaddr + 2) = lastaddr - curaddr + KERNVIRTADDR; + /* Jump to the entry point. */ ((void(*)(void))(entry_point - KERNVIRTADDR + curaddr))(); __asm __volatile(".globl func_end\n" @@ -179,7 +189,7 @@ extern char func_end[]; -int _start(void) +void __start(void) { void *curaddr; @@ -194,5 +204,5 @@ ((void (*)())dst)((unsigned int)&kernel_start, (unsigned int)&kernel_end, (unsigned int)curaddr, dst + (unsigned int)&func_end - - (unsigned int)(&load_kernel),1); + (unsigned int)(&load_kernel), 1); } ==== //depot/projects/arm/src/sys/arm/arm/machdep.c#5 (text+ko) ==== @@ -44,7 +44,7 @@ #include "opt_compat.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/machdep.c,v 1.19 2005/11/06 16:10:28 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/machdep.c,v 1.20 2005/11/24 08:16:17 ru Exp $"); #include #include @@ -511,7 +511,7 @@ sigreturn(td, uap) struct thread *td; struct sigreturn_args /* { - const __ucontext *sigcntxp; + const struct __ucontext *sigcntxp; } */ *uap; { struct proc *p = td->td_proc; ==== //depot/projects/arm/src/sys/arm/include/elf.h#2 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/arm/include/elf.h,v 1.5 2004/05/04 22:21:36 cognet Exp $ + * $FreeBSD: src/sys/arm/include/elf.h,v 1.6 2005/11/24 02:27:55 cognet Exp $ */ #ifndef _MACHINE_ELF_H_ @@ -125,4 +125,9 @@ #define ELF_TARG_MACH EM_ARM #define ELF_TARG_VER 1 +/* + * Magic number for the elf trampoline, chosen wisely to be an immediate + * value. + */ +#define MAGIC_TRAMP_NUMBER 0x5c000003 #endif /* !_MACHINE_ELF_H_ */ ==== //depot/projects/arm/src/sys/arm/xscale/i80321/iq31244_machdep.c#5 (text+ko) ==== @@ -49,7 +49,7 @@ #include "opt_ddb.h" #include -__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/iq31244_machdep.c,v 1.15 2005/10/04 14:37:03 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/iq31244_machdep.c,v 1.16 2005/11/24 02:27:55 cognet Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -233,16 +233,16 @@ fake_preload[i++] = sizeof(uint32_t); fake_preload[i++] = (uint32_t)&end - KERNBASE - 0x00200000; #ifdef DDB - if (*(uint32_t *)KERNVIRTADDR != 0) { + if (*(uint32_t *)KERNVIRTADDR == MAGIC_TRAMP_NUMBER) { fake_preload[i++] = MODINFO_METADATA|MODINFOMD_SSYM; fake_preload[i++] = sizeof(vm_offset_t); - fake_preload[i++] = *(uint32_t *)KERNVIRTADDR; + fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 4); fake_preload[i++] = MODINFO_METADATA|MODINFOMD_ESYM; fake_preload[i++] = sizeof(vm_offset_t); - fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 4); - lastaddr = *(uint32_t *)(KERNVIRTADDR + 4); + fake_preload[i++] = *(uint32_t *)(KERNVIRTADDR + 8); + lastaddr = *(uint32_t *)(KERNVIRTADDR + 8); zend = lastaddr; - zstart = *(uint32_t *)KERNVIRTADDR; + zstart = *(uint32_t *)(KERNVIRTADDR + 4); ksym_start = zstart; ksym_end = zend; } else ==== //depot/projects/arm/src/sys/compat/ndis/subr_ntoskrnl.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.84 2005/11/20 01:29:29 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.85 2005/11/23 17:10:46 wpaul Exp $"); #include #include @@ -234,6 +234,7 @@ static uint32_t WmiTraceMessage(uint64_t, uint32_t, void *, uint16_t, ...); static uint32_t IoWMIRegistrationControl(device_object *, uint32_t); static void *ntoskrnl_memset(void *, int, size_t); +static void *ntoskrnl_memmove(void *, void *, size_t); static char *ntoskrnl_strstr(char *, char *); static int ntoskrnl_toupper(int); static int ntoskrnl_tolower(int); @@ -423,6 +424,16 @@ return(memset(buf, ch, size)); } +static void * +ntoskrnl_memmove(dst, src, size) + void *src; + void *dst; + size_t size; +{ + bcopy(src, dst, size); + return(dst); +} + static char * ntoskrnl_strstr(s, find) char *s, *find; @@ -4142,7 +4153,7 @@ IMPORT_CFUNC_MAP(strstr, ntoskrnl_strstr, 0), IMPORT_CFUNC_MAP(strchr, index, 0), IMPORT_CFUNC(memcpy, 0), - IMPORT_CFUNC_MAP(memmove, ntoskrnl_memset, 0), + IMPORT_CFUNC_MAP(memmove, ntoskrnl_memmove, 0), IMPORT_CFUNC_MAP(memset, ntoskrnl_memset, 0), IMPORT_SFUNC(IoAllocateDriverObjectExtension, 4), IMPORT_SFUNC(IoGetDriverObjectExtension, 2), ==== //depot/projects/arm/src/sys/conf/Makefile.arm#4 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile.arm -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 -# $FreeBSD: src/sys/conf/Makefile.arm,v 1.17 2005/11/17 01:32:01 cognet Exp $ +# $FreeBSD: src/sys/conf/Makefile.arm,v 1.18 2005/11/24 02:25:49 cognet Exp $ # # Makefile for FreeBSD # @@ -48,6 +48,16 @@ DDB_ENABLED!= grep DDB opt_ddb.h || true +SYSTEM_LD_ = ${LD} -Bdynamic -T ldscript.$M.static \ + -warn-common -export-dynamic -dynamic-linker /red/herring -o \ + ${FULLKERNEL}.noheader -X ${SYSTEM_OBJS} vers.o +SYSTEM_LD_TAIL +=; cat ldscript.$M| \ + sed s/" + SIZEOF_HEADERS"// \ + >ldscript.$M.noheader; \ + ${SYSTEM_LD_}; \ + ${OBJCOPY} -S -O binary ${FULLKERNEL}.noheader \ + ${KERNEL_KO}.bin; \ + rm ${FULLKERNEL}.noheader .if ${DDB_ENABLED} != "" SYSTEM_LD_TAIL += ;echo "\#define KERNNAME \"${KERNEL_KO}.tmp\"" \ >opt_kernname.h ;\ @@ -55,9 +65,17 @@ -g --strip-symbol '$$t' ${FULLKERNEL} ${KERNEL_KO}.tmp;\ ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.arm \ $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o ${KERNEL_KO}.tramp;\ - rm ${KERNEL_KO}.tmp + ${CC} -O -nostdlib -I. -Xlinker -T -Xlinker ldscript.arm.noheader \ + $S/$M/$M/elf_trampoline.c $S/$M/$M/inckern.S -o \ + ${KERNEL_KO}.tramp.noheader; \ + ${OBJCOPY} -S -O binary ${KERNEL_KO}.tramp.noheader \ + ${KERNEL_KO}.tramp.bin; \ + rm ${KERNEL_KO}.tmp ${KERNEL_KO}.tramp.noheader; \ + .endif +CLEANFILES += ldscript.$M ldscript.$M.static ${KERNEL_KO}.bin \ + ${KERNEL_KO}.tramp ${KERNEL_KO}.tramp.bin %BEFORE_DEPEND %OBJS ==== //depot/projects/arm/src/sys/conf/files#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1065 2005/11/18 20:12:40 andre Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1066 2005/11/22 17:12:48 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1025,7 +1025,6 @@ dev/wl/if_wl.c optional wl isa dev/xe/if_xe.c optional xe dev/xe/if_xe_pccard.c optional xe pccard -dev/zs/zs.c optional zs fs/deadfs/dead_vnops.c standard fs/devfs/devfs_devs.c standard fs/devfs/devfs_rule.c standard ==== //depot/projects/arm/src/sys/conf/files.powerpc#3 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.powerpc,v 1.45 2005/11/08 06:48:08 grehan Exp $ +# $FreeBSD: src/sys/conf/files.powerpc,v 1.47 2005/11/22 17:12:49 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -76,6 +76,7 @@ dev/ofw/openfirm.c standard dev/ofw/ofw_bus_if.m standard +dev/ofw/ofw_bus_subr.c standard dev/ofw/ofw_console.c standard dev/ofw/ofw_disk.c optional ofwd @@ -115,4 +116,5 @@ powerpc/psim/openpic_iobus.c optional psim powerpc/psim/sio_iobus.c optional sio psim +dev/zs/zs.c optional powermac zs dev/zs/zs_macio.c optional powermac zs ==== //depot/projects/arm/src/sys/conf/files.sparc64#3 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sparc64,v 1.74 2005/10/28 15:58:18 joerg Exp $ +# $FreeBSD: src/sys/conf/files.sparc64,v 1.76 2005/11/22 17:25:10 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -42,11 +42,12 @@ dev/kbd/kbd.c optional sc dev/kbd/kbd.c optional ukbd dev/ofw/ofw_bus_if.m standard +dev/ofw/ofw_bus_subr.c standard dev/ofw/ofw_console.c optional ofw_console dev/ofw/openfirm.c standard dev/ofw/openfirmio.c standard dev/ofw/openpromio.c standard -dev/pcf/envctrl.c optional pcf +dev/pcf/envctrl.c optional pcf ebus dev/pcf/pcf_ebus.c optional pcf ebus dev/sound/sbus/cs4231.c optional snd_audiocs ebus dev/sound/sbus/cs4231.c optional snd_audiocs sbus ==== //depot/projects/arm/src/sys/conf/ldscript.arm#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/conf/ldscript.arm,v 1.2 2004/09/23 22:52:55 cognet Exp $ */ +/* $FreeBSD: src/sys/conf/ldscript.arm,v 1.3 2005/11/24 02:25:49 cognet Exp $ */ OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") OUTPUT_ARCH(arm) ENTRY(_start) @@ -8,7 +8,20 @@ { /* Read-only sections, merged into text segment: */ . = KERNVIRTADDR + SIZEOF_HEADERS; - .interp : { *(.interp) } + .text : + { + *(.text) + *(.stub) + /* .gnu.warning sections are handled specially by elf32.em. */ + *(.gnu.warning) + *(.gnu.linkonce.t*) + } =0x9090 + _etext = .; + PROVIDE (etext = .); + .fini : { *(.fini) } =0x9090 + .rodata : { *(.rodata) *(.gnu.linkonce.r*) } + .rodata1 : { *(.rodata1) } + .interp : { *(.interp) } .hash : { *(.hash) } .dynsym : { *(.dynsym) } .dynstr : { *(.dynstr) } @@ -43,19 +56,7 @@ .rela.plt : { *(.rela.plt) } .init : { *(.init) } =0x9090 .plt : { *(.plt) } - .text : - { - *(.text) - *(.stub) - /* .gnu.warning sections are handled specially by elf32.em. */ - *(.gnu.warning) - *(.gnu.linkonce.t*) - } =0x9090 - _etext = .; - PROVIDE (etext = .); - .fini : { *(.fini) } =0x9090 - .rodata : { *(.rodata) *(.gnu.linkonce.r*) } - .rodata1 : { *(.rodata1) } + /* Adjust the address for the data segment. We want to adjust up to the same address within the page on the next page up. */ . = ALIGN(0x1000) + (. & (0x1000 - 1)) ; ==== //depot/projects/arm/src/sys/conf/options#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.517 2005/10/14 18:24:58 jhb Exp $ +# $FreeBSD: src/sys/conf/options,v 1.518 2005/11/23 18:11:24 jhb Exp $ # # On the handling of kernel options # @@ -69,7 +69,6 @@ CY_PCI_FASTINTR DIRECTIO opt_directio.h FULL_PREEMPTION opt_sched.h -PREEMPTION opt_sched.h IPI_PREEMPTION opt_sched.h GEOM_AES opt_geom.h GEOM_APPLE opt_geom.h @@ -120,6 +119,7 @@ NSWBUF_MIN opt_swap.h PANIC_REBOOT_WAIT_TIME opt_panic.h PPS_SYNC opt_ntp.h +PREEMPTION opt_sched.h PUC_FASTINTR opt_puc.h QUOTA SCHED_4BSD opt_sched.h ==== //depot/projects/arm/src/sys/conf/options.i386#4 (text+ko) ==== @@ -1,20 +1,22 @@ -# $FreeBSD: src/sys/conf/options.i386,v 1.227 2005/11/09 03:55:39 imp Exp $ +# $FreeBSD: src/sys/conf/options.i386,v 1.229 2005/11/23 18:11:24 jhb Exp $ # Options specific to the i386 platform kernels AUTO_EOI_1 opt_auto_eoi.h AUTO_EOI_2 opt_auto_eoi.h BROKEN_KEYBOARD_RESET opt_reset.h +COUNT_XINVLTLB_HITS opt_smp.h +COUNT_IPIS opt_smp.h DISABLE_PG_G opt_pmap.h DISABLE_PSE opt_pmap.h I586_PMC_GUPROF opt_i586_guprof.h MAXMEM MPTABLE_FORCE_HTT +MP_WATCHDOG opt_mp_watchdog.h PERFMON PMAP_SHPGPERPROC opt_pmap.h POWERFAIL_NMI opt_trap.h PPC_DEBUG opt_ppc.h PPC_PROBE_CHIPSET opt_ppc.h -MP_WATCHDOG opt_mp_watchdog.h # Options for emulators. These should only be used at config time, so # they are handled like options for static filesystems @@ -161,8 +163,8 @@ ASR_COMPAT opt_asr.h # Debugging +NPX_DEBUG opt_npx.h STOP_NMI opt_cpu.h -NPX_DEBUG opt_npx.h # XBOX support in the kernel XBOX opt_xbox.h ==== //depot/projects/arm/src/sys/conf/options.pc98#3 (text+ko) ==== @@ -1,19 +1,21 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.192 2005/11/14 01:25:05 imp Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.193 2005/11/23 18:12:05 jhb Exp $ # Options specific to the pc98 platform kernels AUTO_EOI_1 opt_auto_eoi.h BROKEN_KEYBOARD_RESET opt_reset.h +COUNT_XINVLTLB_HITS opt_smp.h +COUNT_IPIS opt_smp.h DISABLE_PG_G opt_pmap.h DISABLE_PSE opt_pmap.h I586_PMC_GUPROF opt_i586_guprof.h MAXMEM MPTABLE_FORCE_HTT +MP_WATCHDOG opt_mp_watchdog.h PERFMON PMAP_SHPGPERPROC opt_pmap.h POWERFAIL_NMI opt_trap.h PPC_DEBUG opt_ppc.h PPC_PROBE_CHIPSET opt_ppc.h -MP_WATCHDOG opt_mp_watchdog.h # Options for emulators. These should only be used at config time, so # they are handled like options for static filesystems @@ -103,8 +105,8 @@ DEV_NPX opt_npx.h # Debugging +NPX_DEBUG opt_npx.h STOP_NMI opt_cpu.h -NPX_DEBUG opt_npx.h # FreeBSD/i386 supports xbox and is shared with pc98 so we need to define # dummy opt_xbox.h ==== //depot/projects/arm/src/sys/dev/acpica/acpi_battery.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_battery.c,v 1.21 2005/10/23 19:31:18 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_battery.c,v 1.22 2005/11/23 00:53:01 njl Exp $"); #include "opt_acpi.h" #include @@ -101,21 +101,15 @@ int acpi_battery_bst_valid(struct acpi_bst *bst) { - if (bst->state >= ACPI_BATT_STAT_MAX || bst->cap == ACPI_BATT_UNKNOWN || - bst->volt == ACPI_BATT_UNKNOWN) - return (FALSE); - else - return (TRUE); + return (bst->state < ACPI_BATT_STAT_MAX && bst->cap != ACPI_BATT_UNKNOWN && + bst->volt != ACPI_BATT_UNKNOWN); } /* Check _BIF results for validity. */ int acpi_battery_bif_valid(struct acpi_bif *bif) { - if (bif->lfcap == 0) - return (FALSE); - else - return (TRUE); + return (bif->lfcap != 0); } /* Get info about one or all batteries. */ ==== //depot/projects/arm/src/sys/dev/acpica/acpi_cmbat.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_cmbat.c,v 1.41 2005/09/11 18:39:01 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_cmbat.c,v 1.42 2005/11/23 00:57:51 njl Exp $"); #include "opt_acpi.h" #include @@ -66,7 +66,6 @@ struct acpi_bif bif; struct acpi_bst bst; - struct timespec bif_lastupdated; struct timespec bst_lastupdated; }; @@ -80,8 +79,8 @@ void *context); static int acpi_cmbat_info_expired(struct timespec *lastupdated); static void acpi_cmbat_info_updated(struct timespec *lastupdated); -static void acpi_cmbat_get_bst(device_t dev); -static void acpi_cmbat_get_bif(device_t dev); +static void acpi_cmbat_get_bst(void *arg); +static void acpi_cmbat_get_bif(void *arg); static int acpi_cmbat_bst(device_t dev, struct acpi_bst *bstp); static int acpi_cmbat_bif(device_t dev, struct acpi_bif *bifp); static void acpi_cmbat_init_battery(void *arg); @@ -134,7 +133,6 @@ handle = acpi_get_handle(dev); sc->dev = dev; - timespecclear(&sc->bif_lastupdated); timespecclear(&sc->bst_lastupdated); error = acpi_battery_register(dev); @@ -180,20 +178,22 @@ dev = (device_t)context; sc = device_get_softc(dev); - /* - * Clear the appropriate last updated time. The next call to retrieve - * the battery status will get the new value for us. We don't need to - * acquire a lock since we are only clearing the time stamp and since - * calling _BST/_BIF can trigger a notify, we could deadlock also. - */ switch (notify) { case ACPI_NOTIFY_DEVICE_CHECK: case ACPI_BATTERY_BST_CHANGE: + /* + * Clear the last updated time. The next call to retrieve the + * battery status will get the new value for us. + */ timespecclear(&sc->bst_lastupdated); break; case ACPI_NOTIFY_BUS_CHECK: case ACPI_BATTERY_BIF_CHANGE: - timespecclear(&sc->bif_lastupdated); + /* + * Queue a callback to get the current battery info from thread + * context. It's not safe to block in a notify handler. + */ + AcpiOsQueueForExecution(OSD_PRIORITY_LO, acpi_cmbat_get_bif, dev); break; } @@ -229,16 +229,18 @@ } static void -acpi_cmbat_get_bst(device_t dev) +acpi_cmbat_get_bst(void *arg) { struct acpi_cmbat_softc *sc; ACPI_STATUS as; ACPI_OBJECT *res; ACPI_HANDLE h; ACPI_BUFFER bst_buffer; + device_t dev; ACPI_SERIAL_ASSERT(cmbat); + dev = arg; sc = device_get_softc(dev); h = acpi_get_handle(dev); bst_buffer.Pointer = NULL; @@ -287,24 +289,23 @@ } static void -acpi_cmbat_get_bif(device_t dev) +acpi_cmbat_get_bif(void *arg) { struct acpi_cmbat_softc *sc; ACPI_STATUS as; ACPI_OBJECT *res; ACPI_HANDLE h; ACPI_BUFFER bif_buffer; + device_t dev; ACPI_SERIAL_ASSERT(cmbat); + dev = arg; sc = device_get_softc(dev); h = acpi_get_handle(dev); bif_buffer.Pointer = NULL; bif_buffer.Length = ACPI_ALLOCATE_BUFFER; - if (!acpi_cmbat_info_expired(&sc->bif_lastupdated)) - goto end; - as = AcpiEvaluateObject(h, "_BIF", NULL, &bif_buffer); if (ACPI_FAILURE(as)) { ACPI_VPRINT(dev, acpi_device_get_parent_softc(dev), @@ -346,7 +347,6 @@ goto end; if (acpi_PkgStr(res, 12, sc->bif.oeminfo, ACPI_CMBAT_MAXSTRLEN) != 0) goto end; - acpi_cmbat_info_updated(&sc->bif_lastupdated); end: if (bif_buffer.Pointer != NULL) @@ -360,8 +360,13 @@ sc = device_get_softc(dev); + /* + * Just copy the data. The only value that should change is the + * last-full capacity, so we only update when we get a notify that says + * the info has changed. Many systems apparently take a long time to + * process a _BIF call so we avoid it if possible. + */ ACPI_SERIAL_BEGIN(cmbat); - acpi_cmbat_get_bif(dev); bifp->units = sc->bif.units; bifp->dcap = sc->bif.dcap; bifp->lfcap = sc->bif.lfcap; @@ -422,11 +427,18 @@ if (!acpi_BatteryIsPresent(dev)) continue; + /* + * Only query the battery if this is the first try or the specific + * type of info is still invalid. + */ ACPI_SERIAL_BEGIN(cmbat); - timespecclear(&sc->bst_lastupdated); - timespecclear(&sc->bif_lastupdated); - acpi_cmbat_get_bst(dev); - acpi_cmbat_get_bif(dev); + if (retry == 0 || !acpi_battery_bst_valid(&sc->bst)) { + timespecclear(&sc->bst_lastupdated); + acpi_cmbat_get_bst(dev); + } + if (retry == 0 || !acpi_battery_bif_valid(&sc->bif)) + acpi_cmbat_get_bif(dev); + valid = acpi_battery_bst_valid(&sc->bst) && acpi_battery_bif_valid(&sc->bif); ACPI_SERIAL_END(cmbat); ==== //depot/projects/arm/src/sys/dev/acpica/acpi_pci_link.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.48 2005/11/01 22:44:07 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.50 2005/11/23 16:36:13 jhb Exp $"); #include "opt_acpi.h" #include @@ -159,6 +159,7 @@ device_set_desc_copy(dev, descr); } else device_set_desc(dev, "ACPI PCI Link"); + device_quiet(dev); return (0); } @@ -608,7 +609,19 @@ { struct link *link; uint8_t bios_irq; + uintptr_t bus; + /* + * Look up the PCI bus for the specified PCI bridge device. Note + * that the PCI bridge device might not have any children yet. + * However, looking up its bus number doesn't require a valid child + * device, so we just pass NULL. + */ + if (BUS_READ_IVAR(pcib, NULL, PCIB_IVAR_BUS, &bus) != 0) { + device_printf(pcib, "Unable to read PCI bus number"); + panic("PCI bridge without a bus number"); + } + /* Bump the reference count. */ ACPI_SERIAL_BEGIN(pci_link); link = acpi_pci_link_lookup(dev, index); @@ -618,8 +631,28 @@ if (link->l_routed) pci_link_interrupt_weights[link->l_irq]++; + /* + * The BIOS only routes interrupts via ISA IRQs using the ATPICs + * (8259As). Thus, if this link is routed via an ISA IRQ, go + * look to see if the BIOS routed an IRQ for this link at the + * indicated (bus, slot, pin). If so, we prefer that IRQ for + * this link and add that IRQ to our list of known-good IRQs. + * This provides a good work-around for link devices whose _CRS + * method is either broken or bogus. We only use the value + * returned by _CRS if we can't find a valid IRQ via this method + * in fact. + * + * If this link is not routed via an ISA IRQ (because we are using + * APIC for example), then don't bother looking up the BIOS IRQ + * as if we find one it won't be valid anyway. + */ + if (!link->l_isa_irq) { + ACPI_SERIAL_END(pci_link); + return; + } + /* Try to find a BIOS IRQ setting from any matching devices. */ - bios_irq = acpi_pci_link_search_irq(pcib_get_bus(pcib), slot, pin); + bios_irq = acpi_pci_link_search_irq(bus, slot, pin); if (!PCI_INTERRUPT_VALID(bios_irq)) { ACPI_SERIAL_END(pci_link); return; @@ -628,7 +661,7 @@ /* Validate the BIOS IRQ. */ if (!link_valid_irq(link, bios_irq)) { device_printf(dev, "BIOS IRQ %u for %d.%d.INT%c is invalid\n", - bios_irq, pcib_get_bus(pcib), slot, pin + 'A'); + bios_irq, (int)bus, slot, pin + 'A'); } else if (!PCI_INTERRUPT_VALID(link->l_bios_irq)) { link->l_bios_irq = bios_irq; if (bios_irq < NUM_ISA_INTERRUPTS) @@ -641,7 +674,7 @@ } else if (bios_irq != link->l_bios_irq) device_printf(dev, "BIOS IRQ %u for %d.%d.INT%c does not match previous BIOS IRQ %u\n", - bios_irq, pcib_get_bus(pcib), slot, pin + 'A', + bios_irq, (int)bus, slot, pin + 'A', link->l_bios_irq); ACPI_SERIAL_END(pci_link); } ==== //depot/projects/arm/src/sys/dev/acpica/acpi_smbat.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_smbat.c,v 1.1 2005/10/23 00:20:13 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_smbat.c,v 1.3 2005/11/24 05:23:56 njl Exp $"); #include "opt_acpi.h" #include @@ -44,11 +44,18 @@ struct acpi_smbat_softc { uint8_t sb_base_addr; device_t ec_dev; + + struct acpi_bif bif; + struct acpi_bst bst; + struct timespec bif_lastupdated; + struct timespec bst_lastupdated; }; static int acpi_smbat_probe(device_t dev); static int acpi_smbat_attach(device_t dev); static int acpi_smbat_shutdown(device_t dev); +static int acpi_smbat_info_expired(struct timespec *lastupdated); +static void acpi_smbat_info_updated(struct timespec *lastupdated); static int acpi_smbat_get_bif(device_t dev, struct acpi_bif *bif); static int acpi_smbat_get_bst(device_t dev, struct acpi_bst *bst); @@ -114,6 +121,9 @@ return (ENXIO); } + timespecclear(&sc->bif_lastupdated); + timespecclear(&sc->bst_lastupdated); + if (acpi_battery_register(dev) != 0) { device_printf(dev, "cannot register battery\n"); return (ENXIO); @@ -132,6 +142,34 @@ } static int +acpi_smbat_info_expired(struct timespec *lastupdated) +{ + struct timespec curtime; + + ACPI_SERIAL_ASSERT(smbat); + + if (lastupdated == NULL) + return (TRUE); + if (!timespecisset(lastupdated)) + return (TRUE); + + getnanotime(&curtime); + timespecsub(&curtime, lastupdated); + return (curtime.tv_sec < 0 || + curtime.tv_sec > acpi_battery_get_info_expire()); +} + +static void +acpi_smbat_info_updated(struct timespec *lastupdated) +{ + + ACPI_SERIAL_ASSERT(smbat); + + if (lastupdated != NULL) + getnanotime(lastupdated); +} + +static int acpi_smbus_read_2(struct acpi_smbat_softc *sc, uint8_t addr, uint8_t cmd, uint16_t *ptr) { @@ -284,6 +322,11 @@ error = ENXIO; sc = device_get_softc(dev); + if (!acpi_smbat_info_expired(&sc->bst_lastupdated)) { + error = 0; + goto out; + } + if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_BATTERY_MODE, &val)) goto out; if (val & SMBATT_BM_CAPACITY_MODE) { @@ -299,7 +342,7 @@ goto out; if (val & SMBATT_BS_DISCHARGING) { - bst->state |= ACPI_BATT_STAT_DISCHARG; + sc->bst.state |= ACPI_BATT_STAT_DISCHARG; /* * If the rate is negative, it is discharging. Otherwise, @@ -308,27 +351,31 @@ if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_AT_RATE, &val)) goto out; if (val < 0) - bst->rate = (-val) * factor; + sc->bst.rate = (-val) * factor; else - bst->rate = -1; + sc->bst.rate = -1; } else { - bst->state |= ACPI_BATT_STAT_CHARGING; - bst->rate = -1; + sc->bst.state |= ACPI_BATT_STAT_CHARGING; + sc->bst.rate = -1; } if (val & SMBATT_BS_REMAINING_CAPACITY_ALARM) - bst->state |= ACPI_BATT_STAT_CRITICAL; + sc->bst.state |= ACPI_BATT_STAT_CRITICAL; if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_REMAINING_CAPACITY, &val)) goto out; - bst->cap = val * factor; + sc->bst.cap = val * factor; if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_VOLTAGE, &val)) goto out; - bst->volt = val; + sc->bst.volt = val; + + acpi_smbat_info_updated(&sc->bst_lastupdated); error = 0; out: + if (error == 0) + memcpy(bst, &sc->bst, sizeof(sc->bst)); ACPI_SERIAL_END(smbat); return (error); } @@ -348,55 +395,64 @@ error = ENXIO; sc = device_get_softc(dev); + if (!acpi_smbat_info_expired(&sc->bif_lastupdated)) { + error = 0; + goto out; + } + if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_BATTERY_MODE, &val)) goto out; if (val & SMBATT_BM_CAPACITY_MODE) { factor = 10; - bif->units = ACPI_BIF_UNITS_MW; + sc->bif.units = ACPI_BIF_UNITS_MW; } else { factor = 1; - bif->units = ACPI_BIF_UNITS_MA; + sc->bif.units = ACPI_BIF_UNITS_MA; } if (acpi_smbus_read_2(sc, addr, SMBATT_CMD_DESIGN_CAPACITY, &val)) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:06:45 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35AA916A424; Thu, 24 Nov 2005 16:06:45 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 CBD2716A41F for ; Thu, 24 Nov 2005 16:06:44 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4174F43D6D for ; Thu, 24 Nov 2005 16:06:42 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOG6g9t000605 for ; Thu, 24 Nov 2005 16:06:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOG6fXf000602 for perforce@freebsd.org; Thu, 24 Nov 2005 16:06:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:06:41 GMT Message-Id: <200511241606.jAOG6fXf000602@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87187 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:06:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=87187 Change 87187 by rwatson@rwatson_peppercorn on 2005/11/24 16:06:14 Queryperf DNS performance tool; part of BIND 9.3.1, but not in src/contrib/bind9 import. Affected files ... .. //depot/projects/netsmp/queryperf/Makefile#1 add .. //depot/projects/netsmp/queryperf/Makefile.in#1 add .. //depot/projects/netsmp/queryperf/README#1 add .. //depot/projects/netsmp/queryperf/config.log#1 add .. //depot/projects/netsmp/queryperf/config.status#1 add .. //depot/projects/netsmp/queryperf/configure#1 add .. //depot/projects/netsmp/queryperf/configure.in#1 add .. //depot/projects/netsmp/queryperf/configure.lineno#1 add .. //depot/projects/netsmp/queryperf/input/sample.0#1 add .. //depot/projects/netsmp/queryperf/input/sample.1#1 add .. //depot/projects/netsmp/queryperf/missing/addrinfo.h#1 add .. //depot/projects/netsmp/queryperf/missing/getaddrinfo.c#1 add .. //depot/projects/netsmp/queryperf/missing/getnameinfo.c#1 add .. //depot/projects/netsmp/queryperf/queryperf.c#1 add .. //depot/projects/netsmp/queryperf/utils/gen-data-queryperf.py#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:22:01 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B40EB16A423; Thu, 24 Nov 2005 16:22:00 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 6AB5316A423 for ; Thu, 24 Nov 2005 16:22:00 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 23D2343D67 for ; Thu, 24 Nov 2005 16:21:23 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOGKxf3003436 for ; Thu, 24 Nov 2005 16:20:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOGKxJG003433 for perforce@freebsd.org; Thu, 24 Nov 2005 16:20:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:20:59 GMT Message-Id: <200511241620.jAOGKxJG003433@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87188 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:22:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=87188 Change 87188 by rwatson@rwatson_zoo on 2005/11/24 16:20:46 Delete generated files accidentally imported. Affected files ... .. //depot/projects/netsmp/queryperf/config.log#2 delete .. //depot/projects/netsmp/queryperf/config.status#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:26:07 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35FFC16A421; Thu, 24 Nov 2005 16:26:07 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 E9A6F16A41F for ; Thu, 24 Nov 2005 16:26:06 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7227B43D5A for ; Thu, 24 Nov 2005 16:26:06 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOGQ6sE003632 for ; Thu, 24 Nov 2005 16:26:06 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOGQ6qV003629 for perforce@freebsd.org; Thu, 24 Nov 2005 16:26:06 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:26:06 GMT Message-Id: <200511241626.jAOGQ6qV003629@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87189 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:26:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=87189 Change 87189 by rwatson@rwatson_zoo on 2005/11/24 16:25:22 Add a sample zone. Affected files ... .. //depot/projects/netsmp/queryperf/data/trustedbsd.org#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:32:20 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 390D316A421; Thu, 24 Nov 2005 16:32:20 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 0ECFE16A41F for ; Thu, 24 Nov 2005 16:32:20 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7988E43D6B for ; Thu, 24 Nov 2005 16:32:14 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOGWEm6004668 for ; Thu, 24 Nov 2005 16:32:14 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOGWESd004665 for perforce@freebsd.org; Thu, 24 Nov 2005 16:32:14 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:32:14 GMT Message-Id: <200511241632.jAOGWESd004665@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87190 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:32:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=87190 Change 87190 by rwatson@rwatson_zoo on 2005/11/24 16:31:38 Very, very simple query set. Affected files ... .. //depot/projects/netsmp/queryperf/input/trustedbsd#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:51:40 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A1AF716A422; Thu, 24 Nov 2005 16:51:39 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 5BC5116A41F for ; Thu, 24 Nov 2005 16:51:39 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 00A4D43D60 for ; Thu, 24 Nov 2005 16:51:38 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOGpchK015057 for ; Thu, 24 Nov 2005 16:51:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOGpcxX015051 for perforce@freebsd.org; Thu, 24 Nov 2005 16:51:38 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:51:38 GMT Message-Id: <200511241651.jAOGpcxX015051@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87192 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:51:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=87192 Change 87192 by rwatson@rwatson_zoo on 2005/11/24 16:50:54 Configuration file for bind9. Affected files ... .. //depot/projects/netsmp/queryperf/data/named.conf#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 24 16:58:49 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF2F216A423; Thu, 24 Nov 2005 16:58:48 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 6E0AD16A41F for ; Thu, 24 Nov 2005 16:58:48 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 12D0F43D45 for ; Thu, 24 Nov 2005 16:58:48 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAOGwlrv015607 for ; Thu, 24 Nov 2005 16:58:47 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAOGwl7e015604 for perforce@freebsd.org; Thu, 24 Nov 2005 16:58:47 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 24 Nov 2005 16:58:47 GMT Message-Id: <200511241658.jAOGwl7e015604@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 87193 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Nov 2005 16:58:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=87193 Change 87193 by rwatson@rwatson_zoo on 2005/11/24 16:58:29 Small wrapper script to run queryperf in a loop printing out rates every ten seconds. Affected files ... .. //depot/projects/netsmp/queryperf/run.csh#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:51:01 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A75C116A423; Sat, 26 Nov 2005 00:51:00 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 7230416A41F for ; Sat, 26 Nov 2005 00:51:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF94F43D6A for ; Sat, 26 Nov 2005 00:50:59 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0oxx5015106 for ; Sat, 26 Nov 2005 00:50:59 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0oxcd015103 for perforce@freebsd.org; Sat, 26 Nov 2005 00:50:59 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:50:59 GMT Message-Id: <200511260050.jAQ0oxcd015103@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87229 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:51:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=87229 Change 87229 by sam@sam_ebb on 2005/11/26 00:50:18 tweak Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211.c#31 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211.c#31 (text+ko) ==== @@ -175,11 +175,11 @@ ic->ic_bsschan = IEEE80211_CHAN_ANYC; /* arbitrarily pick the first channel */ ic->ic_curchan = &ic->ic_channels[0]; + if (ic->ic_caps & IEEE80211_C_BGSCAN) /* enable if capable */ + ic->ic_flags |= IEEE80211_F_BGSCAN; #if 0 - /* - * Enable WME by default if we're capable. - */ - if (ic->ic_caps & IEEE80211_C_WME) + /* XXX not until WME+WPA issues resolved */ + if (ic->ic_caps & IEEE80211_C_WME) /* enable if capable */ ic->ic_flags |= IEEE80211_F_WME; #endif (void) ieee80211_setmode(ic, ic->ic_curmode); From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:54:22 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 91AB916A43E; Sat, 26 Nov 2005 00:54:21 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 50C3916A426 for ; Sat, 26 Nov 2005 00:54:21 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D553143D82 for ; Sat, 26 Nov 2005 00:54:06 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0s4KW015269 for ; Sat, 26 Nov 2005 00:54:04 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0s3Sd015266 for perforce@freebsd.org; Sat, 26 Nov 2005 00:54:03 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:54:03 GMT Message-Id: <200511260054.jAQ0s3Sd015266@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87230 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:54:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=87230 Change 87230 by sam@sam_ebb on 2005/11/26 00:53:34 Handle mgt frame tx timeouts using a callback: driver must respond when frame has been sent and indicate whether an ack was received; 802.11 layer then processes failure directly or starts a timer waiting for the response. Reduces auth+assoc failures from 5 secs to ms which makes ap switches (e.g. when roaming) much faster. Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_freebsd.c#19 edit .. //depot/projects/wifi/sys/net80211/ieee80211_freebsd.h#19 edit .. //depot/projects/wifi/sys/net80211/ieee80211_node.c#68 edit .. //depot/projects/wifi/sys/net80211/ieee80211_node.h#35 edit .. //depot/projects/wifi/sys/net80211/ieee80211_output.c#58 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_freebsd.c#19 (text+ko) ==== @@ -188,6 +188,39 @@ return m; } +int +ieee80211_add_callback(struct mbuf *m, + void (*func)(struct ieee80211_node *, void *, int), void *arg) +{ + struct m_tag *mtag; + struct ieee80211_cb *cb; + + mtag = m_tag_alloc(MTAG_ABI_NET80211, NET80211_TAG_CALLBACK, + sizeof(struct ieee80211_cb), M_NOWAIT); + if (mtag == NULL) + return 0; + + cb = (struct ieee80211_cb *)(mtag+1); + cb->func = func; + cb->arg = arg; + m_tag_prepend(m, mtag); + m->m_flags |= M_TXCB; + return 1; +} + +void +ieee80211_process_callback(struct ieee80211_node *ni, + struct mbuf *m, int status) +{ + struct m_tag *mtag; + + mtag = m_tag_locate(m, MTAG_ABI_NET80211, NET80211_TAG_CALLBACK, NULL); + if (mtag != NULL) { + struct ieee80211_cb *cb = (struct ieee80211_cb *)(mtag+1); + cb->func(ni, cb->arg, status); + } +} + #include void ==== //depot/projects/wifi/sys/net80211/ieee80211_freebsd.h#19 (text+ko) ==== @@ -171,6 +171,7 @@ #define M_PWR_SAV M_PROTO4 /* bypass PS handling */ #define M_MORE_DATA M_PROTO5 /* more data frames to follow */ #define M_FF 0x20000 /* fast frame */ +#define M_TXCB 0x40000 /* do tx complete callback */ /* * Encode WME access control bits in the PROTO flags. * This is safe since it's passed directly in to the @@ -195,6 +196,17 @@ #define M_AGE_GET(m) (m->m_pkthdr.csum_data) #define M_AGE_SUB(m,adj) (m->m_pkthdr.csum_data -= adj) +#define MTAG_ABI_NET80211 1132948340 /* net80211 ABI */ + +struct ieee80211_cb { + void (*func)(struct ieee80211_node *, void *, int status); + void *arg; +}; +#define NET80211_TAG_CALLBACK 0 /* xmit complete callback */ +int ieee80211_add_callback(struct mbuf *m, + void (*func)(struct ieee80211_node *, void *, int), void *arg); +void ieee80211_process_callback(struct ieee80211_node *, struct mbuf *, int); + void get_random_bytes(void *, size_t); struct ieee80211com; ==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#68 (text+ko) ==== @@ -926,6 +926,7 @@ /* NB: must be after ni_chan is setup */ ieee80211_setup_rates(ni, sp->rates, sp->xrates, IEEE80211_F_DOSORT); } + /* * Do node discovery in adhoc mode on receipt of a beacon * or probe response frame. Note that for the driver's ==== //depot/projects/wifi/sys/net80211/ieee80211_node.h#35 (text+ko) ==== @@ -58,7 +58,7 @@ #define IEEE80211_INACT_PROBE (30/IEEE80211_INACT_WAIT) /* probe */ #define IEEE80211_INACT_SCAN (300/IEEE80211_INACT_WAIT) /* scanned */ -#define IEEE80211_TRANS_WAIT 5 /* mgt frame tx timer (secs) */ +#define IEEE80211_TRANS_WAIT 2 /* mgt frame tx timer (secs) */ #define IEEE80211_NODE_HASHSIZE 32 /* simple hash is enough for variation of macaddr */ ==== //depot/projects/wifi/sys/net80211/ieee80211_output.c#58 (text+ko) ==== @@ -64,7 +64,7 @@ struct mbuf *m2, const struct ether_header *eh2); static int ieee80211_fragment(struct ieee80211com *, struct mbuf *, u_int hdrsize, u_int ciphdrsize, u_int mtu); -static void ieee80211_tx_timeout(void *); +static void ieee80211_tx_mgt_cb(struct ieee80211_node *, void *, int); #ifdef IEEE80211_DEBUG /* @@ -207,7 +207,6 @@ #endif IEEE80211_NODE_STAT(ni, tx_mgmt); IF_ENQUEUE(&ic->ic_mgtq, m); - ifp->if_timer = 1; if_start(ifp); return 0; } @@ -1376,7 +1375,7 @@ struct mbuf *m; u_int8_t *frm; u_int16_t capinfo; - int has_challenge, is_shared_key, ret, timer, status; + int has_challenge, is_shared_key, ret, status; KASSERT(ni != NULL, ("null node")); @@ -1392,7 +1391,6 @@ ieee80211_node_refcnt(ni)+1); ieee80211_ref_node(ni); - timer = 0; switch (type) { case IEEE80211_FC0_SUBTYPE_PROBE_RESP: /* @@ -1542,7 +1540,8 @@ IEEE80211_NODE_STAT(ni, tx_auth_fail); if (ic->ic_opmode == IEEE80211_M_STA) - timer = IEEE80211_TRANS_WAIT; + ieee80211_add_callback(m, ieee80211_tx_mgt_cb, + (void *) ic->ic_state); break; case IEEE80211_FC0_SUBTYPE_DEAUTH: @@ -1635,7 +1634,8 @@ } m->m_pkthdr.len = m->m_len = frm - mtod(m, u_int8_t *); - timer = IEEE80211_TRANS_WAIT; + ieee80211_add_callback(m, ieee80211_tx_mgt_cb, + (void *) ic->ic_state); break; case IEEE80211_FC0_SUBTYPE_ASSOC_RESP: @@ -1719,9 +1719,6 @@ ret = ieee80211_mgmt_output(ic, ni, m, type); if (ret != 0) goto bad; - if (timer) - callout_reset(&ic->ic_mgtsend, timer*hz, - ieee80211_tx_timeout, ic); return 0; bad: ieee80211_free_node(ni); @@ -1730,9 +1727,10 @@ } static void -ieee80211_tx_timeout(void *arg) +ieee80211_tx_mgt_timeout(void *arg) { - struct ieee80211com *ic = arg; + struct ieee80211_node *ni = arg; + struct ieee80211com *ic = ni->ni_ic; if (ic->ic_state != IEEE80211_S_INIT && (ic->ic_flags & IEEE80211_F_SCAN) == 0) { @@ -1745,6 +1743,29 @@ } } +static void +ieee80211_tx_mgt_cb(struct ieee80211_node *ni, void *arg, int status) +{ + struct ieee80211com *ic = ni->ni_ic; + enum ieee80211_state ostate = (enum ieee80211_state) arg; + + /* + * Frame transmit completed; arrange timer callback. If + * transmit was successfuly we wait for response. Otherwise + * we arrange an immediate callback instead of doing the + * callback directly since we don't know what state the driver + * is in (e.g. what locks it is holding). This work should + * not be too time-critical and not happen too often so the + * added overhead is acceptable. + * + * XXX what happens if !acked but response shows up before callback? + */ + if (ic->ic_state == ostate) + callout_reset(&ic->ic_mgtsend, + status == 0 ? IEEE80211_TRANS_WAIT*hz : 0, + ieee80211_tx_mgt_timeout, ni); +} + /* * Allocate a beacon frame and fillin the appropriate bits. */ From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:54:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6FDF16A438; Sat, 26 Nov 2005 00:54:23 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 B134616A42B for ; Sat, 26 Nov 2005 00:54:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A81AC43D9A for ; Sat, 26 Nov 2005 00:54:07 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0s4FU015275 for ; Sat, 26 Nov 2005 00:54:04 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0s4KM015272 for perforce@freebsd.org; Sat, 26 Nov 2005 00:54:04 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:54:04 GMT Message-Id: <200511260054.jAQ0s4KM015272@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87231 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:54:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=87231 Change 87231 by sam@sam_ebb on 2005/11/26 00:53:59 do tx complete callback Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#115 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#115 (text+ko) ==== @@ -4320,7 +4320,15 @@ nacked++; ath_rate_tx_complete(sc, an, ds, ds0); } + /* + * Do any tx complete callback. Note this must + * be done before releasing the node reference. + */ + if (bf->bf_m->m_flags & M_TXCB) + ieee80211_process_callback(ni, bf->bf_m, + ds->ds_txstat.ts_status); + /* * Reclaim reference to node. * * NB: the node may be reclaimed here if, for example @@ -4332,6 +4340,7 @@ bus_dmamap_sync(sc->sc_dmat, bf->bf_dmamap, BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(sc->sc_dmat, bf->bf_dmamap); + m_freem(bf->bf_m); bf->bf_m = NULL; bf->bf_node = NULL; From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:55:29 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA4F916A424; Sat, 26 Nov 2005 00:55:28 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 A860A16A423 for ; Sat, 26 Nov 2005 00:55:28 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5872F43D8E for ; Sat, 26 Nov 2005 00:55:12 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0t6Ou015366 for ; Sat, 26 Nov 2005 00:55:06 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0t5Tj015363 for perforce@freebsd.org; Sat, 26 Nov 2005 00:55:05 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:55:05 GMT Message-Id: <200511260055.jAQ0t5Tj015363@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87232 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:55:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=87232 Change 87232 by sam@sam_ebb on 2005/11/26 00:54:38 fixups for new scanning stuff and channel reorg Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#8 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#8 (text+ko) ==== @@ -125,6 +125,9 @@ static void ral_bbp_write(struct ral_softc *, uint8_t, uint8_t); static uint8_t ral_bbp_read(struct ral_softc *, uint8_t); static void ral_rf_write(struct ral_softc *, uint8_t, uint32_t); +static void ral_scan_start(struct ieee80211com *); +static void ral_scan_end(struct ieee80211com *); +static void ral_set_channel(struct ieee80211com *); static void ral_set_chan(struct ral_softc *, struct ieee80211_channel *); #if 0 @@ -134,7 +137,7 @@ static void ral_update_plcp(struct ral_softc *); static void ral_update_slot(struct ifnet *); static void ral_update_led(struct ral_softc *, int, int); -static void ral_set_bssid(struct ral_softc *, uint8_t *); +static void ral_set_bssid(struct ral_softc *, const uint8_t *); static void ral_set_macaddr(struct ral_softc *, uint8_t *); static void ral_get_macaddr(struct ral_softc *, uint8_t *); static void ral_update_promisc(struct ral_softc *); @@ -448,11 +451,12 @@ /* set supported .11b and .11g channels (1 through 14) */ for (i = 1; i <= 14; i++) { c = &ic->ic_channels[ic->ic_nchans++]; - c->ic_freq = - ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); - c->ic_flags = - IEEE80211_CHAN_CCK | IEEE80211_CHAN_OFDM | - IEEE80211_CHAN_DYN | IEEE80211_CHAN_2GHZ; + c->ic_freq = ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); + c->ic_flags = IEEE80211_CHAN_B; + c->ic_ieee = i; + c = &ic->ic_channels[ic->ic_nchans++]; + c->ic_freq = ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); + c->ic_flags = IEEE80211_CHAN_G; c->ic_ieee = i; } @@ -460,6 +464,9 @@ ic->ic_node_alloc = ral_node_alloc; ic->ic_updateslot = ral_update_slot; ic->ic_reset = ral_reset; + ic->ic_scan_start = ral_scan_start; + ic->ic_scan_end = ral_scan_end; + ic->ic_set_channel = ral_set_channel; /* override state transition machine */ sc->sc_newstate = ic->ic_newstate; @@ -1125,6 +1132,7 @@ struct ral_tx_desc *desc; struct ral_tx_data *data; struct ral_node *rn; + int err; bus_dmamap_sync(sc->txq.desc_dmat, sc->txq.desc_map, BUS_DMASYNC_POSTREAD); @@ -1140,6 +1148,7 @@ rn = (struct ral_node *)data->ni; + err = 0; switch (le32toh(desc->flags) & RAL_TX_RESULT_MASK) { case RAL_TX_SUCCESS: DPRINTFN(10, ("data frame sent successfully\n")); @@ -1164,6 +1173,7 @@ &rn->rssadapt, &data->id); } ifp->if_oerrors++; + err = ETIMEDOUT; break; case RAL_TX_FAIL_INVALID: @@ -1172,11 +1182,15 @@ device_printf(sc->sc_dev, "sending data frame failed " "0x%08x\n", le32toh(desc->flags)); ifp->if_oerrors++; + err = EIO; /* NB: anything */ + break; } bus_dmamap_sync(sc->txq.data_dmat, data->map, BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(sc->txq.data_dmat, data->map); + if (data->m->m_flags & M_TXCB) + ieee80211_process_callback(data->ni, data->m, err); m_freem(data->m); data->m = NULL; ieee80211_free_node(data->ni); @@ -2248,6 +2262,37 @@ } static void +ral_scan_start(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ral_softc *sc = ifp->if_softc; + + /* abort TSF synchronization */ + RAL_WRITE(sc, RAL_CSR14, 0); + ral_set_bssid(sc, ifp->if_broadcastaddr); +} + +static void +ral_scan_end(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ral_softc *sc = ifp->if_softc; + + ral_enable_tsf_sync(sc); + /* XXX keep local copy */ + ral_set_bssid(sc, ic->ic_bss->ni_bssid); +} + +static void +ral_set_channel(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ral_softc *sc = ifp->if_softc; + + ral_set_chan(sc, ic->ic_curchan); +} + +static void ral_set_chan(struct ral_softc *sc, struct ieee80211_channel *c) { #define N(a) (sizeof (a) / sizeof ((a)[0])) @@ -2331,7 +2376,7 @@ break; } - if (ic->ic_state != IEEE80211_S_SCAN) { + if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { /* set Japan filter bit for channel 14 */ tmp = ral_bbp_read(sc, 70); @@ -2484,7 +2529,7 @@ } static void -ral_set_bssid(struct ral_softc *sc, uint8_t *bssid) +ral_set_bssid(struct ral_softc *sc, const uint8_t *bssid) { uint32_t tmp; From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:56:31 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8852316A431; Sat, 26 Nov 2005 00:56:30 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 228C016A42B for ; Sat, 26 Nov 2005 00:56:30 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5DF1543DBC for ; Sat, 26 Nov 2005 00:56:14 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0u8vs015423 for ; Sat, 26 Nov 2005 00:56:08 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0u7Yb015420 for perforce@freebsd.org; Sat, 26 Nov 2005 00:56:07 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:56:07 GMT Message-Id: <200511260056.jAQ0u7Yb015420@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87233 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:56:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=87233 Change 87233 by sam@sam_ebb on 2005/11/26 00:55:12 fixups for new scanning stuff and channel reorg; doesn't work because of Giant needs Affected files ... .. //depot/projects/wifi/sys/dev/usb/if_ural.c#8 edit Differences ... ==== //depot/projects/wifi/sys/dev/usb/if_ural.c#8 (text+ko) ==== @@ -142,13 +142,16 @@ Static void ural_bbp_write(struct ural_softc *, uint8_t, uint8_t); Static uint8_t ural_bbp_read(struct ural_softc *, uint8_t); Static void ural_rf_write(struct ural_softc *, uint8_t, uint32_t); +static void ural_scan_start(struct ieee80211com *); +static void ural_scan_end(struct ieee80211com *); +static void ural_set_channel(struct ieee80211com *); Static void ural_set_chan(struct ural_softc *, struct ieee80211_channel *); #if 0 Static void ural_disable_rf_tune(struct ural_softc *); #endif Static void ural_enable_tsf_sync(struct ural_softc *); -Static void ural_set_bssid(struct ural_softc *, uint8_t *); +Static void ural_set_bssid(struct ural_softc *, const uint8_t *); Static void ural_set_macaddr(struct ural_softc *, uint8_t *); Static void ural_update_promisc(struct ural_softc *); Static const char *ural_get_rf(int); @@ -488,16 +491,20 @@ /* set supported .11b and .11g channels (1 through 14) */ for (i = 1; i <= 14; i++) { c = &ic->ic_channels[ic->ic_nchans++]; - c->ic_freq = - ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); - c->ic_flags = - IEEE80211_CHAN_CCK | IEEE80211_CHAN_OFDM | - IEEE80211_CHAN_DYN | IEEE80211_CHAN_2GHZ; + c->ic_freq = ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); + c->ic_flags = IEEE80211_CHAN_B; + c->ic_ieee = i; + c = &ic->ic_channels[ic->ic_nchans++]; + c->ic_freq = ieee80211_ieee2mhz(i, IEEE80211_CHAN_2GHZ); + c->ic_flags = IEEE80211_CHAN_G; c->ic_ieee = i; } ieee80211_ifattach(ic); ic->ic_reset = ural_reset; + ic->ic_scan_start = ural_scan_start; + ic->ic_scan_end = ural_scan_end; + ic->ic_set_channel = ural_set_channel; /* override state transition machine */ sc->sc_newstate = ic->ic_newstate; @@ -787,6 +794,9 @@ struct ural_softc *sc = data->sc; struct ifnet *ifp = sc->sc_ic.ic_ifp; + if (data->m->m_flags & M_TXCB) + ieee80211_process_callback(data->ni, data->m, + status == USBD_NORMAL_COMPLETION ? 0 : ETIMEDOUT); if (status != USBD_NORMAL_COMPLETION) { if (status == USBD_NOT_STARTED || status == USBD_CANCELLED) return; @@ -798,6 +808,7 @@ usbd_clear_endpoint_stall(sc->sc_rx_pipeh); ifp->if_oerrors++; + /* XXX mbuf leak? */ return; } @@ -1557,6 +1568,39 @@ } Static void +ural_scan_start(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ural_softc *sc = ifp->if_softc; + + /* abort TSF synchronization */ + ural_write(sc, RAL_TXRX_CSR19, 0); + ural_set_bssid(sc, ifp->if_broadcastaddr); +} + +Static void +ural_scan_end(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ural_softc *sc = ifp->if_softc; + + ural_enable_tsf_sync(sc); + /* XXX keep local copy */ + ural_set_bssid(sc, ic->ic_bss->ni_bssid); +} + +Static void +ural_set_channel(struct ieee80211com *ic) +{ + struct ifnet *ifp = ic->ic_ifp; + struct ural_softc *sc = ifp->if_softc; + + mtx_lock(&Giant); + ural_set_chan(sc, ic->ic_curchan); + mtx_unlock(&Giant); +} + +Static void ural_set_chan(struct ural_softc *sc, struct ieee80211_channel *c) { #define N(a) (sizeof (a) / sizeof ((a)[0])) @@ -1641,7 +1685,7 @@ } if (ic->ic_opmode != IEEE80211_M_MONITOR && - ic->ic_state != IEEE80211_S_SCAN) { + (ic->ic_flags & IEEE80211_F_SCAN) == 0) { /* set Japan filter bit for channel 14 */ tmp = ural_bbp_read(sc, 70); @@ -1723,7 +1767,7 @@ } Static void -ural_set_bssid(struct ural_softc *sc, uint8_t *bssid) +ural_set_bssid(struct ural_softc *sc, const uint8_t *bssid) { uint16_t tmp; From owner-p4-projects@FreeBSD.ORG Sat Nov 26 00:56:32 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F0D216A477; Sat, 26 Nov 2005 00:56:31 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 BFD0C16A44C for ; Sat, 26 Nov 2005 00:56:30 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 810E943DB0 for ; Sat, 26 Nov 2005 00:56:11 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ0u8Ln015429 for ; Sat, 26 Nov 2005 00:56:08 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ0u8U0015426 for perforce@freebsd.org; Sat, 26 Nov 2005 00:56:08 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 00:56:08 GMT Message-Id: <200511260056.jAQ0u8U0015426@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87234 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 00:56:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=87234 Change 87234 by sam@sam_ebb on 2005/11/26 00:55:44 honor tx complete callbacks (not needed for now as mgt frames are done in firmware) Affected files ... .. //depot/projects/wifi/sys/dev/ipw/if_ipw.c#10 edit .. //depot/projects/wifi/sys/dev/iwi/if_iwi.c#12 edit Differences ... ==== //depot/projects/wifi/sys/dev/ipw/if_ipw.c#10 (text+ko) ==== @@ -1184,6 +1184,8 @@ bus_dmamap_unload(sc->txbuf_dmat, sbuf->map); SLIST_INSERT_HEAD(&sc->free_sbuf, sbuf, next); + if (sbuf->m->m_flags & M_TXCB) + ieee80211_process_callback(sbuf->ni, sbuf->m, 0/*XXX*/); m_freem(sbuf->m); ieee80211_free_node(sbuf->ni); ==== //depot/projects/wifi/sys/dev/iwi/if_iwi.c#12 (text+ko) ==== @@ -1398,6 +1398,8 @@ bus_dmamap_sync(txq->data_dmat, data->map, BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(txq->data_dmat, data->map); + if (data->m->m_flags & M_TXCB) + ieee80211_process_callback(data->ni, data->m, 0/*XXX*/); m_freem(data->m); data->m = NULL; ieee80211_free_node(data->ni); From owner-p4-projects@FreeBSD.ORG Sat Nov 26 01:56:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C6B716A422; Sat, 26 Nov 2005 01:56:24 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 2451616A41F for ; Sat, 26 Nov 2005 01:56:24 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E0DE643D46 for ; Sat, 26 Nov 2005 01:56:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ1uNLK024057 for ; Sat, 26 Nov 2005 01:56:23 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ1uNnD024054 for perforce@freebsd.org; Sat, 26 Nov 2005 01:56:23 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 01:56:23 GMT Message-Id: <200511260156.jAQ1uNnD024054@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87240 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 01:56:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=87240 Change 87240 by sam@sam_ebb on 2005/11/26 01:55:31 mark bg scan capability Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#9 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#9 (text+ko) ==== @@ -415,9 +415,17 @@ ic->ic_state = IEEE80211_S_INIT; /* set device capabilities */ - ic->ic_caps = IEEE80211_C_MONITOR | IEEE80211_C_IBSS | - IEEE80211_C_HOSTAP | IEEE80211_C_SHPREAMBLE | IEEE80211_C_SHSLOT | - IEEE80211_C_PMGT | IEEE80211_C_TXPMGT | IEEE80211_C_WPA; + ic->ic_caps = + IEEE80211_C_IBSS /* ibss, nee adhoc, mode */ + | IEEE80211_C_HOSTAP /* hostap mode */ + | IEEE80211_C_MONITOR /* monitor mode */ + | IEEE80211_C_SHPREAMBLE /* short preamble supported */ + | IEEE80211_C_SHSLOT /* short slot time supported */ + | IEEE80211_C_PMGT + | IEEE80211_C_TXPMGT + | IEEE80211_C_BGSCAN /* capable of bg scanning */ + | IEEE80211_C_WPA /* capable of WPA1+WPA2 */ + ; if (sc->rf_rev == RAL_RF_5222) { /* set supported .11a rates */ From owner-p4-projects@FreeBSD.ORG Sat Nov 26 04:37:45 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DD41916A422; Sat, 26 Nov 2005 04:37:44 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 9033616A41F for ; Sat, 26 Nov 2005 04:37:44 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 432B943D46 for ; Sat, 26 Nov 2005 04:37:44 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ4bi2M030702 for ; Sat, 26 Nov 2005 04:37:44 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ4bhAO030699 for perforce@freebsd.org; Sat, 26 Nov 2005 04:37:43 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 04:37:43 GMT Message-Id: <200511260437.jAQ4bhAO030699@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87251 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 04:37:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=87251 Change 87251 by sam@sam_ebb on 2005/11/26 04:36:43 correct spacing Affected files ... .. //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#51 edit Differences ... ==== //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#51 (text+ko) ==== @@ -927,7 +927,7 @@ if (len < sizeof(struct ieee80211req_scan_result)) return; - printf("%-14.14s %-17.17s %4s %4s %-8s %3s %4s\n" + printf("%-14.14s %-17.17s %4s %4s %-8s %3s %4s\n" , "SSID" , "BSSID" , "CHAN" From owner-p4-projects@FreeBSD.ORG Sat Nov 26 05:17:33 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DFA9416A423; Sat, 26 Nov 2005 05:17:32 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 9CC9216A420 for ; Sat, 26 Nov 2005 05:17:32 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 609C943D5D for ; Sat, 26 Nov 2005 05:17:32 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ5HW5d039376 for ; Sat, 26 Nov 2005 05:17:32 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ5HWSs039373 for perforce@freebsd.org; Sat, 26 Nov 2005 05:17:32 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 05:17:32 GMT Message-Id: <200511260517.jAQ5HWSs039373@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87252 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 05:17:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=87252 Change 87252 by sam@sam_ebb on 2005/11/26 05:16:32 nuke dwelltime; no longer used Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#10 edit .. //depot/projects/wifi/sys/dev/ral/if_ralvar.h#4 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#10 (text+ko) ==== @@ -495,7 +495,6 @@ /* * Add a few sysctl knobs. */ - sc->dwelltime = 200; SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, @@ -505,11 +504,6 @@ SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "rxantenna", CTLFLAG_RW, &sc->rx_ant, 0, "rx antenna (0=auto)"); - SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), - SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dwell", - CTLFLAG_RW, &sc->dwelltime, 0, - "channel dwell time (ms) for AP/station scanning"); - /* * Hook our interrupt after all initialization is complete. */ ==== //depot/projects/wifi/sys/dev/ral/if_ralvar.h#4 (text+ko) ==== @@ -142,8 +142,6 @@ int tx_ant; int nb_ant; - int dwelltime; - struct bpf_if *sc_drvbpf; union { From owner-p4-projects@FreeBSD.ORG Sat Nov 26 05:17:34 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C067316A42F; Sat, 26 Nov 2005 05:17:33 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 4864C16A453 for ; Sat, 26 Nov 2005 05:17:33 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE2E543D5D for ; Sat, 26 Nov 2005 05:17:32 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ5HWuL039382 for ; Sat, 26 Nov 2005 05:17:32 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ5HWtl039379 for perforce@freebsd.org; Sat, 26 Nov 2005 05:17:32 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 05:17:32 GMT Message-Id: <200511260517.jAQ5HWtl039379@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87253 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 05:17:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=87253 Change 87253 by sam@sam_ebb on 2005/11/26 05:17:08 stop device on detach; fixes panics on cardbus eject Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#11 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#11 (text+ko) ==== @@ -539,6 +539,7 @@ struct ieee80211com *ic = &sc->sc_ic; struct ifnet *ifp = ic->ic_ifp; + ral_stop(sc); callout_stop(&sc->rssadapt_ch); bpfdetach(ifp); From owner-p4-projects@FreeBSD.ORG Sat Nov 26 05:29:56 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E3E216A422; Sat, 26 Nov 2005 05:29:56 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 1E19816A41F for ; Sat, 26 Nov 2005 05:29:56 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D5F543D82 for ; Sat, 26 Nov 2005 05:29:49 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ5TmI9039811 for ; Sat, 26 Nov 2005 05:29:48 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ5TmWs039808 for perforce@freebsd.org; Sat, 26 Nov 2005 05:29:48 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 05:29:48 GMT Message-Id: <200511260529.jAQ5TmWs039808@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87255 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 05:29:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=87255 Change 87255 by sam@sam_ebb on 2005/11/26 05:29:02 use separate accounting for driver memory Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#12 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#12 (text+ko) ==== @@ -338,6 +338,8 @@ { 161, 0x08808, 0x0242f, 0x00281 } }; +MALLOC_DEFINE(M_RALDEV, "raldev", "ral driver dma buffers"); + int ral_attach(device_t dev) { @@ -655,7 +657,7 @@ goto fail; } - ring->data = malloc(count * sizeof (struct ral_tx_data), M_DEVBUF, + ring->data = malloc(count * sizeof (struct ral_tx_data), M_RALDEV, M_NOWAIT | M_ZERO); if (ring->data == NULL) { device_printf(sc->sc_dev, "could not allocate soft data\n"); @@ -754,7 +756,7 @@ bus_dmamap_destroy(ring->data_dmat, data->map); } - free(ring->data, M_DEVBUF); + free(ring->data, M_RALDEV); } if (ring->data_dmat != NULL) @@ -795,7 +797,7 @@ goto fail; } - ring->data = malloc(count * sizeof (struct ral_rx_data), M_DEVBUF, + ring->data = malloc(count * sizeof (struct ral_rx_data), M_RALDEV, M_NOWAIT | M_ZERO); if (ring->data == NULL) { device_printf(sc->sc_dev, "could not allocate soft data\n"); @@ -900,7 +902,7 @@ bus_dmamap_destroy(ring->data_dmat, data->map); } - free(ring->data, M_DEVBUF); + free(ring->data, M_RALDEV); } if (ring->data_dmat != NULL) From owner-p4-projects@FreeBSD.ORG Sat Nov 26 06:33:05 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4282516A422; Sat, 26 Nov 2005 06:33:05 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 149B816A41F for ; Sat, 26 Nov 2005 06:33:05 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D2F0543D5A for ; Sat, 26 Nov 2005 06:33:04 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ6X468041971 for ; Sat, 26 Nov 2005 06:33:04 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ6X4vR041968 for perforce@freebsd.org; Sat, 26 Nov 2005 06:33:04 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 06:33:04 GMT Message-Id: <200511260633.jAQ6X4vR041968@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87256 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 06:33:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=87256 Change 87256 by sam@sam_ebb on 2005/11/26 06:32:13 honor pwr sav state; cancel bg scan on xmit when in pwr save mode Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#13 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#13 (text+ko) ==== @@ -2093,6 +2093,26 @@ m_freem(m0); continue; } + if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) && + (m0->m_flags & M_PWR_SAV) == 0) { + /* + * Station in power save mode; pass the frame + * to the 802.11 layer and continue. We'll get + * the frame back when the time is right. + */ + ieee80211_pwrsave(ni, m0); + /* + * If we're in power save mode 'cuz of a bg + * scan cancel it so the traffic can flow. + * The packet we just queued will automatically + * get sent when we drop out of power save. + * XXX locking + */ + if (ic->ic_flags & IEEE80211_F_SCAN) + ieee80211_cancel_scan(ic); + ieee80211_free_node(ni); + continue; + } BPF_MTAP(ifp, m0); m0 = ieee80211_encap(ic, m0, ni); From owner-p4-projects@FreeBSD.ORG Sat Nov 26 06:34:07 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4997416A422; Sat, 26 Nov 2005 06:34:07 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 0C34C16A41F for ; Sat, 26 Nov 2005 06:34:07 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A940A43D5C for ; Sat, 26 Nov 2005 06:34:06 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ6Y6KJ042014 for ; Sat, 26 Nov 2005 06:34:06 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ6Y608042011 for perforce@freebsd.org; Sat, 26 Nov 2005 06:34:06 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 06:34:06 GMT Message-Id: <200511260634.jAQ6Y608042011@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87257 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 06:34:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=87257 Change 87257 by sam@sam_ebb on 2005/11/26 06:33:35 first cut at wme and fixing ifs parameters Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#14 edit .. //depot/projects/wifi/sys/dev/ral/if_ralvar.h#5 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#14 (text+ko) ==== @@ -109,7 +109,7 @@ static uint8_t ral_plcp_signal(int); static void ral_setup_tx_desc(struct ral_softc *, struct ral_tx_desc *, uint32_t, int, int, int, - bus_addr_t); + u_int, u_int, u_int, bus_addr_t); static int ral_tx_bcn(struct ral_softc *, struct mbuf *, struct ieee80211_node *); static int ral_tx_mgt(struct ral_softc *, struct mbuf *, @@ -136,6 +136,7 @@ static void ral_enable_tsf_sync(struct ral_softc *); static void ral_update_plcp(struct ral_softc *); static void ral_update_slot(struct ifnet *); +static int ral_wme_update(struct ieee80211com *); static void ral_update_led(struct ral_softc *, int, int); static void ral_set_bssid(struct ral_softc *, const uint8_t *); static void ral_set_macaddr(struct ral_softc *, uint8_t *); @@ -427,6 +428,7 @@ | IEEE80211_C_TXPMGT | IEEE80211_C_BGSCAN /* capable of bg scanning */ | IEEE80211_C_WPA /* capable of WPA1+WPA2 */ + | IEEE80211_C_WME /* capable of WME */ ; if (sc->rf_rev == RAL_RF_5222) { @@ -473,6 +475,7 @@ ieee80211_ifattach(ic); ic->ic_node_alloc = ral_node_alloc; ic->ic_updateslot = ral_update_slot; + ic->ic_wme.wme_update = ral_wme_update; ic->ic_reset = ral_reset; ic->ic_scan_start = ral_scan_start; ic->ic_scan_end = ral_scan_end; @@ -1650,7 +1653,8 @@ static void ral_setup_tx_desc(struct ral_softc *sc, struct ral_tx_desc *desc, - uint32_t flags, int len, int rate, int encrypt, bus_addr_t physaddr) + uint32_t flags, int len, int rate, int encrypt, + u_int aifsn, u_int logcwmin, u_int logcwmax, bus_addr_t physaddr) { struct ieee80211com *ic = &sc->sc_ic; uint16_t plcp_length; @@ -1664,7 +1668,10 @@ desc->flags |= htole32(RAL_TX_OFDM); desc->physaddr = htole32(physaddr); - desc->wme = htole16(RAL_AIFSN(3) | RAL_LOGCWMIN(4) | RAL_LOGCWMAX(6)); + desc->wme = htole16(RAL_AIFSN(aifsn) + | RAL_LOGCWMIN(logcwmin) + | RAL_LOGCWMAX(logcwmax)) + ; /* * Fill PLCP fields. @@ -1738,8 +1745,27 @@ data->m = m0; data->ni = ni; - ral_setup_tx_desc(sc, desc, RAL_TX_IFS_NEWBACKOFF | RAL_TX_TIMESTAMP, - m0->m_pkthdr.len, rate, 0, segs->ds_addr); + if (ic->ic_opmode == IEEE80211_M_HOSTAP) { + /* + * Always burst out beacon and CAB traffic. + */ + ral_setup_tx_desc(sc, desc, + RAL_TX_IFS_NEWBACKOFF | RAL_TX_TIMESTAMP, + m0->m_pkthdr.len, rate, 0, RAL_BEACON_AIFS_DEFAULT, + RAL_BEACON_CWMIN_DEFAULT, RAL_BEACON_CWMAX_DEFAULT, + segs->ds_addr); + } else { + struct wmeParams *wmep = + &ic->ic_wme.wme_chanParams.cap_wmeParams[WME_AC_BE]; + /* + * Adhoc mode; important thing is to use 2x cwmin. + */ + ral_setup_tx_desc(sc, desc, + RAL_TX_IFS_NEWBACKOFF | RAL_TX_TIMESTAMP, + m0->m_pkthdr.len, rate, 0, wmep->wmep_aifsn, + wmep->wmep_logcwmin+1, wmep->wmep_logcwmax, + segs->ds_addr); + } DPRINTFN(10, ("sending beacon frame len=%u idx=%u rate=%u\n", m0->m_pkthdr.len, sc->bcnq.cur, rate)); @@ -1757,6 +1783,7 @@ ral_tx_mgt(struct ral_softc *sc, struct mbuf *m0, struct ieee80211_node *ni) { struct ieee80211com *ic = &sc->sc_ic; + const struct wmeParams *wmep; struct ral_tx_desc *desc; struct ral_tx_data *data; struct ieee80211_frame *wh; @@ -1765,6 +1792,13 @@ uint32_t flags = 0; int nsegs, rate, error; + /* NB: force all management frames to highest queue */ + if (ni->ni_flags & IEEE80211_NODE_QOS) { + /* NB: force all management frames to highest queue */ + wmep = &ic->ic_wme.wme_chanParams.cap_wmeParams[WME_AC_VO]; + } else + wmep = &ic->ic_wme.wme_chanParams.cap_wmeParams[WME_AC_BE]; + /* XXX use different queue's */ desc = &sc->prioq.desc[sc->prioq.cur]; data = &sc->prioq.data[sc->prioq.cur]; @@ -1797,7 +1831,8 @@ wh = mtod(m0, struct ieee80211_frame *); if (!IEEE80211_IS_MULTICAST(wh->i_addr1)) { - flags |= RAL_TX_ACK; + if (!wmep->wmep_noackPolicy) + flags |= RAL_TX_ACK; dur = ral_txtime(RAL_ACK_SIZE, rate, ic->ic_flags) + RAL_SIFS; *(uint16_t *)wh->i_dur = htole16(dur); @@ -1811,6 +1846,7 @@ } ral_setup_tx_desc(sc, desc, flags, m0->m_pkthdr.len, rate, 0, + wmep->wmep_aifsn, wmep->wmep_logcwmin, wmep->wmep_logcwmax, segs->ds_addr); bus_dmamap_sync(sc->prioq.data_dmat, data->map, BUS_DMASYNC_PREWRITE); @@ -1862,6 +1898,8 @@ ral_tx_data(struct ral_softc *sc, struct mbuf *m0, struct ieee80211_node *ni) { struct ieee80211com *ic = &sc->sc_ic; + const struct wmeParams * wmep = + &ic->ic_wme.wme_chanParams.cap_wmeParams[M_WME_GETAC(m0)]; struct ral_tx_desc *desc; struct ral_tx_data *data; struct ral_node *rn; @@ -1941,7 +1979,8 @@ data->id.id_node = NULL; ral_setup_tx_desc(sc, desc, RAL_TX_ACK | RAL_TX_MORE_FRAG, - m->m_pkthdr.len, rtsrate, 1, segs->ds_addr); + m->m_pkthdr.len, rtsrate, 1, wmep->wmep_aifsn, + wmep->wmep_logcwmin, wmep->wmep_logcwmax, segs->ds_addr); bus_dmamap_sync(sc->txq.data_dmat, data->map, BUS_DMASYNC_PREWRITE); @@ -2017,7 +2056,8 @@ data->id.id_node = NULL; if (!IEEE80211_IS_MULTICAST(wh->i_addr1)) { - flags |= RAL_TX_ACK; + if (!wmep->wmep_noackPolicy) + flags |= RAL_TX_ACK; dur = ral_txtime(RAL_ACK_SIZE, ral_ack_rate(ic, rate), ic->ic_flags) + RAL_SIFS; @@ -2025,6 +2065,7 @@ } ral_setup_tx_desc(sc, desc, flags, m0->m_pkthdr.len, rate, 1, + wmep->wmep_aifsn, wmep->wmep_logcwmin, wmep->wmep_logcwmax, segs->ds_addr); bus_dmamap_sync(sc->txq.data_dmat, data->map, BUS_DMASYNC_PREWRITE); @@ -2113,6 +2154,12 @@ ieee80211_free_node(ni); continue; } + /* calculate priority so we can find the tx queue */ + if (ieee80211_classify(ic, m0, ni)) { + m_freem(m0); + ieee80211_free_node(ni); + continue; + } BPF_MTAP(ifp, m0); m0 = ieee80211_encap(ic, m0, ni); @@ -2543,6 +2590,16 @@ DPRINTF(("setting slottime to %uus\n", slottime)); } +/* + * Callback from the 802.11 layer to update WME parameters. + */ +static int +ral_wme_update(struct ieee80211com *ic) +{ + /* NB: nothing to do right now */ + return 0; +} + static void ral_update_led(struct ral_softc *sc, int led1, int led2) { ==== //depot/projects/wifi/sys/dev/ral/if_ralvar.h#5 (text+ko) ==== @@ -17,6 +17,10 @@ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ +#define RAL_BEACON_AIFS_DEFAULT 0 /* default aifs for ap beacon q */ +#define RAL_BEACON_CWMIN_DEFAULT 0 /* default cwmin for ap beacon q */ +#define RAL_BEACON_CWMAX_DEFAULT 0 /* default cwmax for ap beacon q */ + struct ral_rx_radiotap_header { struct ieee80211_radiotap_header wr_ihdr; uint64_t wr_tsf; From owner-p4-projects@FreeBSD.ORG Sat Nov 26 06:42:17 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 70A5716A424; Sat, 26 Nov 2005 06:42:17 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 3364016A41F for ; Sat, 26 Nov 2005 06:42:17 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF86643D5E for ; Sat, 26 Nov 2005 06:42:16 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQ6gGqY042328 for ; Sat, 26 Nov 2005 06:42:16 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQ6gGiJ042325 for perforce@freebsd.org; Sat, 26 Nov 2005 06:42:16 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 06:42:16 GMT Message-Id: <200511260642.jAQ6gGiJ042325@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87258 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 06:42:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=87258 Change 87258 by sam@sam_ebb on 2005/11/26 06:42:01 all data frames are classified; just fetch the ac Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#116 edit Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#116 (text+ko) ==== @@ -3953,17 +3953,11 @@ if (try0 != ATH_TXMAXTRY) ismrr = 1; } - /* - * Default all non-QoS traffic to the best-effort queue. - */ - if (wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_QOS) { - pri = M_WME_GETAC(m0); - if (cap->cap_wmeParams[pri].wmep_noackPolicy) { - flags |= HAL_TXDESC_NOACK; - sc->sc_stats.ast_tx_noack++; - } - } else - pri = WME_AC_BE; + pri = M_WME_GETAC(m0); + if (cap->cap_wmeParams[pri].wmep_noackPolicy) { + flags |= HAL_TXDESC_NOACK; + sc->sc_stats.ast_tx_noack++; + } break; default: if_printf(ifp, "bogus frame type 0x%x (%s)\n", From owner-p4-projects@FreeBSD.ORG Sat Nov 26 23:09:17 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2226916A422; Sat, 26 Nov 2005 23:09:17 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 BFD9B16A41F for ; Sat, 26 Nov 2005 23:09:16 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 57FA343D4C for ; Sat, 26 Nov 2005 23:09:16 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQN9GLL020395 for ; Sat, 26 Nov 2005 23:09:16 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQN9FYJ020392 for perforce@freebsd.org; Sat, 26 Nov 2005 23:09:15 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 23:09:15 GMT Message-Id: <200511262309.jAQN9FYJ020392@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87287 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 23:09:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=87287 Change 87287 by sam@sam_ebb on 2005/11/26 23:08:58 o enable qos frame rx o when wme is in use take cw params from the tx descriptor instead of the register config o disable wme capability for now; need to figure out why sending qos frames fails Affected files ... .. //depot/projects/wifi/sys/dev/ral/if_ral.c#15 edit .. //depot/projects/wifi/sys/dev/ral/if_ralreg.h#2 edit Differences ... ==== //depot/projects/wifi/sys/dev/ral/if_ral.c#15 (text+ko) ==== @@ -63,6 +63,7 @@ #include #include +#define RAL_DEBUG #ifdef RAL_DEBUG #define DPRINTF(x) do { if (ral_debug > 0) printf x; } while (0) #define DPRINTFN(n, x) do { if (ral_debug >= (n)) printf x; } while (0) @@ -428,7 +429,9 @@ | IEEE80211_C_TXPMGT | IEEE80211_C_BGSCAN /* capable of bg scanning */ | IEEE80211_C_WPA /* capable of WPA1+WPA2 */ - | IEEE80211_C_WME /* capable of WME */ +#if 0 + | IEEE80211_C_WME /* capable of WME (not yet) */ +#endif ; if (sc->rf_rev == RAL_RF_5222) { @@ -2578,7 +2581,12 @@ eifs = IEEE80211_IS_CHAN_B(ic->ic_curchan) ? 364 : 60; tmp = RAL_READ(sc, RAL_CSR11); - tmp = (tmp & ~0x1f00) | slottime << 8; + tmp = (tmp & ~RAL_BACKOFF_SLOTTIME) | (slottime << RAL_BACKOFF_SLOTTIME_S); + /* XXX belongs elsewhere but this is convenient */ + if (ic->ic_flags & IEEE80211_F_WME) + tmp |= RAL_BACKOFF_CWSELECT; + else + tmp &= ~RAL_BACKOFF_CWSELECT; RAL_WRITE(sc, RAL_CSR11, tmp); tmp = tx_pifs << 16 | tx_sifs; @@ -2855,11 +2863,15 @@ /* kick Rx */ tmp = RAL_DROP_PHY_ERROR | RAL_DROP_CRC_ERROR; if (ic->ic_opmode != IEEE80211_M_MONITOR) { + /* XXX need CTL frames for ap pwr save */ tmp |= RAL_DROP_CTL | RAL_DROP_VERSION_ERROR; + /* XXX needed for repeater operation */ if (ic->ic_opmode != IEEE80211_M_HOSTAP) tmp |= RAL_DROP_TODS; if (!(ifp->if_flags & IFF_PROMISC)) tmp |= RAL_DROP_NOT_TO_ME; + if (ic->ic_flags & IEEE80211_F_WME) + tmp |= RAL_ENABLE_QOS; } RAL_WRITE(sc, RAL_RXCSR0, tmp); ==== //depot/projects/wifi/sys/dev/ral/if_ralreg.h#2 (text+ko) ==== @@ -114,19 +114,34 @@ /* possible flags for register RXCSR0 */ -#define RAL_DISABLE_RX (1 << 0) -#define RAL_DROP_CRC_ERROR (1 << 1) -#define RAL_DROP_PHY_ERROR (1 << 2) -#define RAL_DROP_CTL (1 << 3) -#define RAL_DROP_NOT_TO_ME (1 << 4) -#define RAL_DROP_TODS (1 << 5) -#define RAL_DROP_VERSION_ERROR (1 << 6) +#define RAL_DISABLE_RX (1 << 0) /* disable rx engine */ +#define RAL_DROP_CRC_ERROR (1 << 1) /* drop frames w/ crc errors */ +#define RAL_DROP_PHY_ERROR (1 << 2) /* drop frames w/ phy errors */ +#define RAL_DROP_CTL (1 << 3) /* drop ctrl frames */ +#define RAL_DROP_NOT_TO_ME (1 << 4) /* drop unicast frames !to-me */ +#define RAL_DROP_TODS (1 << 5) /* drop frames with ToDs set */ +#define RAL_DROP_VERSION_ERROR (1 << 6) /* drop frames w/ bad version */ +#define RAL_PASS_CRC (1 << 7) /* include CRC with frame */ +#define RAL_PASS_PLCP (1 << 8) /* include PLCP with frame */ +#define RAL_DROP_MCAST (1 << 9) /* drop multicast frames */ +#define RAL_DROP_BCAST (1 << 10) /* drop broadcast frames */ +#define RAL_ENABLE_QOS (1 << 11) /* accept QOS data frames */ /* possible flags for register CSR1 */ #define RAL_RESET_ASIC (1 << 0) #define RAL_RESET_BBP (1 << 1) #define RAL_HOST_READY (1 << 2) +/* CSR11: back-off control register */ +#define RAL_BACKOFF_CWMIN 0x0000000f /* Cwmin */ +#define RAL_BACKOFF_CWMAX 0x000000f0 /* Cwmax */ +#define RAL_BACKOFF_SLOTTIME 0x00001f00 /* Slot time */ +#define RAL_BACKOFF_SLOTTIME_S 8 +#define RAL_BACKOFF_CWSELECT 0x00002000 /* CW param select (1 => reg, 0 => TxD) */ +/* bits 14-15 are reserved */ +#define RAL_BACKOFF_LGRETRY 0x00ff0000 /* long retry count */ +#define RAL_BACKOFF_SHRETRY 0xff000000 /* short retry count */ + /* possible flags for register CSR14 */ #define RAL_ENABLE_TSF (1 << 0) #define RAL_ENABLE_TSF_SYNC(x) (((x) & 0x3) << 1) From owner-p4-projects@FreeBSD.ORG Sat Nov 26 23:27:40 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C40D316A423; Sat, 26 Nov 2005 23:27:39 +0000 (GMT) X-Original-To: perforce@freebsd.org 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 99AD216A41F for ; Sat, 26 Nov 2005 23:27:39 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 37D2D43D58 for ; Sat, 26 Nov 2005 23:27:39 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id jAQNRd3S021284 for ; Sat, 26 Nov 2005 23:27:39 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id jAQNRcwI021281 for perforce@freebsd.org; Sat, 26 Nov 2005 23:27:38 GMT (envelope-from sam@freebsd.org) Date: Sat, 26 Nov 2005 23:27:38 GMT Message-Id: <200511262327.jAQNRcwI021281@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 87288 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Nov 2005 23:27:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=87288 Change 87288 by sam@sam_ebb on 2005/11/26 23:26:38 fix ifconfig scan Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#51 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#51 (text+ko) ==== @@ -74,37 +74,7 @@ static struct ieee80211_channel *findchannel(struct ieee80211com *, int ieee, int mode); -/* - * Prepare to do a user-initiated scan for AP's. If no - * current/default channel is setup or the current channel - * is invalid then pick the first available channel from - * the active list as the place to start the scan. - */ static int -ieee80211_setupscan(struct ieee80211com *ic, const u_int8_t chanlist[]) -{ - /* - * XXX don't permit a scan to be started unless we - * know the device is ready. For the moment this means - * the device is marked up as this is the required to - * initialize the hardware. It would be better to permit - * scanning prior to being up but that'll require some - * changes to the infrastructure. - */ - if (!IS_UP(ic)) - return EINVAL; - memcpy(ic->ic_chan_active, chanlist, sizeof(ic->ic_chan_active)); - /* - * We force the state to INIT before calling ieee80211_new_state - * to get ieee80211_begin_scan called. We really want to scan w/o - * altering the current state but that's not possible right now. - */ - /* XXX handle proberequest case */ - ic->ic_state = IEEE80211_S_INIT; /* XXX bypass state machine */ - return 0; -} - -static int cap2cipher(int flag) { switch (flag) { @@ -1837,11 +1807,14 @@ error = ieee80211_ioctl_setchanlist(ic, ireq); break; case IEEE80211_IOC_SCAN_REQ: - if (ic->ic_opmode == IEEE80211_M_HOSTAP) /* XXX ignore */ - break; - error = ieee80211_setupscan(ic, ic->ic_chan_avail); - if (error == 0) /* XXX background scan */ - error = ieee80211_new_state(ic, IEEE80211_S_SCAN, -1); + if (!IS_UP(ic)) + return EINVAL; + (void) ieee80211_start_scan(ic, + IEEE80211_SCAN_ACTIVE | + IEEE80211_SCAN_NOPICK | + IEEE80211_SCAN_ONCE, IEEE80211_SCAN_FOREVER, + /* XXX use ioctl params */ + ic->ic_des_nssid, ic->ic_des_ssid); break; case IEEE80211_IOC_ADDMAC: case IEEE80211_IOC_DELMAC: