Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Jul 2008 07:52:26 GMT
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 144864 for review
Message-ID:  <200807080752.m687qQWB095391@repoman.freebsd.org>

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

Change 144864 by hselasky@hselasky_laptop001 on 2008/07/08 07:52:06

	
	IFC @ 144862

Affected files ...

.. //depot/projects/usb/src/sys/amd64/amd64/minidump_machdep.c#5 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#10 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/pmap.c#11 integrate
.. //depot/projects/usb/src/sys/amd64/conf/GENERIC#12 integrate
.. //depot/projects/usb/src/sys/amd64/include/pmap.h#6 integrate
.. //depot/projects/usb/src/sys/amd64/include/vmparam.h#8 integrate
.. //depot/projects/usb/src/sys/boot/forth/loader.conf#9 integrate
.. //depot/projects/usb/src/sys/boot/pc98/boot2/README.serial.98#2 delete
.. //depot/projects/usb/src/sys/compat/linux/linux_misc.c#10 integrate
.. //depot/projects/usb/src/sys/compat/svr4/svr4_stat.c#3 integrate
.. //depot/projects/usb/src/sys/conf/NOTES#16 integrate
.. //depot/projects/usb/src/sys/conf/files#32 integrate
.. //depot/projects/usb/src/sys/conf/files.i386#10 integrate
.. //depot/projects/usb/src/sys/conf/files.pc98#10 integrate
.. //depot/projects/usb/src/sys/conf/kern.post.mk#7 integrate
.. //depot/projects/usb/src/sys/contrib/dev/oltr/COPYRIGHT#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/i386-elf.trlld.o.uu#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/if_oltr.c#3 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/if_oltr_isa.c#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/if_oltr_pci.c#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/if_oltrvar.h#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/trlld.h#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/trlldbm.c#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/trlldhm.c#2 delete
.. //depot/projects/usb/src/sys/contrib/dev/oltr/trlldmac.c#2 delete
.. //depot/projects/usb/src/sys/dev/acpi_support/acpi_asus.c#6 integrate
.. //depot/projects/usb/src/sys/dev/arl/if_arl.c#3 delete
.. //depot/projects/usb/src/sys/dev/arl/if_arl_isa.c#3 delete
.. //depot/projects/usb/src/sys/dev/arl/if_arlreg.h#3 delete
.. //depot/projects/usb/src/sys/dev/bm/if_bm.c#2 integrate
.. //depot/projects/usb/src/sys/dev/bm/if_bmreg.h#2 integrate
.. //depot/projects/usb/src/sys/dev/bm/if_bmvar.h#2 integrate
.. //depot/projects/usb/src/sys/dev/cnw/if_cnw.c#5 delete
.. //depot/projects/usb/src/sys/dev/cnw/if_cnwioctl.h#2 delete
.. //depot/projects/usb/src/sys/dev/cnw/if_cnwreg.h#2 delete
.. //depot/projects/usb/src/sys/dev/ed/if_ed_pccard.c#4 integrate
.. //depot/projects/usb/src/sys/dev/k8temp/k8temp.c#3 integrate
.. //depot/projects/usb/src/sys/dev/lmc/if_lmc.c#6 integrate
.. //depot/projects/usb/src/sys/dev/lmc/if_lmc.h#4 integrate
.. //depot/projects/usb/src/sys/dev/pccard/pccarddevs#7 integrate
.. //depot/projects/usb/src/sys/dev/sbni/if_sbni.c#4 delete
.. //depot/projects/usb/src/sys/dev/sbni/if_sbni_isa.c#3 delete
.. //depot/projects/usb/src/sys/dev/sbni/if_sbni_pci.c#3 delete
.. //depot/projects/usb/src/sys/dev/sbni/if_sbnireg.h#2 delete
.. //depot/projects/usb/src/sys/dev/sbni/if_sbnivar.h#2 delete
.. //depot/projects/usb/src/sys/dev/sbsh/if_sbsh.c#5 delete
.. //depot/projects/usb/src/sys/dev/sbsh/if_sbshreg.h#2 delete
.. //depot/projects/usb/src/sys/dev/syscons/daemon/daemon_saver.c#3 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_ethersubr.c#7 integrate
.. //depot/projects/usb/src/sys/dev/usb2/core/usb2_dev.c#13 edit
.. //depot/projects/usb/src/sys/dev/usb2/core/usb2_dev.h#8 edit
.. //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.c#11 edit
.. //depot/projects/usb/src/sys/dev/usb2/core/usb2_generic.h#4 edit
.. //depot/projects/usb/src/sys/dev/usb2/include/usb2_ioctl.h#8 edit
.. //depot/projects/usb/src/sys/fs/cd9660/cd9660_rrip.c#2 integrate
.. //depot/projects/usb/src/sys/fs/msdosfs/msdosfs_vnops.c#7 integrate
.. //depot/projects/usb/src/sys/geom/vinum/geom_vinum_drive.c#4 integrate
.. //depot/projects/usb/src/sys/i386/conf/GENERIC#11 integrate
.. //depot/projects/usb/src/sys/i386/conf/NOTES#11 integrate
.. //depot/projects/usb/src/sys/i386/i386/mp_machdep.c#9 integrate
.. //depot/projects/usb/src/sys/i386/i386/pmap.c#10 integrate
.. //depot/projects/usb/src/sys/i386/ibcs2/ibcs2_socksys.c#3 integrate
.. //depot/projects/usb/src/sys/ia64/conf/GENERIC#8 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/machdep.c#9 integrate
.. //depot/projects/usb/src/sys/ia64/include/ia64_cpu.h#4 integrate
.. //depot/projects/usb/src/sys/kern/kern_cpuset.c#4 integrate
.. //depot/projects/usb/src/sys/kern/kern_event.c#8 integrate
.. //depot/projects/usb/src/sys/kern/kern_fork.c#10 integrate
.. //depot/projects/usb/src/sys/kern/kern_jail.c#7 integrate
.. //depot/projects/usb/src/sys/kern/kern_malloc.c#9 integrate
.. //depot/projects/usb/src/sys/kern/kern_mib.c#7 integrate
.. //depot/projects/usb/src/sys/kern/kern_poll.c#6 integrate
.. //depot/projects/usb/src/sys/kern/kern_xxx.c#5 integrate
.. //depot/projects/usb/src/sys/kern/subr_param.c#4 integrate
.. //depot/projects/usb/src/sys/kern/uipc_usrreq.c#9 integrate
.. //depot/projects/usb/src/sys/mips/adm5120/adm5120_machdep.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/adm5120reg.h#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/admpci.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/console.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/files.adm5120#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/if_admsw.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/if_admswreg.h#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/if_admswvar.h#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/obio.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/obiovar.h#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/std.adm5120#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/uart_bus_adm5120.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/uart_cpu_adm5120.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/uart_dev_adm5120.c#1 branch
.. //depot/projects/usb/src/sys/mips/adm5120/uart_dev_adm5120.h#1 branch
.. //depot/projects/usb/src/sys/mips/idt/files.idt#1 branch
.. //depot/projects/usb/src/sys/mips/idt/idt_machdep.c#1 branch
.. //depot/projects/usb/src/sys/mips/idt/idtpci.c#1 branch
.. //depot/projects/usb/src/sys/mips/idt/idtreg.h#1 branch
.. //depot/projects/usb/src/sys/mips/idt/if_kr.c#1 branch
.. //depot/projects/usb/src/sys/mips/idt/if_krreg.h#1 branch
.. //depot/projects/usb/src/sys/mips/idt/obio.c#1 branch
.. //depot/projects/usb/src/sys/mips/idt/obiovar.h#1 branch
.. //depot/projects/usb/src/sys/mips/idt/std.idt#1 branch
.. //depot/projects/usb/src/sys/mips/idt/uart_bus_rc32434.c#1 branch
.. //depot/projects/usb/src/sys/mips/idt/uart_cpu_rc32434.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/files.malta#1 branch
.. //depot/projects/usb/src/sys/mips/malta/gt.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/gt_pci.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/gtreg.h#1 branch
.. //depot/projects/usb/src/sys/mips/malta/gtvar.h#1 branch
.. //depot/projects/usb/src/sys/mips/malta/malta_machdep.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/maltareg.h#1 branch
.. //depot/projects/usb/src/sys/mips/malta/obio.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/obiovar.h#1 branch
.. //depot/projects/usb/src/sys/mips/malta/std.malta#1 branch
.. //depot/projects/usb/src/sys/mips/malta/uart_bus_maltausart.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/uart_cpu_maltausart.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/yamon.c#1 branch
.. //depot/projects/usb/src/sys/mips/malta/yamon.h#1 branch
.. //depot/projects/usb/src/sys/mips/mips/pmap.c#3 integrate
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/adm5120_machdep.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/adm5120reg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/admpci.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/console.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/files.adm5120#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/if_admsw.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/if_admswreg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/if_admswvar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/obio.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/obiovar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/std.adm5120#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/uart_bus_adm5120.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/uart_cpu_adm5120.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/uart_dev_adm5120.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/adm5120/uart_dev_adm5120.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/files.idt#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/idt_machdep.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/idtpci.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/idtreg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/if_kr.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/if_krreg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/obio.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/obiovar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/std.idt#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/uart_bus_rc32434.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/idt/uart_cpu_rc32434.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/files.malta#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/gt.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/gt_pci.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/gtreg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/gtvar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/malta_machdep.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/maltareg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/obio.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/obiovar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/std.malta#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/uart_bus_maltausart.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/uart_cpu_maltausart.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/yamon.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/malta/yamon.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/files.sentry5#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/obio.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/obiovar.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/s5_machdep.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/s5reg.h#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/siba_cc.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/siba_mips.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/siba_sdram.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/uart_bus_sbusart.c#2 delete
.. //depot/projects/usb/src/sys/mips/mips32/sentry5/uart_cpu_sbusart.c#2 delete
.. //depot/projects/usb/src/sys/mips/sentry5/files.sentry5#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/obio.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/obiovar.h#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/s5_machdep.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/s5reg.h#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/siba_cc.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/siba_mips.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/siba_sdram.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/uart_bus_sbusart.c#1 branch
.. //depot/projects/usb/src/sys/mips/sentry5/uart_cpu_sbusart.c#1 branch
.. //depot/projects/usb/src/sys/modules/Makefile#18 integrate
.. //depot/projects/usb/src/sys/modules/arl/Makefile#2 delete
.. //depot/projects/usb/src/sys/modules/cnw/Makefile#2 delete
.. //depot/projects/usb/src/sys/modules/oltr/Makefile#2 delete
.. //depot/projects/usb/src/sys/modules/sbni/Makefile#2 delete
.. //depot/projects/usb/src/sys/modules/sbsh/Makefile#2 delete
.. //depot/projects/usb/src/sys/net/bpf.c#9 integrate
.. //depot/projects/usb/src/sys/net/bpf.h#6 integrate
.. //depot/projects/usb/src/sys/net/bpf_zerocopy.c#2 integrate
.. //depot/projects/usb/src/sys/net/bpf_zerocopy.h#2 integrate
.. //depot/projects/usb/src/sys/net/if_lagg.c#7 integrate
.. //depot/projects/usb/src/sys/net/if_ppp.c#7 integrate
.. //depot/projects/usb/src/sys/net/netisr.c#5 integrate
.. //depot/projects/usb/src/sys/net/netisr.h#3 integrate
.. //depot/projects/usb/src/sys/net/raw_cb.c#4 integrate
.. //depot/projects/usb/src/sys/net/raw_cb.h#2 integrate
.. //depot/projects/usb/src/sys/net/raw_usrreq.c#4 integrate
.. //depot/projects/usb/src/sys/net/rtsock.c#8 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_ht.c#5 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_output.c#9 integrate
.. //depot/projects/usb/src/sys/netatalk/ddp_usrreq.c#5 integrate
.. //depot/projects/usb/src/sys/netgraph/ng_base.c#9 integrate
.. //depot/projects/usb/src/sys/netinet/if_ether.c#9 integrate
.. //depot/projects/usb/src/sys/netinet/ip_gre.c#4 integrate
.. //depot/projects/usb/src/sys/netinet/ip_input.c#11 integrate
.. //depot/projects/usb/src/sys/netinet/raw_ip.c#9 integrate
.. //depot/projects/usb/src/sys/netinet/udp_usrreq.c#10 integrate
.. //depot/projects/usb/src/sys/netinet6/icmp6.c#9 integrate
.. //depot/projects/usb/src/sys/netinet6/in6.c#8 integrate
.. //depot/projects/usb/src/sys/netinet6/in6_ifattach.c#7 integrate
.. //depot/projects/usb/src/sys/netinet6/ip6_input.c#10 integrate
.. //depot/projects/usb/src/sys/netinet6/raw_ip6.c#8 integrate
.. //depot/projects/usb/src/sys/netinet6/udp6_usrreq.c#9 integrate
.. //depot/projects/usb/src/sys/netipx/ipx_input.c#4 integrate
.. //depot/projects/usb/src/sys/netnatm/natm_proto.c#3 integrate
.. //depot/projects/usb/src/sys/nfsclient/bootp_subr.c#7 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_vfsops.c#9 integrate
.. //depot/projects/usb/src/sys/nlm/nlm_advlock.c#2 integrate
.. //depot/projects/usb/src/sys/pc98/conf/GENERIC#11 integrate
.. //depot/projects/usb/src/sys/pc98/conf/NOTES#10 integrate
.. //depot/projects/usb/src/sys/pc98/include/bus.h#2 integrate
.. //depot/projects/usb/src/sys/pc98/pc98/busiosubr.c#2 integrate
.. //depot/projects/usb/src/sys/powerpc/conf/GENERIC#10 integrate
.. //depot/projects/usb/src/sys/rpc/authunix_prot.c#3 integrate
.. //depot/projects/usb/src/sys/sparc64/conf/GENERIC#9 integrate
.. //depot/projects/usb/src/sys/sparc64/include/in_cksum.h#3 integrate
.. //depot/projects/usb/src/sys/sparc64/sparc64/in_cksum.c#2 integrate
.. //depot/projects/usb/src/sys/sun4v/conf/GENERIC#7 integrate
.. //depot/projects/usb/src/sys/sys/event.h#4 integrate
.. //depot/projects/usb/src/sys/sys/kernel.h#8 integrate
.. //depot/projects/usb/src/sys/vm/vm_kern.h#3 integrate

