Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Apr 2004 08:24:08 -0700 (PDT)
From:      Warner Losh <imp@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 51709 for review
Message-ID:  <200404251524.i3PFO85N078277@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=51709

Change 51709 by imp@imp_pacopaco on 2004/04/25 08:23:22

	IFC @51706 power tree

Affected files ...

.. //depot/projects/power/sys/alpha/alpha/pmap.c#6 integrate
.. //depot/projects/power/sys/alpha/include/float.h#3 integrate
.. //depot/projects/power/sys/amd64/include/float.h#3 integrate
.. //depot/projects/power/sys/compat/freebsd32/freebsd32_misc.c#6 integrate
.. //depot/projects/power/sys/conf/NOTES#14 integrate
.. //depot/projects/power/sys/conf/files#12 integrate
.. //depot/projects/power/sys/conf/files.amd64#6 integrate
.. //depot/projects/power/sys/conf/files.i386#9 integrate
.. //depot/projects/power/sys/conf/kern.pre.mk#6 integrate
.. //depot/projects/power/sys/conf/options#14 integrate
.. //depot/projects/power/sys/dev/acpica/acpi_timer.c#5 integrate
.. //depot/projects/power/sys/dev/acpica/acpivar.h#13 integrate
.. //depot/projects/power/sys/dev/ata/ata-chipset.c#11 integrate
.. //depot/projects/power/sys/dev/ata/ata-pci.c#9 integrate
.. //depot/projects/power/sys/dev/gem/if_gem.c#4 integrate
.. //depot/projects/power/sys/dev/if_ndis/if_ndis.c#9 integrate
.. //depot/projects/power/sys/dev/pccbb/pccbb.c#11 integrate
.. //depot/projects/power/sys/dev/pci/pci.c#14 integrate
.. //depot/projects/power/sys/dev/puc/pucdata.c#7 integrate
.. //depot/projects/power/sys/dev/uart/uart_dev_sab82532.c#3 integrate
.. //depot/projects/power/sys/dev/usb/if_axe.c#5 integrate
.. //depot/projects/power/sys/dev/usb/usbdevs#9 integrate
.. //depot/projects/power/sys/dev/usb/usbdevs.h#9 integrate
.. //depot/projects/power/sys/dev/usb/usbdevs_data.h#9 integrate
.. //depot/projects/power/sys/dev/vinum/vinumio.c#4 integrate
.. //depot/projects/power/sys/i386/acpica/acpi_asus.c#1 branch
.. //depot/projects/power/sys/i386/conf/NOTES#12 integrate
.. //depot/projects/power/sys/i386/include/float.h#3 integrate
.. //depot/projects/power/sys/ia64/include/float.h#3 integrate
.. //depot/projects/power/sys/isa/fd.c#6 integrate
.. //depot/projects/power/sys/kern/imgact_elf.c#7 integrate
.. //depot/projects/power/sys/kern/kern_exec.c#8 integrate
.. //depot/projects/power/sys/kern/kern_timeout.c#8 integrate
.. //depot/projects/power/sys/kern/sched_ule.c#9 integrate
.. //depot/projects/power/sys/modules/acpi/Makefile#6 integrate
.. //depot/projects/power/sys/modules/acpi/acpi_asus/Makefile#1 branch
.. //depot/projects/power/sys/modules/netgraph/Makefile#4 integrate
.. //depot/projects/power/sys/net/bridge.c#6 integrate
.. //depot/projects/power/sys/net/if.c#11 integrate
.. //depot/projects/power/sys/net/if_arcsubr.c#5 integrate
.. //depot/projects/power/sys/net/if_atmsubr.c#4 integrate
.. //depot/projects/power/sys/net/if_ethersubr.c#9 integrate
.. //depot/projects/power/sys/net/if_fddisubr.c#7 integrate
.. //depot/projects/power/sys/net/if_gre.c#5 integrate
.. //depot/projects/power/sys/net/if_iso88025subr.c#7 integrate
.. //depot/projects/power/sys/net/if_vlan.c#5 integrate
.. //depot/projects/power/sys/net/route.c#11 integrate
.. //depot/projects/power/sys/net/route.h#9 integrate
.. //depot/projects/power/sys/netatalk/aarp.c#6 integrate
.. //depot/projects/power/sys/netatalk/at_extern.h#2 integrate
.. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#4 integrate
.. //depot/projects/power/sys/netinet/if_ether.c#9 integrate
.. //depot/projects/power/sys/netinet/in_pcb.c#9 integrate
.. //depot/projects/power/sys/netinet/ip_fw.h#4 integrate
.. //depot/projects/power/sys/netinet/ip_fw2.c#7 integrate
.. //depot/projects/power/sys/netinet/tcp_hostcache.c#4 integrate
.. //depot/projects/power/sys/netinet/tcp_input.c#10 integrate
.. //depot/projects/power/sys/netinet6/nd6.c#9 integrate
.. //depot/projects/power/sys/pc98/pc98/fd.c#4 integrate
.. //depot/projects/power/sys/pci/agp.c#6 integrate
.. //depot/projects/power/sys/pci/agp_i810.c#7 integrate
.. //depot/projects/power/sys/powerpc/include/float.h#4 integrate
.. //depot/projects/power/sys/powerpc/powermac/ata_kauai.c#3 integrate
.. //depot/projects/power/sys/powerpc/powermac/ata_macio.c#5 integrate
.. //depot/projects/power/sys/sparc64/include/float.h#3 integrate
.. //depot/projects/power/sys/sparc64/pci/psycho.c#3 integrate
.. //depot/projects/power/sys/sparc64/pci/psychoreg.h#2 integrate
.. //depot/projects/power/sys/sparc64/pci/psychovar.h#2 integrate
.. //depot/projects/power/sys/sparc64/sparc64/iommu.c#4 integrate
.. //depot/projects/power/sys/sys/imgact.h#3 integrate
.. //depot/projects/power/sys/vm/device_pager.c#5 integrate
.. //depot/projects/power/sys/vm/phys_pager.c#3 integrate
.. //depot/projects/power/sys/vm/vm_kern.c#9 integrate
.. //depot/projects/power/sys/vm/vm_map.c#7 integrate
.. //depot/projects/power/sys/vm/vm_map.h#6 integrate
.. //depot/projects/power/sys/vm/vm_page.c#9 integrate
.. //depot/projects/power/sys/vm/vnode_pager.c#7 integrate

