PERFORCE change 60550 for review

Julian Elischer julian at FreeBSD.org
Fri Aug 27 15:57:36 PDT 2004


http://perforce.freebsd.org/chv.cgi?CH=60550

Change 60550 by julian at julian_ref on 2004/08/27 22:57:27

	IFC at 60548

Affected files ...

.. //depot/projects/nsched/sys/alpha/alpha/pmap.c#9 integrate
.. //depot/projects/nsched/sys/alpha/conf/GENERIC#5 integrate
.. //depot/projects/nsched/sys/alpha/include/cpu.h#6 integrate
.. //depot/projects/nsched/sys/alpha/include/profile.h#3 integrate
.. //depot/projects/nsched/sys/amd64/amd64/pmap.c#16 integrate
.. //depot/projects/nsched/sys/amd64/conf/GENERIC#8 integrate
.. //depot/projects/nsched/sys/amd64/conf/NOTES#4 integrate
.. //depot/projects/nsched/sys/amd64/include/profile.h#6 integrate
.. //depot/projects/nsched/sys/arm/include/profile.h#4 integrate
.. //depot/projects/nsched/sys/boot/i386/boot0/Makefile#3 integrate
.. //depot/projects/nsched/sys/boot/i386/boot2/Makefile#3 integrate
.. //depot/projects/nsched/sys/conf/NOTES#12 integrate
.. //depot/projects/nsched/sys/conf/files#19 integrate
.. //depot/projects/nsched/sys/conf/ldscript.alpha#2 integrate
.. //depot/projects/nsched/sys/conf/options#13 integrate
.. //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.c#5 integrate
.. //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.h#4 integrate
.. //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#6 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-all.c#9 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-all.h#4 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#9 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-disk.c#6 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#7 integrate
.. //depot/projects/nsched/sys/dev/ata/ata-queue.c#6 integrate
.. //depot/projects/nsched/sys/dev/ctau/if_ct.c#8 integrate
.. //depot/projects/nsched/sys/dev/cx/if_cx.c#11 integrate
.. //depot/projects/nsched/sys/dev/fdc/fdc.c#7 integrate
.. //depot/projects/nsched/sys/dev/hfa/fore_receive.c#2 integrate
.. //depot/projects/nsched/sys/dev/idt/idt_harp.c#2 integrate
.. //depot/projects/nsched/sys/dev/ppbus/if_plip.c#4 integrate
.. //depot/projects/nsched/sys/dev/usb/usbdevs#11 integrate
.. //depot/projects/nsched/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate
.. //depot/projects/nsched/sys/geom/concat/g_concat.c#7 integrate
.. //depot/projects/nsched/sys/geom/geom.h#5 integrate
.. //depot/projects/nsched/sys/geom/geom_io.c#6 integrate
.. //depot/projects/nsched/sys/geom/label/g_label.c#5 integrate
.. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#3 integrate
.. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#4 integrate
.. //depot/projects/nsched/sys/geom/stripe/g_stripe.c#6 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum.c#6 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum.h#3 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum_drive.c#5 integrate
.. //depot/projects/nsched/sys/geom/vinum/geom_vinum_volume.c#4 integrate
.. //depot/projects/nsched/sys/i386/conf/GENERIC#6 integrate
.. //depot/projects/nsched/sys/i386/i386/pmap.c#14 integrate
.. //depot/projects/nsched/sys/i386/include/profile.h#4 integrate
.. //depot/projects/nsched/sys/i4b/driver/i4b_ipr.c#3 integrate
.. //depot/projects/nsched/sys/ia64/conf/GENERIC#6 integrate
.. //depot/projects/nsched/sys/ia64/conf/NOTES#3 integrate
.. //depot/projects/nsched/sys/ia64/conf/SKI#5 integrate
.. //depot/projects/nsched/sys/ia64/ia64/pmap.c#10 integrate
.. //depot/projects/nsched/sys/ia64/include/profile.h#4 integrate
.. //depot/projects/nsched/sys/isa/psm.c#7 integrate
.. //depot/projects/nsched/sys/kern/kern_linker.c#6 integrate
.. //depot/projects/nsched/sys/kern/kern_lock.c#5 integrate
.. //depot/projects/nsched/sys/kern/sys_generic.c#4 integrate
.. //depot/projects/nsched/sys/libkern/mcount.c#3 integrate
.. //depot/projects/nsched/sys/modules/bridge/Makefile#2 integrate
.. //depot/projects/nsched/sys/modules/ipfw/Makefile#4 integrate
.. //depot/projects/nsched/sys/net/bridge.c#7 integrate
.. //depot/projects/nsched/sys/net/if.c#8 integrate
.. //depot/projects/nsched/sys/net/if_loop.c#8 integrate
.. //depot/projects/nsched/sys/net/if_ppp.c#6 integrate
.. //depot/projects/nsched/sys/net/if_sl.c#9 integrate
.. //depot/projects/nsched/sys/net/if_spppsubr.c#7 integrate
.. //depot/projects/nsched/sys/net/netisr.c#3 integrate
.. //depot/projects/nsched/sys/net/rtsock.c#8 integrate
.. //depot/projects/nsched/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#2 integrate
.. //depot/projects/nsched/sys/netinet/ip_fastfwd.c#5 integrate
.. //depot/projects/nsched/sys/netinet/ip_fw2.c#9 integrate
.. //depot/projects/nsched/sys/netinet/ip_fw_pfil.c#2 integrate
.. //depot/projects/nsched/sys/netinet/ip_input.c#8 integrate
.. //depot/projects/nsched/sys/netinet/ip_mroute.c#7 integrate
.. //depot/projects/nsched/sys/netinet/ip_output.c#9 integrate
.. //depot/projects/nsched/sys/netinet/ip_var.h#5 integrate
.. //depot/projects/nsched/sys/netinet6/ah_input.c#2 integrate
.. //depot/projects/nsched/sys/netinet6/esp_input.c#2 integrate
.. //depot/projects/nsched/sys/netinet6/ip6_forward.c#2 integrate
.. //depot/projects/nsched/sys/netinet6/ip6_input.c#7 integrate
.. //depot/projects/nsched/sys/netinet6/ip6_output.c#5 integrate
.. //depot/projects/nsched/sys/netinet6/ip6_var.h#4 integrate
.. //depot/projects/nsched/sys/netipsec/ipsec_input.c#2 integrate
.. //depot/projects/nsched/sys/netipsec/xform_ipip.c#4 integrate
.. //depot/projects/nsched/sys/netkey/key.c#2 integrate
.. //depot/projects/nsched/sys/netkey/keysock.c#3 integrate
.. //depot/projects/nsched/sys/pc98/conf/GENERIC#6 integrate
.. //depot/projects/nsched/sys/powerpc/conf/GENERIC#5 integrate
.. //depot/projects/nsched/sys/powerpc/include/pmap.h#5 integrate
.. //depot/projects/nsched/sys/powerpc/include/profile.h#3 integrate
.. //depot/projects/nsched/sys/powerpc/powerpc/pmap.c#8 integrate
.. //depot/projects/nsched/sys/sparc64/conf/GENERIC#6 integrate
.. //depot/projects/nsched/sys/sparc64/include/profile.h#3 integrate
.. //depot/projects/nsched/sys/sys/linker.h#4 integrate
.. //depot/projects/nsched/sys/sys/param.h#11 integrate