Differences ...

==== //depot/projects/usb/src/sys/amd64/amd64/minidump_machdep.c#5 (text) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/minidump_machdep.c,v 1.5 2008/06/20 20:59:31 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/minidump_machdep.c,v 1.6 2008/07/08 04:00:22 alc Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -206,7 +206,8 @@
 	/* Walk page table pages, set bits in vm_page_dump */
 	ptesize = 0;
 	pdp = (uint64_t *)PHYS_TO_DMAP(KPDPphys);
-	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += NBPDR) {
+	for (va = VM_MIN_KERNEL_ADDRESS; va < MAX(KERNBASE + NKPT * NBPDR,
+	    kernel_vm_end); va += NBPDR) {
 		i = (va >> PDPSHIFT) & ((1ul << NPDPEPGSHIFT) - 1);
 		/*
 		 * We always write a page, even if it is zero. Each
@@ -312,7 +313,8 @@
 
 	/* Dump kernel page table pages */
 	pdp = (uint64_t *)PHYS_TO_DMAP(KPDPphys);
-	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += NBPDR) {
+	for (va = VM_MIN_KERNEL_ADDRESS; va < MAX(KERNBASE + NKPT * NBPDR,
+	    kernel_vm_end); va += NBPDR) {
 		i = (va >> PDPSHIFT) & ((1ul << NPDPEPGSHIFT) - 1);
 		/* We always write a page, even if it is zero */
 		if ((pdp[i] & PG_V) == 0) {

==== //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#10 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.289 2008/03/10 01:32:48 jeff Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.290 2008/07/04 17:36:12 alc Exp $");
 
 #include "opt_cpu.h"
 #include "opt_kstack_pages.h"
@@ -79,7 +79,6 @@
 
 int	mp_naps;		/* # of Applications processors */
 int	boot_cpu_id = -1;	/* designated BSP */
-extern	int nkpt;
 
 extern  struct pcpu __pcpu[];
 

==== //depot/projects/usb/src/sys/amd64/amd64/pmap.c#11 (text+ko) ====

@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.624 2008/07/02 05:41:23 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.626 2008/07/07 17:25:09 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -440,16 +440,16 @@
 	/* Read-only from zero to physfree */
 	/* XXX not fully used, underneath 2M pages */
 	for (i = 0; (i << PAGE_SHIFT) < *firstaddr; i++) {
-		((pt_entry_t *)KPTphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) /
-		    PAGE_SIZE + i] = i << PAGE_SHIFT;
-		((pt_entry_t *)KPTphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) /
-		    PAGE_SIZE + i] |= PG_RW | PG_V | PG_G;
+		((pt_entry_t *)KPTphys)[i] = i << PAGE_SHIFT;
+		((pt_entry_t *)KPTphys)[i] |= PG_RW | PG_V | PG_G;
 	}
 
 	/* Now map the page tables at their location within PTmap */
 	for (i = 0; i < NKPT; i++) {
-		((pd_entry_t *)KPDphys)[i] = KPTphys + (i << PAGE_SHIFT);
-		((pd_entry_t *)KPDphys)[i] |= PG_RW | PG_V;
+		((pd_entry_t *)KPDphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) /
+		    NBPDR + i] = KPTphys + (i << PAGE_SHIFT);
+		((pd_entry_t *)KPDphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) /
+		    NBPDR + i] |= PG_RW | PG_V;
 	}
 
 	/* Map from zero to end of allocations under 2M pages */