Differences ...

==== //depot/projects/power/sys/alpha/alpha/pmap.c#6 (text+ko) ====

@@ -148,7 +148,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.143 2004/04/11 05:08:26 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.144 2004/04/24 20:53:54 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -1194,8 +1194,6 @@
 		VM_OBJECT_LOCK(pmap->pm_pteobj);
 	m = vm_page_grab(pmap->pm_pteobj, ptepindex,
 	    VM_ALLOC_WIRED | VM_ALLOC_ZERO | VM_ALLOC_RETRY);
-	if ((m->flags & PG_ZERO) == 0)
-		pmap_zero_page(m);
 
 	KASSERT(m->queue == PQ_NONE,
 		("_pmap_allocpte: %p->queue != PQ_NONE", m));
@@ -1242,7 +1240,6 @@
 
 	vm_page_lock_queues();
 	m->valid = VM_PAGE_BITS_ALL;
-	vm_page_flag_clear(m, PG_ZERO);
 	vm_page_wakeup(m);
 	vm_page_unlock_queues();
 	if (!is_object_locked)

==== //depot/projects/power/sys/alpha/include/float.h#3 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/alpha/include/float.h,v 1.5 2004/04/05 21:00:50 imp Exp $ */
+/* $FreeBSD: src/sys/alpha/include/float.h,v 1.6 2004/04/25 02:36:28 das Exp $ */
 /* From: NetBSD: float.h,v 1.6 1997/07/17 21:36:03 thorpej Exp */
 
 /*
@@ -41,8 +41,10 @@
 
 #define FLT_RADIX	2		/* b */
 #define FLT_ROUNDS	__flt_rounds()
+#if __ISO_C_VISIBLE >= 1999
 #define	FLT_EVAL_METHOD	0		/* no promotions */
 #define	DECIMAL_DIG	17		/* max precision in decimal digits */
+#endif
 
 #define FLT_MANT_DIG	24		/* p */
 #define FLT_EPSILON	1.19209290E-07F	/* b**(1-p) */

==== //depot/projects/power/sys/amd64/include/float.h#3 (text+ko) ====

@@ -27,16 +27,20 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)float.h	7.1 (Berkeley) 5/8/90
- * $FreeBSD: src/sys/amd64/include/float.h,v 1.11 2004/04/05 21:25:51 imp Exp $
+ * $FreeBSD: src/sys/amd64/include/float.h,v 1.12 2004/04/25 02:36:28 das Exp $
  */
 
 #ifndef _MACHINE_FLOAT_H_
 #define _MACHINE_FLOAT_H_ 1
 
+#include <sys/cdefs.h>
+
 #define FLT_RADIX	2		/* b */
 #define FLT_ROUNDS	1		/* FP addition rounds to nearest */
+#if __ISO_C_VISIBLE >= 1999
 #define	FLT_EVAL_METHOD	(-1)		/* i387 semantics are...interesting */
 #define	DECIMAL_DIG	21		/* max precision in decimal digits */
+#endif
 
 #define FLT_MANT_DIG	24		/* p */
 #define FLT_EPSILON	1.19209290E-07F	/* b**(1-p) */

==== //depot/projects/power/sys/compat/freebsd32/freebsd32_misc.c#6 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.21 2004/04/14 23:17:37 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.22 2004/04/24 04:31:59 marcel Exp $");
 
 #include "opt_compat.h"
 
@@ -120,6 +120,7 @@
 	return (error);
 }
 
+#ifdef COMPAT_FREEBSD4
 static void
 copy_statfs(struct statfs *in, struct statfs32 *out)
 {
@@ -146,7 +147,9 @@
 	bcopy(in->f_mntfromname,
 	      out->f_mntfromname, min(MNAMELEN, FREEBSD4_MNAMELEN));
 }
+#endif
 
+#ifdef COMPAT_FREEBSD4
 int
 freebsd4_freebsd32_getfsstat(struct thread *td, struct freebsd4_freebsd32_getfsstat_args *uap)
 {
@@ -179,6 +182,7 @@
 	}
 	return (error);
 }
+#endif
 
 struct sigaltstack32 {
 	u_int32_t	ss_sp;
@@ -869,6 +873,7 @@
 	return (error);
 }
 
+#ifdef COMPAT_FREEBSD4
 int
 freebsd4_freebsd32_statfs(struct thread *td, struct freebsd4_freebsd32_statfs_args *uap)
 {
@@ -895,7 +900,9 @@
 	}
 	return (error);
 }
+#endif
 