Differences ...

==== //depot/projects/nsched/sys/alpha/alpha/pmap.c#9 (text+ko) ====

@@ -148,7 +148,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.166 2004/08/15 20:54:25 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.168 2004/08/27 19:06:16 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -747,8 +747,6 @@
 	vm_paddr_t pa;
 
 	pa = 0;
-	if (pmap == NULL)
-		return (pa);
 	PMAP_LOCK(pmap);
 	pte = pmap_lev3pte(pmap, va);
 	if (pte != NULL && pmap_pte_v(pte))
@@ -771,8 +769,6 @@
 	vm_page_t m;
 
 	m = NULL;
-	if (pmap == NULL)
-		return (m);
 	vm_page_lock_queues();
 	PMAP_LOCK(pmap);
 	pte = pmap_lev3pte(pmap, va);
@@ -1468,9 +1464,6 @@
 {
 	vm_offset_t va, nva;
 
-	if (pmap == NULL)
-		return;
-
 	/*
 	 * Perform an unsynchronized read.  This is, however, safe.
 	 */
@@ -1586,9 +1579,6 @@
 	pt_entry_t* pte;
 	int newprot;
 
-	if (pmap == NULL)
-		return;
-
 	if ((prot & VM_PROT_READ) == VM_PROT_NONE) {
 		pmap_remove(pmap, sva, eva);
 		return;
@@ -1681,9 +1671,6 @@
 	vm_page_t mpte;
 	int managed;
 
-	if (pmap == NULL)
-		return;
-
 	va &= ~PAGE_MASK;
 #ifdef PMAP_DIAGNOSTIC
 	if (va > VM_MAX_KERNEL_ADDRESS)
@@ -1965,9 +1952,6 @@
 {
 	pt_entry_t *pte;
 
-	if (pmap == NULL)
-		return;
-
 	PMAP_LOCK(pmap);
 	pte = pmap_lev3pte(pmap, va);
 
@@ -2110,7 +2094,7 @@
 	pv_entry_t pv, npv;
 
 #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY
-	if (!curthread || (pmap != vmspace_pmap(curthread->td_proc->p_vmspace))) {
+	if (pmap != vmspace_pmap(curthread->td_proc->p_vmspace)) {
 		printf("warning: pmap_remove_pages called with non-current pmap\n");
 		return;
 	}

==== //depot/projects/nsched/sys/alpha/conf/GENERIC#5 (text+ko) ====

@@ -18,7 +18,7 @@
 #
 # For hardware specific information check HARDWARE.TXT
 #
-# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.174 2004/08/03 19:24:52 markm Exp $
+# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.175 2004/08/27 15:16:21 andre Exp $
 
 machine		alpha
 cpu		EV4
@@ -69,7 +69,6 @@
 options 	SYSVMSG			#SYSV-style message queues
 options 	SYSVSEM			#SYSV-style semaphores
 options 	_KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-options 	PFIL_HOOKS		# pfil(9) framework
 
 # Debugging for use in -current
 options 	KDB			#Enable kernel debugger support

==== //depot/projects/nsched/sys/alpha/include/cpu.h#6 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.40 2004/08/03 18:44:26 mux Exp $ */
+/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.41 2004/08/27 19:20:42 marcel Exp $ */
 /* From: NetBSD: cpu.h,v 1.18 1997/09/23 23:17:49 mjacob Exp */
 
 /*
@@ -92,6 +92,11 @@
 
 #ifdef _KERNEL
 
+#ifdef GPROF
+extern char btext[];
+extern char etext[];
+#endif
+
 #define	cpu_getstack(td)	(alpha_pal_rdusp())
 #define	cpu_spinwait()		/* nothing */
 #define	get_cyclecount		alpha_rpcc

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

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.6 2004/05/19 15:41:25 bde Exp $ */
+/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.7 2004/08/27 19:42:34 marcel Exp $ */
 /* From: NetBSD: profile.h,v 1.9 1997/04/06 08:47:37 cgd Exp */
 
 /*
@@ -215,11 +215,27 @@
  *
  * XXX These macros should probably use inline assembly.
  */
-#define MCOUNT_ENTER(s) \
-	s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH)
-#define MCOUNT_EXIT(s) \
-	(void)_alpha_pal_swpipl(s);
-#define	MCOUNT_DECL(s)	u_long s;
+u_long _alpha_pal_swpipl(u_long);
+
+#define	MCOUNT_ENTER(s)		s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH)
+#define	MCOUNT_EXIT(s)		(void)_alpha_pal_swpipl(s)
+#define	MCOUNT_DECL(s)		u_long s;
+
+void bintr(void);
+void btrap(void);
+void eintr(void);
+void user(void);
+
+#define	MCOUNT_FROMPC_USER(pc)					\
+	((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc)
+
+#define	MCOUNT_FROMPC_INTR(pc)					\
+	((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ?	\
+	    ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr :	\
+		(uintfptr_t)btrap) : ~0UL)
+
+_MCOUNT_DECL(uintfptr_t, uintfptr_t);
+
 #else /* !_KERNEL */
 typedef u_long	uintfptr_t;
 #endif

==== //depot/projects/nsched/sys/amd64/amd64/pmap.c#16 (text+ko) ====

@@ -75,7 +75,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.494 2004/08/27 19:06:16 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -786,8 +786,6 @@
 	pd_entry_t pde, *pdep;
 
 	rtval = 0;
-	if (pmap == NULL)
-		return (rtval);
 	PMAP_LOCK(pmap);
 	pdep = pmap_pde(pmap, va);
 	if (pdep != NULL) {
@@ -821,8 +819,6 @@
 	vm_page_t m;
 
 	m = NULL;
-	if (pmap == NULL)
-		return (m);
 	vm_page_lock_queues();
 	PMAP_LOCK(pmap);
 	pdep = pmap_pde(pmap, va);
@@ -1563,9 +1559,6 @@
 	pt_entry_t *pte;
 	int anyvalid;
 
-	if (pmap == NULL)
-		return;
-
 	/*
 	 * Perform an unsynchronized read.  This is, however, safe.
 	 */
@@ -1737,9 +1730,6 @@
 	pd_entry_t ptpaddr, *pde;
 	int anychanged;
 
-	if (pmap == NULL)
-		return;
-
 	if ((prot & VM_PROT_READ) == VM_PROT_NONE) {
 		pmap_remove(pmap, sva, eva);
 		return;
@@ -1856,9 +1846,6 @@
 	pt_entry_t origpte, newpte;
 	vm_page_t mpte;
 
-	if (pmap == NULL)
-		return;
-
 	va = trunc_page(va);
 #ifdef PMAP_DIAGNOSTIC
 	if (va > VM_MAX_KERNEL_ADDRESS)
@@ -2211,9 +2198,6 @@
 {
 	register pt_entry_t *pte;
 
-	if (pmap == NULL)
-		return;
-
 	/*
 	 * Wiring is not a hardware characteristic so there is no need to
 	 * invalidate TLB.

==== //depot/projects/nsched/sys/amd64/conf/GENERIC#8 (text+ko) ====

@@ -16,7 +16,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first
 # in NOTES.
 #
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.421 2004/08/16 22:59:24 peter Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.422 2004/08/27 15:16:21 andre Exp $
 
 machine		amd64
 cpu		HAMMER
@@ -57,7 +57,6 @@
 					# output.  Adds ~128k to driver.
 options 	AHD_REG_PRETTY_PRINT	# Print register bitfields in debug
 					# output.  Adds ~215k to driver.
-options 	PFIL_HOOKS		# pfil(9) framework
 options 	ADAPTIVE_GIANT		# Giant mutex is adaptive.
 
 # Debugging for use in -current

==== //depot/projects/nsched/sys/amd64/conf/NOTES#4 (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/amd64/conf/NOTES,v 1.18 2004/08/16 12:39:27 tjr Exp $
+# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.19 2004/08/27 21:29:20 arved Exp $
 #
 
 #
@@ -468,7 +468,7 @@
 # Enable Linux ABI emulation
 #XXX#options 	COMPAT_LINUX
 
-# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and IA32)
+# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and COMPAT_IA32)
 options 	COMPAT_LINUX32
 
 # Enable the linux-like proc filesystem support (requires COMPAT_LINUX32

==== //depot/projects/nsched/sys/amd64/include/profile.h#6 (text+ko) ====

@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)profile.h	8.1 (Berkeley) 6/11/93
- * $FreeBSD: src/sys/amd64/include/profile.h,v 1.41 2004/07/29 18:02:28 kan Exp $
+ * $FreeBSD: src/sys/amd64/include/profile.h,v 1.42 2004/08/27 19:42:34 marcel Exp $
  */
 
 #ifndef _MACHINE_PROFILE_H_
@@ -87,6 +87,19 @@
 #endif
 #endif /* GUPROF */
 
+void bintr(void);
+void btrap(void);
+void eintr(void);
+void user(void);
+
+#define	MCOUNT_FROMPC_USER(pc)					\
+	((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc)
+
+#define	MCOUNT_FROMPC_INTR(pc)					\
+	((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ?	\
+	    ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr :	\
+		(uintfptr_t)btrap) : ~0UL)
+
 #else /* !_KERNEL */
 
 #define	FUNCTION_ALIGNMENT	4

==== //depot/projects/nsched/sys/arm/include/profile.h#4 (text+ko) ====

@@ -31,7 +31,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)profile.h	8.1 (Berkeley) 6/11/93
- * $FreeBSD: src/sys/arm/include/profile.h,v 1.3 2004/07/20 22:38:46 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/profile.h,v 1.4 2004/08/27 19:42:34 marcel Exp $
  */
 
 #ifndef _MACHINE_PROFILE_H_
@@ -72,6 +72,19 @@
 #endif
 #endif /* GUPROF */
 
+void bintr(void);
+void btrap(void);
+void eintr(void);
+void user(void);
+
+#define	MCOUNT_FROMPC_USER(pc)					\
+	((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc)
+
+#define	MCOUNT_FROMPC_INTR(pc)					\
+	((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ?	\
+	    ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr :	\
+		(uintfptr_t)btrap) : ~0U)
+
 #else /* !_KERNEL */
 
 #define	FUNCTION_ALIGNMENT	4

==== //depot/projects/nsched/sys/boot/i386/boot0/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.29 2004/04/28 21:31:19 ru Exp $
+# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.30 2004/08/27 00:18:03 obrien Exp $
 
 PROG?=	boot0
 STRIP=
@@ -10,7 +10,7 @@
 # the modified boot0 back to disk after running so that the selection made is
 # saved), packet mode (detect and use the BIOS EDD extensions if we try to
 # boot past the 1024 cylinder liimt), and booting from all valid slices.
-BOOT_BOOT0_FLAGS?=	0xf
+BOOT_BOOT0_FLAGS?=	0x8f
 
 # The number of timer ticks to wait for a keypress before assuming the default
 # selection.  Since there are 18.2 ticks per second, the default value of

==== //depot/projects/nsched/sys/boot/i386/boot2/Makefile#3 (text+ko) ====

@@ -1,11 +1,11 @@
-# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.56 2004/07/30 04:27:20 kan Exp $
+# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.57 2004/08/27 15:01:56 yar Exp $
 
 FILES=		boot boot1 boot2
 
 NM?=		nm
 
 # A value of 0x80 enables LBA support.
-B1FLAGS=	0x80
+BOOT_BOOT1_FLAGS?=	0x80
 
 BOOT_COMCONSOLE_PORT?= 0x3f8
 BOOT_COMCONSOLE_SPEED?= 9600
@@ -27,7 +27,7 @@
 	-mno-align-long-strings \
 	-mrtd \
 	-D${BOOT2_UFS} \
-	-DFLAGS=${B1FLAGS} \
+	-DFLAGS=${BOOT_BOOT1_FLAGS} \
 	-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
 	-DSIOFMT=${B2SIOFMT} \
 	-DSIOSPD=${BOOT_COMCONSOLE_SPEED} \

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

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1263 2004/08/19 18:29:55 andre Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1265 2004/08/27 15:46:16 andre Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -544,7 +544,6 @@
 #  The `pflog' device provides the pflog0 interface which logs packets.
 #  The `pfsync' device provides the pfsync0 interface used for
 #   synchronization of firewall state tables (over the net).
-# Requires option PFIL_HOOKS
 #
 # The PPP_BSDCOMP option enables support for compress(1) style entire
 # packet compression, the PPP_DEFLATE is for zlib/gzip style compression.
@@ -599,7 +598,6 @@
 # conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
 # logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
 # limits the number of times a matching entry can be logged.
-# IPFIREWALL requires the option PFIL_HOOKS.
 #
 # WARNING:  IPFIREWALL defaults to a policy of "deny ip from any to any"
 # and if you do not add other rules during startup to allow access,
@@ -618,14 +616,14 @@
 #
 # IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
 #
+# IPFIREWALL_FORWARD enables changing of the packet destination either
+# to do some sort of policy routing or transparent proxying.  Used by
+# ``ipfw forward''.
+#
 # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding
 # packets without touching the ttl).  This can be useful to hide firewalls
 # from traceroute and similar tools.
 #
-# PFIL_HOOKS enables an abstraction layer which is meant to be used in
-# network code where filtering is required.  See pfil(9).  This option is
-# required by the IPFILTER option and the PF device.
-#
 # TCPDEBUG enables code which keeps traces of the TCP state machine
 # for sockets with the SO_DEBUG option set, which can then be examined
 # using the trpt(8) utility.
@@ -636,6 +634,7 @@
 options 	IPFIREWALL_VERBOSE	#enable logging to syslogd(8)
 options 	IPFIREWALL_VERBOSE_LIMIT=100	#limit verbosity
 options 	IPFIREWALL_DEFAULT_TO_ACCEPT	#allow everything by default
+options		IPFIREWALL_FORWARD	#packet destination changes
 options 	IPV6FIREWALL		#firewall for IPv6
 options 	IPV6FIREWALL_VERBOSE
 options 	IPV6FIREWALL_VERBOSE_LIMIT=100
@@ -645,7 +644,6 @@
 options 	IPFILTER_LOG		#ipfilter logging
 options 	IPFILTER_DEFAULT_BLOCK	#block all packets by default
 options 	IPSTEALTH		#support for stealth forwarding
-options 	PFIL_HOOKS		#required by IPFILTER
 options 	TCPDEBUG
 
 # The MBUF_STRESS_TEST option enables options which create

==== //depot/projects/nsched/sys/conf/files#19 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $
+# $FreeBSD: src/sys/conf/files,v 1.945 2004/08/27 15:16:21 andre Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -1263,8 +1263,8 @@
 net/netisr.c		standard
 net/ppp_deflate.c	optional ppp_deflate
 net/ppp_tty.c		optional ppp
-net/pfil.c		optional pfil_hooks
-net/pfil.c		optional ipfilter
+net/pfil.c		optional ether
+net/pfil.c		optional inet
 net/radix.c		standard
 net/raw_cb.c		standard
 net/raw_usrreq.c	standard

==== //depot/projects/nsched/sys/conf/ldscript.alpha#2 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.7 2004/02/13 12:28:53 ru Exp $ */
+/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.8 2004/08/27 19:13:35 marcel Exp $ */
 OUTPUT_FORMAT("elf64-alpha-freebsd", "elf64-alpha-freebsd", "elf64-alpha-freebsd")
 OUTPUT_ARCH(alpha)
 ENTRY(locorestart)
@@ -41,6 +41,7 @@
   .rela.bss      : { *(.rela.bss)		}
   .rel.plt       : { *(.rel.plt)		}
   .rela.plt      : { *(.rela.plt)		}
+  PROVIDE (btext = .);
   .init          : { *(.init)	} =0x47ff041f
   .text      :
   {

==== //depot/projects/nsched/sys/conf/options#13 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/options,v 1.476 2004/08/19 06:38:26 jmg Exp $
+# $FreeBSD: src/sys/conf/options,v 1.477 2004/08/27 15:16:21 andre Exp $
 #
 #        On the handling of kernel options
 #
@@ -344,7 +344,6 @@
 IPFILTER		opt_ipfilter.h
 IPFILTER_LOG		opt_ipfilter.h
 IPFILTER_DEFAULT_BLOCK	opt_ipfilter.h
-PFIL_HOOKS		opt_pfil_hooks.h
 IPFIREWALL		opt_ipfw.h
 IPFIREWALL_VERBOSE	opt_ipfw.h
 IPFIREWALL_VERBOSE_LIMIT	opt_ipfw.h

==== //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.c#5 (text+ko) ====

@@ -71,7 +71,8 @@
 # if defined(_KERNEL) && !defined(IPFILTER_LKM)
 #  include "opt_ipfilter.h"
 # endif
-# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && !defined(KLD_MODULE)
+# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && \
+     (__FreeBSD_version < 600001) && !defined(KLD_MODULE)
 #  include "opt_pfil_hooks.h"
 # endif
 #endif
@@ -131,7 +132,7 @@
 #if !defined(lint)
 static const char sccsid[] = "@(#)ip_fil.c	2.41 6/5/96 (C) 1993-2000 Darren Reed";
 /* static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.34 2001/07/23 13:49:57 darrenr Exp $"; */
-static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.47 2004/07/11 10:13:05 darrenr Exp $";
+static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.48 2004/08/27 20:01:08 andre Exp $";
 #endif
 
 extern	struct	protosw	inetsw[];

==== //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.h#4 (text+ko) ====

@@ -5,7 +5,7 @@
  *
  * @(#)ip_fil.h	1.35 6/5/96
  * $Id: ip_fil.h,v 2.29.2.4 2000/11/12 11:54:53 darrenr Exp $
- * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.26 2004/06/21 22:46:35 darrenr Exp $
+ * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.27 2004/08/27 20:01:08 andre Exp $
  */
 
 #ifndef	__IP_FIL_H__
@@ -497,7 +497,7 @@
 #if (defined(NetBSD) && (NetBSD > 199609) && (NetBSD <= 1991011)) || \
     (defined(NetBSD1_2) && NetBSD1_2 > 1) || (defined(__FreeBSD_version) && \
      (__FreeBSD_version >= 500011))
-# if (NetBSD >= 199905)
+# if (NetBSD >= 199905) || (__FreeBSD_version >= 600001)
 #  define PFIL_HOOKS
 # endif
 # ifdef PFIL_HOOKS

==== //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#6 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.26 2004/08/21 18:18:32 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.28 2004/08/27 00:53:11 njl Exp $");
 
 #include "opt_acpi.h"
 #include <sys/param.h>
@@ -648,13 +648,17 @@
 	 * assume we were successful.
 	 */
 	error = acpi_pci_link_get_current_irq(link, &link->current_irq);
-	if (ACPI_FAILURE(error) && bootverbose) {
-		printf("acpi link set: _CRS failed for link %s - %s\n",
-		    acpi_name(link->handle), AcpiFormatException(error));
+	if (ACPI_FAILURE(error)) {
+		if (bootverbose)
+			printf("acpi link set: _CRS failed for link %s - %s\n",
+			    acpi_name(link->handle),
+			    AcpiFormatException(error));
+		error = AE_OK;
 	}
 	if (link->current_irq != irq) {
-		printf("acpi link set: curr irq %d != %d for %s (ignoring)\n",
-		    link->current_irq, irq, acpi_name(link->handle));
+		if (bootverbose)
+			printf("acpi link set: curr irq %d != %d for %s\n",
+			    link->current_irq, irq, acpi_name(link->handle));
 		link->current_irq = irq;
 	}
 

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

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.223 2004/08/24 15:09:05 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.224 2004/08/27 14:48:32 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -115,7 +115,6 @@
     return 0;
 }
 
-
 int
 ata_attach(device_t dev)
 {
@@ -190,7 +189,6 @@
     ata_fail_requests(ch, NULL);
 
     /* unlock the channel */
-    ch->running = NULL;
     ATA_UNLOCK_CH(ch);
     ch->locking(ch, ATA_LF_UNLOCK);
 
@@ -237,12 +235,14 @@
     if (!ch->r_irq)
 	return ENXIO;
 
-    /* reset the HW */
     if (bootverbose)
 	ata_printf(ch, -1, "reiniting channel ..\n");
+
     ATA_FORCELOCK_CH(ch);
+    ata_catch_inflight(ch);
     ch->flags |= ATA_IMMEDIATE_MODE;
     devices = ch->devices;
+
     ch->hw.reset(ch);
 
     if (bootverbose)
@@ -267,7 +267,6 @@
     }
 
     /* unlock the channel */
-    ch->running = NULL;
     ATA_UNLOCK_CH(ch);
     ch->locking(ch, ATA_LF_UNLOCK);
 

==== //depot/projects/nsched/sys/dev/ata/ata-all.h#4 (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/ata/ata-all.h,v 1.81 2004/08/13 08:14:27 sos Exp $
+ * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.82 2004/08/27 14:48:32 sos Exp $
  */
 
 /* ATA register defines */
@@ -410,6 +410,7 @@
 int ata_atapicmd(struct ata_device *atadev, u_int8_t *ccb, caddr_t data, int count, int flags, int timeout);
 void ata_queue_request(struct ata_request *request);
 void ata_finish(struct ata_request *request);
+void ata_catch_inflight(struct ata_channel *ch);
 void ata_fail_requests(struct ata_channel *ch, struct ata_device *device);
 char *ata_cmd2str(struct ata_request *request);
 

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

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.82 2004/08/24 20:11:26 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.83 2004/08/27 12:54:58 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -979,9 +979,9 @@
 	pci_write_config(parent, 0x54, reg54 & ~(0x1 << devno), 2);
 
     if (mode >= ATA_UDMA5)
-	pci_write_config(parent, 0x54, reg54 | (0x10000 << devno), 2);
+	pci_write_config(parent, 0x54, reg54 | (0x1000 << devno), 2);
     else 
-	pci_write_config(parent, 0x54, reg54 & ~(0x10000 << devno), 2);
+	pci_write_config(parent, 0x54, reg54 & ~(0x1000 << devno), 2);
 
     reg40 &= ~0x00ff00ff;
     reg40 |= 0x40774077;

==== //depot/projects/nsched/sys/dev/ata/ata-disk.c#6 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.175 2004/08/05 21:11:32 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.176 2004/08/27 12:03:18 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -164,12 +164,12 @@
     if (adp->flags & AD_F_RAID_SUBDISK)
 	ata_raiddisk_detach(adp);
 #endif
+    disk_destroy(adp->disk);
+    ata_prtdev(atadev, "WARNING - removed from configuration\n");
     mtx_lock(&adp->queue_mtx);
     bioq_flush(&adp->queue, NULL, ENXIO);
     mtx_unlock(&adp->queue_mtx);
     mtx_destroy(&adp->queue_mtx);
-    disk_destroy(adp->disk);
-    ata_prtdev(atadev, "WARNING - removed from configuration\n");
     ata_free_name(atadev);
     ata_free_lun(&adp_lun_map, adp->lun);
     atadev->attach = NULL;
@@ -219,10 +219,6 @@
 {
     struct ad_softc *adp = bp->bio_disk->d_drv1;
 
-    if (adp->device->flags & ATA_D_DETACHING) {
-	biofinish(bp, NULL, ENXIO);
-	return;
-    }
     mtx_lock(&adp->queue_mtx);
     bioq_disksort(&adp->queue, bp);
     mtx_unlock(&adp->queue_mtx);
@@ -245,6 +241,10 @@
     }
     bioq_remove(&adp->queue, bp); 
     mtx_unlock(&adp->queue_mtx);
+    if (adp->device->flags & ATA_D_DETACHING) {
+	biofinish(bp, NULL, ENXIO);
+	return;
+    }
 
     if (!(request = ata_alloc_request())) {
 	ata_prtdev(atadev, "FAILURE - out of memory in start\n");

==== //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#7 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.44 2004/08/16 09:32:35 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.46 2004/08/27 22:14:45 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -48,7 +48,6 @@
 static void ata_generic_interrupt(void *);
 static void ata_generic_reset(struct ata_channel *);
 static int ata_wait(struct ata_device *, u_int8_t);
-/*static int ata_command(struct ata_device *, u_int8_t, u_int64_t, u_int16_t, u_int16_t);*/
 static void ata_pio_read(struct ata_request *, int);
 static void ata_pio_write(struct ata_request *, int);
 
@@ -526,7 +525,8 @@
 	break;
     }
 
-    /* schedule completition for this request */
+    /* finished running this request schedule completition */
+    ch->running = NULL;
     ata_finish(request);
 }
 
@@ -538,6 +538,14 @@
     u_int8_t stat0 = 0, stat1 = 0;
     int mask = 0, timeout;
 
+    /* if DMA functionality present stop it  */
+    if (ch->dma) {
+        if (ch->dma->stop)
+            ch->dma->stop(ch);
+        if (ch->dma->flags & ATA_DMA_LOADED)
+            ch->dma->unload(ch);
+    }
+
     /* reset host end of channel (if supported) */
     if (ch->reset)
 	ch->reset(ch);

==== //depot/projects/nsched/sys/dev/ata/ata-queue.c#6 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.33 2004/08/22 15:54:08 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.34 2004/08/27 14:48:32 sos Exp $");
 
 #include "opt_ata.h"
 #include <sys/param.h>
@@ -70,6 +70,7 @@
 
 	/* kick HW into action */
 	if (request->device->channel->hw.transaction(request)==ATA_OP_FINISHED){
+	    untimeout((timeout_t *)ata_timeout,request,request->timeout_handle);
 	    if (!request->callback) 
 		sema_destroy(&request->done);
 	    return;
@@ -209,7 +210,6 @@
 
     /* if we timed out the unlocking of the ATA channel is done later */
     if (!(request->flags & ATA_R_TIMEOUT)) {
-        ch->running = NULL;
         ATA_UNLOCK_CH(ch);
         ch->locking(ch, ATA_LF_UNLOCK);
     }
@@ -466,7 +466,25 @@
     /* now simulate the missing interrupt */
     request->flags |= ATA_R_TIMEOUT;
     request->device->channel->hw.interrupt(request->device->channel);
-    return;
+}
+
+void
+ata_catch_inflight(struct ata_channel *ch)
+{
+    struct ata_request *request = ch->running;
+
+    ch->running = NULL;
+    if (request) {
+        untimeout((timeout_t *)ata_timeout, request, request->timeout_handle);
+        ata_prtdev(request->device,
+                   "WARNING - %s requeued due to channel reset",
+                   ata_cmd2str(request));
+        if (!(request->flags & (ATA_R_ATAPI | ATA_R_CONTROL)))
+            printf(" LBA=%llu", (unsigned long long)request->u.ata.lba);
+        printf("\n");
+        request->flags |= ATA_R_REQUEUE;
+        ata_queue_request(request);
+    }
 }
 
 void
@@ -491,6 +509,7 @@
     /* if we have a request "in flight" fail it as well */
     if ((request = ch->running) && (!device || request->device == device)) {
 	untimeout((timeout_t *)ata_timeout, request, request->timeout_handle);
+	ch->running = NULL;
 	request->result = ENXIO;
 	if (request->callback)
 	    (request->callback)(request);

==== //depot/projects/nsched/sys/dev/ctau/if_ct.c#8 (text+ko) ====

@@ -22,7 +22,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.14 2004/08/13 12:35:52 rik Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.15 2004/08/27 22:14:26 rik Exp $");
 
 #include <sys/param.h>
  
@@ -735,7 +735,8 @@
 		d->pp.pp_if.if_name	= "ct";
 #endif
 		d->pp.pp_if.if_mtu	= PP_MTU;
-		d->pp.pp_if.if_flags	= IFF_POINTOPOINT | IFF_MULTICAST;
+		d->pp.pp_if.if_flags	= IFF_POINTOPOINT | IFF_MULTICAST |
+					  IFF_NEEDSGIANT;
 		d->pp.pp_if.if_ioctl	= ct_sioctl;
 		d->pp.pp_if.if_start	= ct_ifstart;
 		d->pp.pp_if.if_watchdog	= ct_ifwatchdog;

==== //depot/projects/nsched/sys/dev/cx/if_cx.c#11 (text+ko) ====

@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.30 2004/08/13 12:35:52 rik Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.31 2004/08/27 22:14:26 rik Exp $");
 
 #include <sys/param.h>
 
@@ -867,7 +867,8 @@
 		d->pp.pp_if.if_name	= "cx";
 #endif
 		d->pp.pp_if.if_mtu	= PP_MTU;
-		d->pp.pp_if.if_flags	= IFF_POINTOPOINT | IFF_MULTICAST;
+		d->pp.pp_if.if_flags	= IFF_POINTOPOINT | IFF_MULTICAST |
+					  IFF_NEEDSGIANT;
 		d->pp.pp_if.if_ioctl	= cx_sioctl;
 		d->pp.pp_if.if_start	= cx_ifstart;
 		d->pp.pp_if.if_watchdog	= cx_ifwatchdog;

==== //depot/projects/nsched/sys/dev/fdc/fdc.c#7 (text+ko) ====

@@ -51,7 +51,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.285 2004/08/21 08:40:00 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.286 2004/08/27 17:08:24 phk Exp $");
 
 #include "opt_fdc.h"
 
@@ -1601,7 +1601,9 @@
 		return (ENXIO);
 	if (fdc_cmd(fdc, 1, 0x18, 1, &part_id))
 		return (ENXIO);
-	device_printf(dev, "ic_type %02x part_id %02x\n", ic_type, part_id);
+	if (bootverbose)
+		device_printf(dev,
+		    "ic_type %02x part_id %02x\n", ic_type, part_id);
 	switch (ic_type & 0xff) {
 	case 0x80:
 		device_set_desc(dev, "NEC 765 or clone");

==== //depot/projects/nsched/sys/dev/hfa/fore_receive.c#2 (text+ko) ====

@@ -23,7 +23,7 @@
  */

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


More information about the p4-projects mailing list