@@ -647,15 +647,17 @@
 	 * Initialize the vm page array entries for the kernel pmap's
 	 * page table pages.
 	 */ 
-	pd = pmap_pde(kernel_pmap, VM_MIN_KERNEL_ADDRESS);
+	pd = pmap_pde(kernel_pmap, KERNBASE);
 	for (i = 0; i < NKPT; i++) {
 		if ((pd[i] & (PG_PS | PG_V)) == (PG_PS | PG_V))
 			continue;
+		KASSERT((pd[i] & PG_V) != 0,
+		    ("pmap_init: page table page is missing"));
 		mpte = PHYS_TO_VM_PAGE(pd[i] & PG_FRAME);
 		KASSERT(mpte >= vm_page_array &&
 		    mpte < &vm_page_array[vm_page_array_size],
 		    ("pmap_init: page table page is out of range"));
-		mpte->pindex = pmap_pde_pindex(VM_MIN_KERNEL_ADDRESS) + i;
+		mpte->pindex = pmap_pde_pindex(KERNBASE) + i;
 		mpte->phys_addr = pd[i] & PG_FRAME;
 	}
 
@@ -1722,10 +1724,12 @@
 		if (pde == NULL) {
 			/* We need a new PDP entry */
 			nkpg = vm_page_alloc(NULL, kernel_vm_end >> PDPSHIFT,
-			    VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED);
+			    VM_ALLOC_INTERRUPT | VM_ALLOC_NOOBJ |
+			    VM_ALLOC_WIRED | VM_ALLOC_ZERO);
 			if (nkpg == NULL)
 				panic("pmap_growkernel: no memory to grow kernel");