+#ifdef COMPAT_FREEBSD4
 int
 freebsd4_freebsd32_fstatfs(struct thread *td, struct freebsd4_freebsd32_fstatfs_args *uap)
 {
@@ -922,7 +929,9 @@
 	}
 	return (error);
 }
+#endif
 
+#ifdef COMPAT_FREEBSD4
 int
 freebsd4_freebsd32_fhstatfs(struct thread *td, struct freebsd4_freebsd32_fhstatfs_args *uap)
 {
@@ -949,6 +958,7 @@
 	}
 	return (error);
 }
+#endif
 
 int
 freebsd32_semsys(struct thread *td, struct freebsd32_semsys_args *uap)

==== //depot/projects/power/sys/conf/NOTES#14 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1219 2004/04/21 20:18:06 scottl Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1221 2004/04/24 22:03:01 rik Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -434,12 +434,23 @@
 options 	NETGRAPH_RFC1490
 options 	NETGRAPH_SOCKET
 options 	NETGRAPH_SPLIT
+options 	NETGRAPH_SPPP
 options 	NETGRAPH_TEE
 options 	NETGRAPH_TTY
 options 	NETGRAPH_UI
 options 	NETGRAPH_VJC
 options 	NETGRAPH_ATM_ATMPIF
 
+# NgBluetooth - Netgraph Bluetooth
+options 	NETGRAPH_BLUETOOTH		# Common parts
+options 	NETGRAPH_BLUETOOTH_BT3C		# 3COM Bluetooth PCCARD
+options 	NETGRAPH_BLUETOOTH_H4		# H4 line discipline
+options 	NETGRAPH_BLUETOOTH_UBT		# Bluetooth USB dongle
+options 	NETGRAPH_BLUETOOTH_UBTBCMFW	# Firmware driver for BCM2033
+options 	NETGRAPH_BLUETOOTH_HCI		# Bluetooth HCI layer
+options 	NETGRAPH_BLUETOOTH_L2CAP	# Bluetooth L2CAP layer
+options 	NETGRAPH_BLUETOOTH_SOCKET	# Bluetooth sockets layer
+
 # NgATM - Netgraph ATM
 options 	NGATM_ATM
 options 	NGATM_ATMBASE

==== //depot/projects/power/sys/conf/files#12 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.888 2004/04/20 15:42:16 njl Exp $
+# $FreeBSD: src/sys/conf/files,v 1.890 2004/04/24 22:03:02 rik Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -1353,6 +1353,27 @@
 contrib/ngatm/netnatm/sig/sig_uni.c		optional ngatm_uni
 contrib/ngatm/netnatm/sig/sig_unimsgcpy.c	optional ngatm_uni
 contrib/ngatm/netnatm/sig/sig_verify.c		optional ngatm_uni
+netgraph/bluetooth/common/ng_bluetooth.c	optional netgraph_bluetooth
+netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c	optional netgraph_bluetooth_bt3c
+netgraph/bluetooth/drivers/h4/ng_h4.c		optional netgraph_bluetooth_h4
+netgraph/bluetooth/drivers/ubt/ng_ubt.c		optional netgraph_bluetooth_ubt
+netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c	optional netgraph_bluetooth_ubtbcmfw
+netgraph/bluetooth/hci/ng_hci_cmds.c		optional netgraph_bluetooth_hci
+netgraph/bluetooth/hci/ng_hci_evnt.c		optional netgraph_bluetooth_hci
+netgraph/bluetooth/hci/ng_hci_main.c		optional netgraph_bluetooth_hci
+netgraph/bluetooth/hci/ng_hci_misc.c		optional netgraph_bluetooth_hci
+netgraph/bluetooth/hci/ng_hci_ulpi.c		optional netgraph_bluetooth_hci
+netgraph/bluetooth/l2cap/ng_l2cap_cmds.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/l2cap/ng_l2cap_evnt.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/l2cap/ng_l2cap_llpi.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/l2cap/ng_l2cap_main.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/l2cap/ng_l2cap_misc.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/l2cap/ng_l2cap_ulpi.c	optional netgraph_bluetooth_l2cap
+netgraph/bluetooth/socket/ng_btsocket.c		optional netgraph_bluetooth_socket
+netgraph/bluetooth/socket/ng_btsocket_hci_raw.c	optional netgraph_bluetooth_socket
+netgraph/bluetooth/socket/ng_btsocket_l2cap.c	optional netgraph_bluetooth_socket
+netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c	optional netgraph_bluetooth_socket
+netgraph/bluetooth/socket/ng_btsocket_rfcomm.c	optional netgraph_bluetooth_socket
 netgraph/ng_UI.c	optional netgraph_UI
 netgraph/ng_async.c	optional netgraph_async
 netgraph/ng_atmllc.c	optional netgraph_atmllc
@@ -1386,6 +1407,7 @@
 netgraph/ng_rfc1490.c	optional netgraph_rfc1490
 netgraph/ng_socket.c	optional netgraph_socket
 netgraph/ng_split.c	optional netgraph_split
+netgraph/ng_sppp.c	optional netgraph_sppp
 netgraph/ng_tee.c	optional netgraph_tee
 netgraph/ng_tty.c	optional netgraph_tty
 netgraph/ng_vjc.c	optional netgraph_vjc