-			pmap_zero_page(nkpg);
+			if ((nkpg->flags & PG_ZERO) == 0)
+				pmap_zero_page(nkpg);
 			paddr = VM_PAGE_TO_PHYS(nkpg);
 			newpdp = (pdp_entry_t)
 				(paddr | PG_V | PG_RW | PG_A | PG_M);
@@ -1742,10 +1746,12 @@
 		}
 
 		nkpg = vm_page_alloc(NULL, pmap_pde_pindex(kernel_vm_end),
-		    VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED);
+		    VM_ALLOC_INTERRUPT | VM_ALLOC_NOOBJ | VM_ALLOC_WIRED |
+		    VM_ALLOC_ZERO);
 		if (nkpg == NULL)
 			panic("pmap_growkernel: no memory to grow kernel");
-		pmap_zero_page(nkpg);
+		if ((nkpg->flags & PG_ZERO) == 0)
+			pmap_zero_page(nkpg);
 		paddr = VM_PAGE_TO_PHYS(nkpg);
 		newpdir = (pd_entry_t) (paddr | PG_V | PG_RW | PG_A | PG_M);
 		*pmap_pde(kernel_pmap, kernel_vm_end) = newpdir;

==== //depot/projects/usb/src/sys/amd64/conf/GENERIC#12 (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.502 2008/06/20 19:28:33 delphij Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.503 2008/07/07 22:55:11 delphij Exp $
 
 cpu		HAMMER
 ident		GENERIC
@@ -64,6 +64,7 @@
 options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
 options 	STOP_NMI		# Stop CPUS using NMI instead of IPI
 options 	AUDIT			# Security event auditing
+options 	HWPMC_HOOKS		# Necessary kernel hooks for hwpmc(4)
 
 # Debugging for use in -current
 options 	KDB			# Enable kernel debugger support.

==== //depot/projects/usb/src/sys/amd64/include/pmap.h#6 (text+ko) ====

@@ -39,7 +39,7 @@
  *
  *	from: hp300: @(#)pmap.h	7.2 (Berkeley) 12/16/90
  *	from: @(#)pmap.h	7.4 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.143 2008/06/30 02:35:55 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.145 2008/07/06 22:36:28 alc Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -111,11 +111,11 @@
 
 /* Initial number of kernel page tables. */
 #ifndef NKPT
-#define	NKPT		2288
+#define	NKPT		32
 #endif
 
 #define NKPML4E		1		/* number of kernel PML4 slots */
-#define NKPDPE		howmany(NKPT, NPDEPG)/* number of kernel PDP slots */
+#define NKPDPE		6		/* number of kernel PDP slots */
 
 #define	NUPML4E		(NPML4EPG/2)	/* number of userland PML4 pages */
 #define	NUPDPE		(NUPML4E*NPDPEPG)/* number of userland PDP pages */
@@ -131,7 +131,7 @@
 #define	KPML4I		(NPML4EPG-1)	/* Top 512GB for KVM */
 #define	DMPML4I		(KPML4I-1)	/* Next 512GB down for direct map */
 
-#define	KPDPI		(NPDPEPG-6)	/* kernel map starts at -6GB */
+#define	KPDPI		(NPDPEPG-7)	/* kernel map starts at -7GB */
 
 /*
  * XXX doesn't really belong here I guess...

==== //depot/projects/usb/src/sys/amd64/include/vmparam.h#8 (text+ko) ====

@@ -38,7 +38,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)vmparam.h	5.9 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.54 2008/07/03 04:53:14 alc Exp $
+ * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.55 2008/07/05 20:44:55 alc Exp $
  */
 
 
@@ -154,8 +154,8 @@
  * 0xffff800000000000 - 0xffff804020100fff   recursive page table (512GB slot)
  * 0xffff804020101000 - 0xfffffeffffffffff   unused
  * 0xffffff0000000000 - 0xffffff7fffffffff   512GB direct map mappings
- * 0xffffff8000000000 - 0xfffffffe7fffffff   unused (506GB)
- * 0xfffffffe80000000 - 0xffffffffffffffff   6GB kernel map
+ * 0xffffff8000000000 - 0xfffffffe3fffffff   unused (505GB)
+ * 0xfffffffe40000000 - 0xffffffffffffffff   7GB kernel map
  *
  * Within the kernel map:
  *

==== //depot/projects/usb/src/sys/boot/forth/loader.conf#9 (text+ko) ====

@@ -6,7 +6,7 @@
 #
 # All arguments must be in double quotes.
 #
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.126 2008/05/27 02:13:25 yongari Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.128 2008/07/04 21:06:57 jhb Exp $
 
 ##############################################################
 ###  Basic configuration options  ############################
@@ -210,7 +210,6 @@
 if_age_load="NO"		# Attansic/Atheros L1 Gigabit Ethernet
 if_an_load="NO"			# Aironet 4500/4800 802.11 wireless NICs
 if_ar_load="NO"			# Digi SYNC/570i
-if_arl_load="NO"		# Aironet Arlan 655 wireless network adapter
 if_ath_load="NO"		# Atheros IEEE 802.11 wireless NICs
 if_aue_load="NO"		# ADMtek AN986 Pegasus USB Ethernet
 if_awi_load="NO"		# AMD PCnetMobile IEEE 802.11 wireless NICs
@@ -254,14 +253,12 @@
 if_nge_load="NO"		# National Semiconductor PCI Gigabit Ethernet
 if_nve_load="NO"		# NVIDIA nForce MCP Networking Adapter
 if_nxge_load="NO"		# Neterion Xframe 10Gb Ethernet
-if_oltr_load="NO"		# Olicom
 if_pcn_load="NO"		# AMD PCnet PCI
 if_ral_load="NO"		# Ralink Technology wireless
 if_ray_load="NO"		# Raytheon Raylink/Webgear Aviator PCCard
 if_re_load="NO"			# RealTek 8139C+/8169/8169S/8110S
 if_rl_load="NO"			# RealTek 8129/8139
 if_rue_load="NO"		# RealTek RTL8150 USB to Fast Ethernet
-if_sbni_load="NO"		# Granch SBNI12 leased line adapters
 if_sf_load="NO"			# Adaptec Duralink PCI (AIC-6915 "starfire")
 if_sis_load="NO"		# Silicon Integrated Systems SiS 900/7016
 if_sk_load="NO"			# SysKonnect SK-984x series PCI Gigabit Ethernet

==== //depot/projects/usb/src/sys/compat/linux/linux_misc.c#10 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.221 2008/05/13 20:01:27 rdivacky Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.222 2008/07/05 13:10:10 rwatson Exp $");
 
 #include "opt_compat.h"
 #include "opt_mac.h"
@@ -761,7 +761,9 @@
 #else /* something other than i386 or amd64 - assume we and Linux agree */
 	strlcpy(utsname.machine, machine, LINUX_MAX_UTSNAME);
 #endif /* __i386__ */
+	mtx_lock(&hostname_mtx);
 	strlcpy(utsname.domainname, domainname, LINUX_MAX_UTSNAME);
+	mtx_unlock(&hostname_mtx);
 
 	return (copyout(&utsname, args->buf, sizeof(utsname)));
 }

==== //depot/projects/usb/src/sys/compat/svr4/svr4_stat.c#3 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stat.c,v 1.23 2006/09/02 08:18:22 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stat.c,v 1.24 2008/07/05 13:10:10 rwatson Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -454,6 +454,7 @@
 		break;
 
 	case SVR4_SI_SRPC_DOMAIN:
+		/* XXXRW: locking? */
 		str = domainname;
 		break;
 

==== //depot/projects/usb/src/sys/conf/NOTES#16 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1496 2008/06/28 13:38:53 philip Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1498 2008/07/04 21:24:35 jhb Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -1737,7 +1737,6 @@
 #	the embedded gigE NICs on Dell PowerEdge 2550 servers.
 # cm:	Arcnet SMC COM90c26 / SMC COM90c56
 #	(and SMC COM90c66 in '56 compatibility mode) adapters.
-# cnw:  Xircom CNW/Netware Airsurfer PC Card adapter
 # dc:   Support for PCI fast ethernet adapters based on the DEC/Intel 21143
 #       and various workalikes including:
 #       the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics
@@ -1800,7 +1799,6 @@
 #       card which is 32-bit.
 # sis:  Support for NICs based on the Silicon Integrated Systems SiS 900,
 #       SiS 7016 and NS DP83815 PCI fast ethernet controller chips.
-# sbsh:	Support for Granch SBNI16 SHDSL modem PCI adapters
 # sk:   Support for the SysKonnect SK-984x series PCI gigabit ethernet NICs.
 #       This includes the SK-9841 and SK-9842 single port cards (single mode
 #       and multimode fiber) and the SK-9843 and SK-9844 dual port cards
@@ -1864,7 +1862,6 @@
 hint.sn.0.port="0x300"
 hint.sn.0.irq="10"
 device		an
-device		cnw
 device		wi
 device		xe
 
@@ -1887,7 +1884,6 @@
 device		rl		# RealTek 8129/8139
 device		pcn		# AMD Am79C97x PCI 10/100 NICs
 device		sf		# Adaptec AIC-6915 (``Starfire'')
-device		sbsh		# Granch SBNI16 SHDSL modem
 device		sis		# Silicon Integrated Systems SiS 900/SiS 7016
 device		sk		# SysKonnect SK-984x & SK-982x gigabit Ethernet
 device		ste		# Sundance ST201 (D-Link DFE-550TX)

==== //depot/projects/usb/src/sys/conf/files#32 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1312 2008/06/26 10:21:54 dfr Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1314 2008/07/04 21:24:35 jhb Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -509,7 +509,6 @@
 dev/cm/smc90cx6.c		optional cm
 dev/cmx/cmx.c			optional cmx
 dev/cmx/cmx_pccard.c		optional cmx pccard
-dev/cnw/if_cnw.c		optional cnw pccard
 dev/cpufreq/ichss.c		optional cpufreq
 dev/cs/if_cs.c			optional cs
 dev/cs/if_cs_isa.c		optional cs isa
@@ -1084,7 +1083,6 @@
 dev/rp/rp_isa.c			optional rp isa
 dev/rp/rp_pci.c			optional rp pci
 dev/safe/safe.c			optional safe
-dev/sbsh/if_sbsh.c		optional sbsh
 dev/scc/scc_if.m		optional scc
 dev/scc/scc_bfe_ebus.c		optional scc ebus
 dev/scc/scc_bfe_quicc.c		optional scc quicc

==== //depot/projects/usb/src/sys/conf/files.i386#10 (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.597 2008/06/14 12:51:44 wkoszek Exp $
+# $FreeBSD: src/sys/conf/files.i386,v 1.600 2008/07/04 21:06:57 jhb Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -46,11 +46,6 @@
 	no-obj no-implicit-rule before-depend				\
 	clean		"ukbdmap.h"
 #
-trlld.o				optional	oltr			\
-	dependency	"$S/contrib/dev/oltr/i386-elf.trlld.o.uu"	\
-	compile-with	"uudecode < $S/contrib/dev/oltr/i386-elf.trlld.o.uu"	\
-	no-implicit-rule
-#
 hal.o				optional	ath_hal			\
 	dependency	"$S/contrib/dev/ath/public/i386-elf.hal.o.uu"	\
 	compile-with	"uudecode < $S/contrib/dev/ath/public/i386-elf.hal.o.uu" \
@@ -124,12 +119,6 @@
 compat/svr4/svr4_sysvec.c	optional compat_svr4
 compat/svr4/svr4_termios.c	optional compat_svr4
 compat/svr4/svr4_ttold.c	optional compat_svr4
-contrib/dev/oltr/if_oltr.c	optional oltr
-contrib/dev/oltr/if_oltr_isa.c	optional oltr isa
-contrib/dev/oltr/if_oltr_pci.c	optional oltr pci
-contrib/dev/oltr/trlldbm.c	optional oltr
-contrib/dev/oltr/trlldhm.c	optional oltr
-contrib/dev/oltr/trlldmac.c	optional oltr
 bf_enc.o			optional crypto | ipsec	\
 	dependency	"$S/crypto/blowfish/arch/i386/bf_enc.S $S/crypto/blowfish/arch/i386/bf_enc_586.S $S/crypto/blowfish/arch/i386/bf_enc_686.S" \
 	compile-with	"${CC} -c -I$S/crypto/blowfish/arch/i386 ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}" \
@@ -153,8 +142,6 @@
 dev/ar/if_ar.c			optional ar
 dev/ar/if_ar_isa.c		optional ar isa
 dev/ar/if_ar_pci.c		optional ar pci
-dev/arl/if_arl.c		optional arl
-dev/arl/if_arl_isa.c		optional arl isa
 dev/asmc/asmc.c			optional asmc isa
 dev/atkbdc/atkbd.c		optional atkbd atkbdc
 dev/atkbdc/atkbd_atkbdc.c	optional atkbd atkbdc
@@ -225,9 +212,6 @@
 dev/nvram/nvram.c		optional nvram isa
 dev/pcf/pcf_isa.c		optional pcf
 dev/random/nehemiah.c		optional random
-dev/sbni/if_sbni.c		optional sbni
-dev/sbni/if_sbni_isa.c		optional sbni isa
-dev/sbni/if_sbni_pci.c		optional sbni pci
 dev/sio/sio.c			optional sio
 dev/sio/sio_isa.c		optional sio isa
 dev/sio/sio_pccard.c		optional sio pccard

==== //depot/projects/usb/src/sys/conf/files.pc98#10 (text+ko) ====

@@ -3,7 +3,7 @@
 #
 # modified for PC-9801/PC-9821
 #
-# $FreeBSD: src/sys/conf/files.pc98,v 1.364 2008/06/14 12:51:44 wkoszek Exp $
+# $FreeBSD: src/sys/conf/files.pc98,v 1.366 2008/07/04 21:06:57 jhb Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -38,11 +38,6 @@
 	no-obj no-implicit-rule before-depend				\
 	clean		"ukbdmap.h"
 #
-trlld.o				optional	oltr			\
-	dependency	"$S/contrib/dev/oltr/i386-elf.trlld.o.uu"	\
-	compile-with	"uudecode < $S/contrib/dev/oltr/i386-elf.trlld.o.uu"	\
-	no-implicit-rule
-#
 hal.o				optional	ath_hal			\
 	dependency	"$S/contrib/dev/ath/public/i386-elf.hal.o.uu"	\
 	compile-with	"uudecode < $S/contrib/dev/ath/public/i386-elf.hal.o.uu" \
@@ -87,11 +82,6 @@
 compat/svr4/svr4_sysvec.c	optional compat_svr4
 compat/svr4/svr4_termios.c	optional compat_svr4
 compat/svr4/svr4_ttold.c	optional compat_svr4
-contrib/dev/oltr/if_oltr.c	optional oltr
-contrib/dev/oltr/if_oltr_pci.c	optional oltr pci
-contrib/dev/oltr/trlldbm.c	optional oltr
-contrib/dev/oltr/trlldhm.c	optional oltr
-contrib/dev/oltr/trlldmac.c	optional oltr
 bf_enc.o			optional crypto | ipsec	\
 	dependency	"$S/crypto/blowfish/arch/i386/bf_enc.S $S/crypto/blowfish/arch/i386/bf_enc_586.S $S/crypto/blowfish/arch/i386/bf_enc_686.S" \
 	compile-with	"${CC} -c -I$S/crypto/blowfish/arch/i386 ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}" \
@@ -130,8 +120,6 @@
 dev/mem/memutil.c		optional mem
 dev/mse/mse.c			optional mse
 dev/mse/mse_cbus.c		optional mse isa
-dev/sbni/if_sbni.c		optional sbni
-dev/sbni/if_sbni_pci.c		optional sbni pci
 dev/sio/sio_pccard.c		optional sio pccard
 dev/sio/sio_pci.c		optional sio pci
 dev/sio/sio_puc.c		optional sio puc

==== //depot/projects/usb/src/sys/conf/kern.post.mk#7 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/kern.post.mk,v 1.102 2008/05/23 03:53:49 jb Exp $
+# $FreeBSD: src/sys/conf/kern.post.mk,v 1.103 2008/07/05 06:12:14 jb Exp $
 
 # Part of a unified Makefile for building kernels.  This part includes all
 # the definitions that need to be after all the % directives except %RULES
@@ -236,6 +236,9 @@
 
 config.o env.o hints.o vers.o vnode_if.o:
 	${NORMAL_C}
+.if defined(CTFCONVERT)
+	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
+.endif
 
 config.ln env.ln hints.ln vers.ln vnode_if.ln:
 	${NORMAL_LINT}

==== //depot/projects/usb/src/sys/dev/acpi_support/acpi_asus.c#6 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpi_support/acpi_asus.c,v 1.35 2008/06/28 08:36:47 remko Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpi_support/acpi_asus.c,v 1.36 2008/07/04 23:40:53 rpaulo Exp $");
 
 /*
  * Driver for extra ACPI-controlled gadgets (hotkeys, leds, etc) found on
@@ -57,6 +57,7 @@
 #define ACPI_ASUS_METHOD_LCD	3
 #define ACPI_ASUS_METHOD_CAMERA	4
 #define ACPI_ASUS_METHOD_CARDRD	5
+#define ACPI_ASUS_METHOD_WLAN	6
 
 #define _COMPONENT	ACPI_OEM
 ACPI_MODULE_NAME("ASUS")
@@ -88,6 +89,9 @@
 	char	*crd_get;
 	char	*crd_set;
 
+	char	*wlan_get;
+	char	*wlan_set;
+
 	void	(*n_func)(ACPI_HANDLE, UINT32, void *);
 };
 
@@ -126,6 +130,7 @@
 	int			s_lcd;
 	int			s_cam;
 	int			s_crd;
+	int			s_wlan;
 };
 
 /*
@@ -402,6 +407,8 @@
 		.cam_set	= "\\_SB.ATKD.CAMS",
 		.crd_set	= "\\_SB.ATKD.CRDS",
 		.crd_get	= "\\_SB.ATKD.CRDG",
+		.wlan_get	= "\\_SB.ATKD.WLDG",
+		.wlan_set	= "\\_SB.ATKD.WLDS",
 		.n_func		= acpi_asus_eeepc_notify
 	},
 
@@ -444,6 +451,12 @@
 		.description	= "internal card reader state",
 		.flags 		= CTLTYPE_INT | CTLFLAG_RW
 	},
+	{
+		.name		= "wlan",
+		.method		= ACPI_ASUS_METHOD_WLAN,
+		.description	= "wireless lan state",
+		.flags		= CTLTYPE_INT | CTLFLAG_RW
+	},
 
 	{ .name = NULL }
 };
@@ -906,6 +919,9 @@
 	case ACPI_ASUS_METHOD_CARDRD:
 		val = sc->s_crd;
 		break;
+	case ACPI_ASUS_METHOD_WLAN:
+		val = sc->s_wlan;
+		break;
 	}
 
 	return (val);
@@ -914,11 +930,18 @@
 static int
 acpi_asus_sysctl_set(struct acpi_asus_softc *sc, int method, int arg)
 {
-	ACPI_STATUS	status = AE_OK;
+	ACPI_STATUS		status = AE_OK;
+	ACPI_OBJECT_LIST 	acpiargs;
+	ACPI_OBJECT		acpiarg[0];
 
 	ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__);
 	ACPI_SERIAL_ASSERT(asus);
 
+	acpiargs.Count = 1;
+	acpiargs.Pointer = acpiarg;
+	acpiarg[0].Type = ACPI_TYPE_INTEGER;
+	acpiarg[0].Integer.Value = arg;
+
 	switch (method) {
 	case ACPI_ASUS_METHOD_BRN:
 		if (arg < 0 || arg > 15)
@@ -971,7 +994,7 @@
 			return (EINVAL);
 
 		status = AcpiEvaluateObject(sc->handle,
-		    sc->model->cam_set, NULL, NULL);
+		    sc->model->cam_set, &acpiargs, NULL);
 
 		if (ACPI_SUCCESS(status))
 			sc->s_cam = arg;
@@ -981,11 +1004,21 @@
 			return (EINVAL);
 
 		status = AcpiEvaluateObject(sc->handle,
-		    sc->model->crd_set, NULL, NULL);
+		    sc->model->crd_set, &acpiargs, NULL);
 
 		if (ACPI_SUCCESS(status))
 			sc->s_crd = arg;
 		break;
+	case ACPI_ASUS_METHOD_WLAN:
+		if (arg < 0 || arg > 1)
+			return (EINVAL);
+
+		status = AcpiEvaluateObject(sc->handle,
+		    sc->model->wlan_set, &acpiargs, NULL);
+
+		if (ACPI_SUCCESS(status))
+			sc->s_wlan = arg;
+		break;
 	}
 
 	return (0);
@@ -1096,6 +1129,14 @@
 				return (TRUE);
 		}
 		return (FALSE);
+	case ACPI_ASUS_METHOD_WLAN:
+		if (sc->model->wlan_get) {
+			status = acpi_GetInteger(sc->handle,
+			    sc->model->wlan_get, &sc->s_wlan);
+			if (ACPI_SUCCESS(status))
+				return (TRUE);
+		}
+		return (FALSE);
 	}
 	return (FALSE);
 }

==== //depot/projects/usb/src/sys/dev/bm/if_bm.c#2 (text+ko) ====

@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/bm/if_bm.c,v 1.1 2008/06/07 22:58:32 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/bm/if_bm.c,v 1.2 2008/07/03 21:51:30 nwhitehorn Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -101,7 +101,6 @@
 static void bm_enable_interrupts (struct bm_softc *sc);
 static void bm_disable_interrupts (struct bm_softc *sc);
 static void bm_tick		(void *xsc);
-static int  bm_watchdog		(struct bm_softc *sc);
 
 static int bm_ifmedia_upd	(struct ifnet *);
 static void bm_ifmedia_sts	(struct ifnet *, struct ifmediareq *);
@@ -240,8 +239,6 @@
 {
 	int i, ack, bit;
 
-	BM_LOCK(sc);
-
 	/*
 	 * Set up frame for RX.
 	 */
@@ -284,8 +281,6 @@
 	bm_mii_writebit(sc, 0);
 	bm_mii_writebit(sc, 0);
 
-	BM_UNLOCK(sc);
-
 	return ((ack) ? 1 : 0);
 }
 