==== //depot/projects/power/sys/conf/files.amd64#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.amd64,v 1.30 2004/03/20 19:36:29 alc Exp $
+# $FreeBSD: src/sys/conf/files.amd64,v 1.31 2004/04/23 14:41:23 tjr Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -90,6 +90,9 @@
 crypto/des/des_enc.c		optional	ipsec ipsec_esp
 crypto/blowfish/bf_enc.c	optional	crypto
 crypto/des/des_enc.c		optional	crypto
+crypto/des/des_ecb.c		optional	netsmbcrypto
+crypto/des/des_enc.c		optional	netsmbcrypto
+crypto/des/des_setkey.c		optional	netsmbcrypto
 dev/fb/fb.c			optional	fb
 dev/fb/fb.c			optional	vga
 dev/fb/splash.c			optional	splash

==== //depot/projects/power/sys/conf/files.i386#9 (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.484 2004/04/10 19:43:15 marcel Exp $
+# $FreeBSD: src/sys/conf/files.i386,v 1.485 2004/04/22 21:29:01 philip Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -179,6 +179,7 @@
 libkern/ffsl.c			standard
 libkern/flsl.c			standard
 i386/acpica/OsdEnvironment.c	optional	acpi
+i386/acpica/acpi_asus.c		optional	acpi_asus acpi
 i386/acpica/acpi_machdep.c	optional	acpi
 i386/acpica/acpi_toshiba.c	optional	acpi_toshiba acpi
 i386/acpica/acpi_wakeup.c	optional	acpi

==== //depot/projects/power/sys/conf/kern.pre.mk#6 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.50 2004/03/29 01:15:39 kensmith Exp $
+# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.51 2004/04/23 19:48:43 emax Exp $
 
 # Part of a unified Makefile for building kernels.  This part contains all
 # of the definitions that need to be before %BEFORE_DEPEND.
@@ -63,6 +63,15 @@
 # ... and the same for the NgATM stuff
 INCLUDES+= -I$S/contrib/ngatm
 
+# ... and the same for the NgBluetooth stuff
+INCLUDES+= -I$S/netgraph/bluetooth/include
+INCLUDES+= -I$S/netgraph/bluetooth/drivers/bt3c
+INCLUDES+= -I$S/netgraph/bluetooth/drivers/h4
+INCLUDES+= -I$S/netgraph/bluetooth/drivers/ubt
+INCLUDES+= -I$S/netgraph/bluetooth/drivers/ubtbcmfw
+INCLUDES+= -I$S/netgraph/bluetooth/hci
+INCLUDES+= -I$S/netgraph/bluetooth/l2cap
+
 COPTS=	${INCLUDES} -D_KERNEL -include opt_global.h
 CFLAGS=	${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS}
 .if ${CC} != "icc"

==== //depot/projects/power/sys/conf/options#14 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/options,v 1.442 2004/04/21 20:18:06 scottl Exp $
+# $FreeBSD: src/sys/conf/options,v 1.444 2004/04/24 22:03:02 rik Exp $
 #
 #        On the handling of kernel options
 #
@@ -375,12 +375,23 @@
 NETGRAPH_RFC1490	opt_netgraph.h
 NETGRAPH_SOCKET		opt_netgraph.h
 NETGRAPH_SPLIT		opt_netgraph.h
+NETGRAPH_SPPP		opt_netgraph.h
 NETGRAPH_TEE		opt_netgraph.h
 NETGRAPH_TTY		opt_netgraph.h
 NETGRAPH_UI		opt_netgraph.h
 NETGRAPH_VJC		opt_netgraph.h
 NETGRAPH_ATM_ATMPIF	opt_netgraph.h
 
+# NgBluetooth options
+NETGRAPH_BLUETOOTH		opt_netgraph.h
+NETGRAPH_BLUETOOTH_BT3C		opt_netgraph.h
+NETGRAPH_BLUETOOTH_H4		opt_netgraph.h
+NETGRAPH_BLUETOOTH_UBT		opt_netgraph.h
+NETGRAPH_BLUETOOTH_UBTBCMFW	opt_netgraph.h
+NETGRAPH_BLUETOOTH_HCI		opt_netgraph.h
+NETGRAPH_BLUETOOTH_L2CAP	opt_netgraph.h
+NETGRAPH_BLUETOOTH_SOCKET	opt_netgraph.h
+
 # NgATM options
 NGATM_ATM		opt_netgraph.h
 NGATM_ATMBASE		opt_netgraph.h

==== //depot/projects/power/sys/dev/acpica/acpi_timer.c#5 (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/dev/acpica/acpi_timer.c,v 1.31 2004/04/22 01:50:08 njl Exp $
+ *	$FreeBSD: src/sys/dev/acpica/acpi_timer.c,v 1.32 2004/04/24 16:25:00 njl Exp $
  */
 #include "opt_acpi.h"
 #include <sys/param.h>
@@ -99,12 +99,7 @@
 static u_int
 acpi_timer_read()
 {
-    uint32_t tv;
-
-    tv = bus_space_read_4(acpi_timer_bst, acpi_timer_bsh, 0);
-    bus_space_barrier(acpi_timer_bst, acpi_timer_bsh, 0, 4,
-	BUS_SPACE_BARRIER_READ);
-    return (tv);
+    return (bus_space_read_4(acpi_timer_bst, acpi_timer_bsh, 0));
 }
 
 /*
@@ -277,9 +272,13 @@
 {
     uint32_t	last, this;
     int		min, max, n, delta;
+    register_t	s;
 
     min = 10000000;
     max = 0;
+
+    /* Test the timer with interrupts disabled to get accurate results. */
+    s = intr_disable();
     last = acpi_timer_read();
     for (n = 0; n < N; n++) {
 	this = acpi_timer_read();
@@ -290,6 +289,8 @@
 	    min = delta;
 	last = this;
     }