@@ -295,8 +290,6 @@
 static int
 bm_mii_writereg(struct bm_softc *sc, struct bm_mii_frame *frame)
 {
-	BM_LOCK(sc);
-
 	/*
 	 * Set up frame for tx
 	 */
@@ -321,8 +314,6 @@
 	 */
 	bm_mii_writebit(sc, 0);
 
-	BM_UNLOCK(sc);
-
 	return (0);
 }
 
@@ -464,7 +455,7 @@
 
 	error = 0;
 	mtx_init(&sc->sc_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK,
-	    MTX_DEF | MTX_RECURSE);
+	    MTX_DEF);
 	callout_init_mtx(&sc->sc_tick_ch, &sc->sc_mtx, 0);
 
 	/* Check for an improved version of Paddington */
@@ -484,9 +475,6 @@
 		return (ENXIO);
 	}
 
-	sc->sc_btag = rman_get_bustag(sc->sc_memr);
-	sc->sc_bhandle = rman_get_bushandle(sc->sc_memr);
-
 	sc->sc_txdmarid = BM_TXDMA_REGISTERS;
 	sc->sc_rxdmarid = BM_RXDMA_REGISTERS;
 
@@ -627,8 +615,6 @@
 
 	/* Attach the interface. */
 	ether_ifattach(ifp, sc->sc_enaddr);
-
-	ifp->if_data.ifi_hdrlen = sizeof(struct ether_header);
 	ifp->if_hwassist = 0;
 
 	return (0);
@@ -639,11 +625,15 @@
 {
 	struct bm_softc *sc = device_get_softc(dev);
 
-	callout_drain(&sc->sc_tick_ch);
-
 	BM_LOCK(sc);
 	bm_stop(sc);
+	BM_UNLOCK(sc);
 
+	callout_drain(&sc->sc_tick_ch);
+	ether_ifdetach(sc->sc_ifp);
+	bus_teardown_intr(dev, sc->sc_txdmairq, sc->sc_txihtx);
+	bus_teardown_intr(dev, sc->sc_rxdmairq, sc->sc_rxih);
+
 	dbdma_free_channel(sc->sc_txdma);
 	dbdma_free_channel(sc->sc_rxdma);
 
@@ -653,15 +643,13 @@
 	bus_release_resource(dev, SYS_RES_MEMORY, sc->sc_rxdmarid,
 	    sc->sc_rxdmar);
 
-	bus_teardown_intr(dev, sc->sc_txdmairq, sc->sc_txihtx);
-	bus_teardown_intr(dev, sc->sc_rxdmairq, sc->sc_rxih);
 	bus_release_resource(dev, SYS_RES_IRQ, sc->sc_txdmairqid,
 	    sc->sc_txdmairq);
 	bus_release_resource(dev, SYS_RES_IRQ, sc->sc_rxdmairqid,
 	    sc->sc_rxdmairq);
-	BM_UNLOCK(sc);
 
 	mtx_destroy(&sc->sc_mtx);
+	if_free(sc->sc_ifp);
 
 	return (0);
 }
@@ -669,7 +657,13 @@
 static void
 bm_shutdown(device_t dev)
 {
-	bm_stop(device_get_softc(dev));
+	struct bm_softc *sc;
+	
+	sc = device_get_softc(dev);
+
+	BM_LOCK(sc);
+	bm_stop(sc);
+	BM_UNLOCK(sc);
 }
 
 static void
@@ -1205,6 +1199,7 @@
 	/* And we're down */
 	sc->sc_ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE);
 	sc->sc_wdog_timer = 0;
+	callout_stop(&sc->sc_tick_ch);
 }
 
 static void
@@ -1370,22 +1365,15 @@
 	mii_tick(sc->sc_mii);
 	bm_miibus_statchg(sc->sc_dev);
 
-	if (bm_watchdog(sc) == EJUSTRETURN)
+	if (sc->sc_wdog_timer == 0 || --sc->sc_wdog_timer != 0) {
+		callout_reset(&sc->sc_tick_ch, hz, bm_tick, sc);

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



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