+    intr_restore(s);
+
     if (max - min > 2)
 	n = 0;
     else if (min < 0 || max == 0)

==== //depot/projects/power/sys/dev/acpica/acpivar.h#13 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.62 2004/04/21 00:36:15 njl Exp $
+ *	$FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.63 2004/04/22 21:29:01 philip Exp $
  */
 
 #include "bus_if.h"
@@ -124,6 +124,7 @@
 #define	ACPI_PROCESSOR		0x00800000
 #define	ACPI_THERMAL		0x01000000
 #define	ACPI_TIMER		0x02000000
+#define	ACPI_ASUS		0x04000000
 
 /*
  * Constants for different interrupt models used with acpi_SetIntrModel().

==== //depot/projects/power/sys/dev/ata/ata-chipset.c#11 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.69 2004/04/21 20:03:26 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.70 2004/04/24 15:54:20 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -2350,15 +2350,15 @@
 	break;
     case SIS66:
     case SIS100OLD:
-	pci_write_config(dev, 0x52, pci_read_config(dev, 0x52, 1) | 0x04, 1);
+	pci_write_config(dev, 0x52, pci_read_config(dev, 0x52, 1) & ~0x04, 1);
 	break;
     case SIS100NEW:
     case SIS133OLD:
-	pci_write_config(dev, 0x49, pci_read_config(dev, 0x49, 1) | 0x01, 1);
+	pci_write_config(dev, 0x49, pci_read_config(dev, 0x49, 1) & ~0x01, 1);
 	break;
     case SIS133NEW:
-	pci_write_config(dev, 0x50, pci_read_config(dev, 0x50, 2) & 0xfff7, 2);
-	pci_write_config(dev, 0x52, pci_read_config(dev, 0x52, 2) & 0xfff7, 2);
+	pci_write_config(dev, 0x50, pci_read_config(dev, 0x50, 2) | 0x0008, 2);
+	pci_write_config(dev, 0x52, pci_read_config(dev, 0x52, 2) | 0x0008, 2);
 	break;
     case SISSATA:
 	pci_write_config(dev, 0x04, pci_read_config(dev, 0x04, 2) & ~0x0400, 2);

==== //depot/projects/power/sys/dev/ata/ata-pci.c#9 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.80 2004/04/21 20:03:26 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.81 2004/04/24 16:32:06 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -177,25 +177,9 @@
     ctlr->locking = ata_pci_locknoop;
 
     progif = pci_read_config(dev, PCIR_PROGIF, 1);
-    if ((progif & 0x85) == 0x80)
+    if ((progif & 0x80))
 	prisec = 1;
 
-    /* if this device supports PCI native addressing use it */
-#if 0
-    if ((progif & 0x8a) == 0x8a) {
-	if (pci_read_config(dev, PCIR_BAR(0), 4) &&
- 	    pci_read_config(dev, PCIR_BAR(2), 4)) {
-	    device_printf(dev, "setting native PCI addressing mode ");
-	    pci_write_config(dev, PCIR_PROGIF, progif | 0x05, 1);
-	    if ((pci_read_config(dev, PCIR_PROGIF, 1) & 0x05) != 0x05) {
-	        pci_write_config(dev, PCIR_PROGIF, progif & ~0x05, 1);
-		printf("failed, using compat method\n");
-	    }
-	    else
-		printf("succeded\n");
-	}
-    }
-#endif
     /* if needed try to enable busmastering */
     cmd = pci_read_config(dev, PCIR_COMMAND, 2);
     if (!(cmd & PCIM_CMD_BUSMASTEREN)) {

==== //depot/projects/power/sys/dev/gem/if_gem.c#4 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem.c,v 1.21 2004/03/20 20:12:12 mdodd Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem.c,v 1.22 2004/04/23 19:43:35 tmm Exp $");
 
 /*
  * Driver for Sun GEM ethernet controllers.
@@ -237,11 +237,11 @@
 	/* Get RX FIFO size */
 	sc->sc_rxfifosize = 64 *
 	    bus_space_read_4(sc->sc_bustag, sc->sc_h, GEM_RX_FIFO_SIZE);
-	printf(", %uKB RX fifo", sc->sc_rxfifosize / 1024);
 
 	/* Get TX FIFO size */
 	v = bus_space_read_4(sc->sc_bustag, sc->sc_h, GEM_TX_FIFO_SIZE);
-	printf(", %uKB TX fifo\n", v / 16);
+	device_printf(sc->sc_dev, "%ukB RX FIFO, %ukB TX FIFO\n",
+	    sc->sc_rxfifosize / 1024, v / 16);
 
 	/* Initialize ifnet structure. */
 	ifp->if_softc = sc;

==== //depot/projects/power/sys/dev/if_ndis/if_ndis.c#9 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.55 2004/04/22 07:08:39 wpaul Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.57 2004/04/23 17:15:14 wpaul Exp $");
 
 #include "opt_bdg.h"
 
@@ -378,7 +378,7 @@
 	 * init routine may trigger an interrupt.
 	 */
 
-	error = bus_setup_intr(dev, sc->ndis_irq, INTR_TYPE_NET,
+	error = bus_setup_intr(dev, sc->ndis_irq, INTR_TYPE_NET | INTR_MPSAFE,
 	    ndis_intr, sc, &sc->ndis_intrhand);
 
 	if (error) {
@@ -687,9 +687,9 @@
 	struct ifnet		*ifp;
 
 	sc = device_get_softc(dev);
-	KASSERT(mtx_initialized(sc->ndis_mtx),
+	KASSERT(mtx_initialized(&sc->ndis_mtx),
 	    ("ndis mutex not initialized"));
-	KASSERT(mtx_initialized(sc->ndis_intrmtx),
+	KASSERT(mtx_initialized(&sc->ndis_intrmtx),
 	    ("ndis interrupt mutex not initialized"));
 	NDIS_LOCK(sc);
 	ifp = &sc->arpcom.ac_if;
@@ -1032,6 +1032,8 @@
 	ndis_media_state	linkstate;
 	int			error, len;
 
+	mtx_unlock(&Giant);
+
 	sc = xsc;
 
 	hangfunc = sc->ndis_chars.nmc_checkhang_func;
@@ -1066,6 +1068,8 @@
 
 	NDIS_UNLOCK(sc);
 
+	mtx_lock(&Giant);
+
 	return;
 }
 

==== //depot/projects/power/sys/dev/pccbb/pccbb.c#11 (text+ko) ====

@@ -73,7 +73,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.108 2004/04/13 14:39:26 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.109 2004/04/23 05:25:13 imp Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -689,8 +689,10 @@
 {
 	static int curr_bus_number = 1; /* XXX EVILE BAD (see below) */
 	struct cbb_softc *sc = (struct cbb_softc *)device_get_softc(brdev);
-	int rid, bus;
+	int rid, bus, pribus;
+	device_t parent;
 
+	parent = device_get_parent(brdev);
 	mtx_init(&sc->mtx, device_get_nameunit(brdev), "cbb", MTX_DEF);
 	cv_init(&sc->cv, "cbb cv");
 	sc->chipset = cbb_chipset(pci_get_devid(brdev), NULL);
@@ -732,8 +734,15 @@
 	 * are in an appropriate range.
 	 */
 	bus = pci_read_config(brdev, PCIR_SECBUS_2, 1);
+	pribus = pcib_get_bus(parent);
 	DEVPRINTF((brdev, "Secondary bus is %d\n", bus));
 	if (bus == 0) {
+		if (curr_bus_number < pribus)
+			curr_bus_number = pribus + 1;
+		if (pci_read_config(brdev, PCIR_PRIBUS_2, 1) != pribus) {
+			DEVPRINTF((brdev, "Setting primary bus to %d\n", pribus));
+			pci_write_config(brdev, PCIR_PRIBUS_2, pribus, 1);
+		}
 		bus = curr_bus_number;
 		DEVPRINTF((brdev, "Secondary bus set to %d subbus %d\n", bus,
 		    bus + 1));

==== //depot/projects/power/sys/dev/pci/pci.c#14 (text+ko) ====

@@ -25,7 +25,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/dev/pci/pci.c,v 1.247 2004/04/21 20:19:56 imp Exp $
+ * $FreeBSD: src/sys/dev/pci/pci.c,v 1.248 2004/04/23 15:48:48 marius Exp $
  *
  */
 
@@ -825,6 +825,14 @@
 	if (base == 0)
 		return 1;
 
+#ifdef __sparc64__
+	/* Sun EBus bridges contain the ranges for the devices beyond them */
+	if ((pci_get_class(dev) == PCIC_BRIDGE) &&
+	    (pci_get_vendor(dev) == 0x108e) &&
+	    (pci_get_device(dev) == 0x1000 || pci_get_device(dev) == 0x1100))
+		return 1;
+#endif
+
 	start = base;
 	end = base + (1 << ln2size) - 1;
 	count = 1 << ln2size;

==== //depot/projects/power/sys/dev/puc/pucdata.c#7 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/puc/pucdata.c,v 1.43 2004/04/18 14:37:27 bde Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/puc/pucdata.c,v 1.44 2004/04/24 13:04:00 sobomax Exp $");
 
 /*
  * PCI "universal" communications card driver configuration data (used to
@@ -1063,6 +1063,51 @@
 	    },
 	},
 
+	{   "IC Book Labs Gunboat x2 Low Profile",
+	    {   0xb00c, 0x0a1c, 0,      0       },
+	    {   0xffff, 0xffff, 0,      0       },
+	    {
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
+	    },
+	},
+
+	{   "IC Book Labs Gunboat x4 Lite",
+	    {   0xb00c, 0x021c, 0,      0       },
+	    {   0xffff, 0xffff, 0,      0       },
+	    {
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+	    },
+	    PUC_ILR_TYPE_DIGI, { 0x07 },
+	},
+
+	{   "IC Book Labs Gunboat x4 Pro",
+	    {   0xb00c, 0x031c, 0,      0       },
+	    {   0xffff, 0xffff, 0,      0       },
+	    {
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+	    },
+	    PUC_ILR_TYPE_DIGI, { 0x07 },
+	},
+
+	{   "IC Book Labs Gunboat x4 Low Profile",
+	    {   0xb00c, 0x0b1c, 0,      0       },
+	    {   0xffff, 0xffff, 0,      0       },
+	    {
+		{ PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
+	    },
+	    PUC_ILR_TYPE_DIGI, { 0x07 },
+	},
+
 	{   "IC Book Labs Ironclad x8 Lite",
 	    {	0xb00c,	0x041c,	0,	0	},
 	    {	0xffff,	0xffff,	0,	0	},

==== //depot/projects/power/sys/dev/uart/uart_dev_sab82532.c#3 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/uart/uart_dev_sab82532.c,v 1.5 2003/09/26 05:14:56 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/uart/uart_dev_sab82532.c,v 1.6 2004/04/25 04:30:40 marcel Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -252,7 +252,7 @@
 	sab82532_param(bas, baudrate, databits, stopbits, parity);
 
 	/* Clear interrupts. */
-	uart_setreg(bas, SAB_IMR0, 0xff);
+	uart_setreg(bas, SAB_IMR0, (unsigned char)~SAB_IMR0_TCD);
 	uart_setreg(bas, SAB_IMR1, 0xff);
 	uart_barrier(bas);
 	uart_getreg(bas, SAB_ISR0);

==== //depot/projects/power/sys/dev/usb/if_axe.c#5 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/usb/if_axe.c,v 1.11 2004/03/14 07:12:23 mdodd Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/if_axe.c,v 1.12 2004/04/25 11:21:30 sanpei Exp $");
 
 /*
  * ASIX Electronics AX88172 USB 2.0 ethernet driver. Used in the
@@ -108,6 +108,7 @@
 	{ USB_VENDOR_ASIX, USB_PRODUCT_ASIX_AX88172 },
 	{ USB_VENDOR_DLINK, USB_PRODUCT_DLINK_DUBE100 },
 	{ USB_VENDOR_LINKSYS2, USB_PRODUCT_LINKSYS_USB200M },
+	{ USB_VENDOR_MELCO, USB_PRODUCT_MELCO_LUAU2KTX },
 	{ USB_VENDOR_NETGEAR, USB_PRODUCT_NETGEAR_FA120 },
 	{ 0, 0 }
 };

==== //depot/projects/power/sys/dev/usb/usbdevs#9 (text+ko) ====

@@ -1,4 +1,4 @@
-$FreeBSD: src/sys/dev/usb/usbdevs,v 1.170 2004/04/16 05:24:45 obrien Exp $
+$FreeBSD: src/sys/dev/usb/usbdevs,v 1.171 2004/04/25 11:21:30 sanpei Exp $
 
 /*
  * Copyright (c) 1998, 1999, 2000 The NetBSD Foundation, Inc.
@@ -926,6 +926,7 @@
 product MELCO LUA2TX5		0x0009	LUA2-TX Ethernet
 product MELCO LUAKTX		0x0012	LUA-KTX Ethernet
 product	MELCO DUBPXXG		0x001c	USB-IDE Bridge: DUB-PxxG
+product	MELCO LUAU2KTX		0x003d	LUA-U2-KTX Ethernet
 
 /* Metricom products */
 product METRICOM RICOCHET_GS	0x0001	Ricochet GS

==== //depot/projects/power/sys/dev/usb/usbdevs.h#9 (text+ko) ====

@@ -1,10 +1,10 @@
-/* $FreeBSD: src/sys/dev/usb/usbdevs.h,v 1.177 2004/04/16 05:24:45 obrien Exp $ */
+/* $FreeBSD: src/sys/dev/usb/usbdevs.h,v 1.178 2004/04/25 11:24:40 sanpei Exp $ */
 
 /*
  * THIS FILE IS AUTOMATICALLY GENERATED.  DO NOT EDIT.
  *
  * generated from:
- *	FreeBSD: src/sys/dev/usb/usbdevs,v 1.169 2004/03/18 01:02:46 sobomax Exp 
+ *	FreeBSD: src/sys/dev/usb/usbdevs,v 1.171 2004/04/25 11:21:30 sanpei Exp 
  */
 
 /*
@@ -933,6 +933,7 @@
 #define	USB_PRODUCT_MELCO_LUA2TX5	0x0009		/* LUA2-TX Ethernet */
 #define	USB_PRODUCT_MELCO_LUAKTX	0x0012		/* LUA-KTX Ethernet */
 #define	USB_PRODUCT_MELCO_DUBPXXG	0x001c		/* USB-IDE Bridge: DUB-PxxG */
+#define	USB_PRODUCT_MELCO_LUAU2KTX	0x003d		/* LUA-U2-KTX Ethernet */
 
 /* Metricom products */
 #define	USB_PRODUCT_METRICOM_RICOCHET_GS	0x0001		/* Ricochet GS */

==== //depot/projects/power/sys/dev/usb/usbdevs_data.h#9 (text+ko) ====

@@ -1,10 +1,10 @@
-/* $FreeBSD: src/sys/dev/usb/usbdevs_data.h,v 1.177 2004/04/16 05:24:45 obrien Exp $ */
+/* $FreeBSD: src/sys/dev/usb/usbdevs_data.h,v 1.178 2004/04/25 11:24:40 sanpei Exp $ */
 
 /*
  * THIS FILE IS AUTOMATICALLY GENERATED.  DO NOT EDIT.
  *
  * generated from:
- *	FreeBSD: src/sys/dev/usb/usbdevs,v 1.169 2004/03/18 01:02:46 sobomax Exp 
+ *	FreeBSD: src/sys/dev/usb/usbdevs,v 1.171 2004/04/25 11:21:30 sanpei Exp 
  */
 
 /*
@@ -2038,6 +2038,12 @@
 	    "USB-IDE Bridge: DUB-PxxG",
 	},
 	{
+	    USB_VENDOR_MELCO, USB_PRODUCT_MELCO_LUAU2KTX,
+	    0,
+	    "Melco",
+	    "LUA-U2-KTX Ethernet",
+	},
+	{
 	    USB_VENDOR_METRICOM, USB_PRODUCT_METRICOM_RICOCHET_GS,
 	    0,
 	    "Metricom",

==== //depot/projects/power/sys/dev/vinum/vinumio.c#4 (text+ko) ====

@@ -34,7 +34,7 @@
  * advised of the possibility of such damage.
  *
  * $Id: vinumio.c,v 1.39 2003/05/23 00:59:53 grog Exp grog $
- * $FreeBSD: src/sys/dev/vinum/vinumio.c,v 1.97 2004/03/11 14:11:08 le Exp $
+ * $FreeBSD: src/sys/dev/vinum/vinumio.c,v 1.98 2004/04/24 23:41:21 le Exp $
  */
 
 #include <dev/vinum/vinumhdr.h>
@@ -878,6 +878,7 @@
 	drive->flags |= VF_CONFIGURED;			    /* this drive's configuration is complete */
     }
 
+    Free(config_line);
     Free(config_text);
     Free(drivelist);
     vinum_conf.flags &= ~VF_READING_CONFIG;		    /* no longer reading from disk */

==== //depot/projects/power/sys/i386/conf/NOTES#12 (text+ko) ====

@@ -4,7 +4,7 @@
 # This file contains machine dependent kernel configuration notes.  For
 # machine independent notes, look in /sys/conf/NOTES.
 #
-# $FreeBSD: src/sys/i386/conf/NOTES,v 1.1156 2004/04/16 09:29:45 eivind Exp $
+# $FreeBSD: src/sys/i386/conf/NOTES,v 1.1157 2004/04/22 21:29:02 philip Exp $
 #
 
 #
@@ -450,6 +450,9 @@
 #!options 	ACPI_NO_SEMAPHORES
 #!options 	ACPICA_PEDANTIC
 
+# ACPI Asus Extras (LCD backlight/brightness, video output, etc.)
+device		acpi_asus
+
 # ACPI Toshiba Extras (LCD backlight/brightness, video output, etc.)
 device		acpi_toshiba
 

==== //depot/projects/power/sys/i386/include/float.h#3 (text+ko) ====

@@ -27,16 +27,20 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)float.h	7.1 (Berkeley) 5/8/90
- * $FreeBSD: src/sys/i386/include/float.h,v 1.11 2004/04/07 20:46:05 imp Exp $
+ * $FreeBSD: src/sys/i386/include/float.h,v 1.12 2004/04/25 02:36:28 das Exp $
  */
 
 #ifndef _MACHINE_FLOAT_H_
 #define _MACHINE_FLOAT_H_ 1
 
+#include <sys/cdefs.h>
+
 #define FLT_RADIX	2		/* b */
 #define FLT_ROUNDS	1		/* FP addition rounds to nearest */
+#if __ISO_C_VISIBLE >= 1999
 #define	FLT_EVAL_METHOD	(-1)		/* i387 semantics are...interesting */
 #define	DECIMAL_DIG	21		/* max precision in decimal digits */
+#endif
 
 #define FLT_MANT_DIG	24		/* p */
 #define FLT_EPSILON	1.19209290E-07F	/* b**(1-p) */

==== //depot/projects/power/sys/ia64/include/float.h#3 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/ia64/include/float.h,v 1.5 2004/04/07 20:46:07 imp Exp $ */
+/* $FreeBSD: src/sys/ia64/include/float.h,v 1.6 2004/04/25 02:36:29 das Exp $ */
 /* From: NetBSD: float.h,v 1.6 1997/07/17 21:36:03 thorpej Exp */
 
 /*
@@ -37,8 +37,10 @@
 
 #define FLT_RADIX	2		/* b */
 #define FLT_ROUNDS	1		/* FP addition rounds to nearest */
+#if __ISO_C_VISIBLE >= 1999
 #define	FLT_EVAL_METHOD	0		/* no promotions */
 #define	DECIMAL_DIG	35		/* max precision in decimal digits */
+#endif
 
 #define FLT_MANT_DIG	24		/* p */
 #define FLT_EPSILON	1.19209290E-07F	/* b**(1-p) */

==== //depot/projects/power/sys/isa/fd.c#6 (text+ko) ====

@@ -49,7 +49,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/isa/fd.c,v 1.269 2004/04/07 20:46:08 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/isa/fd.c,v 1.270 2004/04/25 04:33:56 bde Exp $");
 
 #include "opt_fdc.h"
 #include "card.h"
@@ -2600,9 +2600,16 @@
 		return (0);
 
 	case FD_STYPE:                  /* set drive type */
-		if (suser(td) != 0)
-			return (EPERM);
+		/*
+		 * Allow setting drive type temporarily iff
+		 * currently unset.  Used for fdformat so any
+		 * user can set it, and then start formatting.
+		 */
+		if (fd->ft)
+			return (EINVAL); /* already set */
 		fd->fts[0] = *(struct fd_type *)addr;
+		fd->ft = &fd->fts[0];
+		fd->flags |= FD_UA;
 		return (0);
 
 	case FD_GOPTS:			/* get drive options */

==== //depot/projects/power/sys/kern/imgact_elf.c#7 (text+ko) ====

@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/imgact_elf.c,v 1.147 2004/04/08 06:37:00 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/imgact_elf.c,v 1.148 2004/04/23 03:01:39 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/exec.h>

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404251524.i3PFO85N078277>