PERFORCE change 170505 for review
Hans Petter Selasky
hselasky at FreeBSD.org
Wed Nov 11 20:05:04 UTC 2009
http://p4web.freebsd.org/chv.cgi?CH=170505
Change 170505 by hselasky at hselasky_laptop001 on 2009/11/11 20:04:37
IFC @ 170502
Affected files ...
.. //depot/projects/usb/src/lib/libusb/libusb.h#11 integrate
.. //depot/projects/usb/src/lib/libusb/libusb10.c#15 integrate
.. //depot/projects/usb/src/lib/libusb/libusb10_desc.c#11 integrate
.. //depot/projects/usb/src/lib/libusb/libusb10_io.c#11 integrate
.. //depot/projects/usb/src/lib/libusb/libusb20.c#9 integrate
.. //depot/projects/usb/src/lib/libusb/libusb20_desc.c#5 integrate
.. //depot/projects/usb/src/lib/libusb/libusb20_ugen20.c#11 integrate
.. //depot/projects/usb/src/sys/amd64/acpica/acpi_wakeup.c#7 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/identcpu.c#18 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/initcpu.c#9 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#25 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/pmap.c#33 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/trap.c#19 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/vm_machdep.c#14 integrate
.. //depot/projects/usb/src/sys/amd64/isa/isa_dma.c#2 integrate
.. //depot/projects/usb/src/sys/arm/arm/db_trace.c#4 integrate
.. //depot/projects/usb/src/sys/arm/arm/gdb_machdep.c#2 integrate
.. //depot/projects/usb/src/sys/arm/arm/machdep.c#11 integrate
.. //depot/projects/usb/src/sys/arm/arm/trap.c#9 integrate
.. //depot/projects/usb/src/sys/arm/arm/vm_machdep.c#12 integrate
.. //depot/projects/usb/src/sys/arm/at91/at91_machdep.c#5 integrate
.. //depot/projects/usb/src/sys/arm/mv/mv_machdep.c#9 integrate
.. //depot/projects/usb/src/sys/arm/sa11x0/assabet_machdep.c#10 integrate
.. //depot/projects/usb/src/sys/boot/uboot/lib/glue.c#5 integrate
.. //depot/projects/usb/src/sys/cam/ata/ata_all.c#4 integrate
.. //depot/projects/usb/src/sys/cam/ata/ata_all.h#3 integrate
.. //depot/projects/usb/src/sys/cam/ata/ata_da.c#7 integrate
.. //depot/projects/usb/src/sys/cam/ata/ata_xpt.c#6 integrate
.. //depot/projects/usb/src/sys/cam/cam.c#5 integrate
.. //depot/projects/usb/src/sys/cam/cam.h#5 integrate
.. //depot/projects/usb/src/sys/cam/cam_ccb.h#9 integrate
.. //depot/projects/usb/src/sys/cam/cam_periph.c#14 integrate
.. //depot/projects/usb/src/sys/cam/cam_periph.h#6 integrate
.. //depot/projects/usb/src/sys/cam/cam_xpt.c#25 integrate
.. //depot/projects/usb/src/sys/cam/cam_xpt_internal.h#4 integrate
.. //depot/projects/usb/src/sys/cam/scsi/scsi_da.c#17 integrate
.. //depot/projects/usb/src/sys/cam/scsi/scsi_xpt.c#3 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c#4 integrate
.. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c#10 integrate
.. //depot/projects/usb/src/sys/compat/linux/linux_ipc.c#6 integrate
.. //depot/projects/usb/src/sys/compat/ndis/kern_ndis.c#15 integrate
.. //depot/projects/usb/src/sys/compat/ndis/kern_windrv.c#9 integrate
.. //depot/projects/usb/src/sys/compat/ndis/subr_hal.c#5 integrate
.. //depot/projects/usb/src/sys/compat/ndis/subr_ndis.c#18 integrate
.. //depot/projects/usb/src/sys/compat/ndis/subr_ntoskrnl.c#13 integrate
.. //depot/projects/usb/src/sys/compat/ndis/subr_pe.c#4 integrate
.. //depot/projects/usb/src/sys/compat/ndis/subr_usbd.c#18 integrate
.. //depot/projects/usb/src/sys/conf/NOTES#49 integrate
.. //depot/projects/usb/src/sys/conf/files#85 integrate
.. //depot/projects/usb/src/sys/conf/files.ia64#14 integrate
.. //depot/projects/usb/src/sys/conf/options#42 integrate
.. //depot/projects/usb/src/sys/contrib/altq/altq/altq_hfsc.c#5 integrate
.. //depot/projects/usb/src/sys/dev/acpica/acpi.c#24 integrate
.. //depot/projects/usb/src/sys/dev/acpica/acpi_cpu.c#14 integrate
.. //depot/projects/usb/src/sys/dev/acpica/acpi_ec.c#7 integrate
.. //depot/projects/usb/src/sys/dev/acpica/acpi_hpet.c#10 integrate
.. //depot/projects/usb/src/sys/dev/acpica/acpivar.h#13 integrate
.. //depot/projects/usb/src/sys/dev/ahci/ahci.c#6 integrate
.. //depot/projects/usb/src/sys/dev/ahci/ahci.h#4 integrate
.. //depot/projects/usb/src/sys/dev/an/if_an.c#8 integrate
.. //depot/projects/usb/src/sys/dev/an/if_an_isa.c#3 integrate
.. //depot/projects/usb/src/sys/dev/an/if_an_pccard.c#3 integrate
.. //depot/projects/usb/src/sys/dev/an/if_an_pci.c#4 integrate
.. //depot/projects/usb/src/sys/dev/an/if_anreg.h#5 integrate
.. //depot/projects/usb/src/sys/dev/arcmsr/arcmsr.c#11 integrate
.. //depot/projects/usb/src/sys/dev/arcmsr/arcmsr.h#5 integrate
.. //depot/projects/usb/src/sys/dev/ata/ata-all.h#16 integrate
.. //depot/projects/usb/src/sys/dev/ata/ata-disk.c#17 integrate
.. //depot/projects/usb/src/sys/dev/ata/ata-pci.h#23 integrate
.. //depot/projects/usb/src/sys/dev/ata/ata-queue.c#16 integrate
.. //depot/projects/usb/src/sys/dev/ata/ata-raid.c#12 integrate
.. //depot/projects/usb/src/sys/dev/ata/atapi-cd.c#13 integrate
.. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-intel.c#8 integrate
.. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-nvidia.c#9 integrate
.. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-siliconimage.c#8 integrate
.. //depot/projects/usb/src/sys/dev/ath/if_ath.c#33 integrate
.. //depot/projects/usb/src/sys/dev/bge/if_bge.c#23 integrate
.. //depot/projects/usb/src/sys/dev/bge/if_bgereg.h#12 integrate
.. //depot/projects/usb/src/sys/dev/cxgb/cxgb_main.c#24 integrate
.. //depot/projects/usb/src/sys/dev/e1000/if_igb.c#15 integrate
.. //depot/projects/usb/src/sys/dev/fb/vesa.c#5 integrate
.. //depot/projects/usb/src/sys/dev/fb/vgareg.h#3 integrate
.. //depot/projects/usb/src/sys/dev/fdc/fdc.c#11 integrate
.. //depot/projects/usb/src/sys/dev/hatm/if_hatm.c#3 integrate
.. //depot/projects/usb/src/sys/dev/hptrr/hptrr_osm_bsd.c#3 integrate
.. //depot/projects/usb/src/sys/dev/ichwd/ichwd.c#10 integrate
.. //depot/projects/usb/src/sys/dev/ieee488/ibfoo.c#3 integrate
.. //depot/projects/usb/src/sys/dev/if_ndis/if_ndis.c#34 integrate
.. //depot/projects/usb/src/sys/dev/if_ndis/if_ndis_usb.c#22 integrate
.. //depot/projects/usb/src/sys/dev/isp/isp_sbus.c#8 integrate
.. //depot/projects/usb/src/sys/dev/ixgb/if_ixgb.c#8 integrate
.. //depot/projects/usb/src/sys/dev/ixgb/if_ixgb.h#2 integrate
.. //depot/projects/usb/src/sys/dev/ixgbe/ixgbe.c#14 integrate
.. //depot/projects/usb/src/sys/dev/mii/brgphy.c#11 integrate
.. //depot/projects/usb/src/sys/dev/mii/miidevs#15 integrate
.. //depot/projects/usb/src/sys/dev/msk/if_msk.c#17 integrate
.. //depot/projects/usb/src/sys/dev/msk/if_mskreg.h#12 integrate
.. //depot/projects/usb/src/sys/dev/nfe/if_nfe.c#12 integrate
.. //depot/projects/usb/src/sys/dev/patm/if_patm_attach.c#3 integrate
.. //depot/projects/usb/src/sys/dev/pci/vga_pci.c#5 integrate
.. //depot/projects/usb/src/sys/dev/re/if_re.c#23 integrate
.. //depot/projects/usb/src/sys/dev/siis/siis.c#6 integrate
.. //depot/projects/usb/src/sys/dev/siis/siis.h#2 integrate
.. //depot/projects/usb/src/sys/dev/sk/if_sk.c#11 integrate
.. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#59 integrate
.. //depot/projects/usb/src/sys/dev/stge/if_stge.c#9 integrate
.. //depot/projects/usb/src/sys/dev/sym/sym_hipd.c#9 integrate
.. //depot/projects/usb/src/sys/dev/syscons/scterm-teken.c#10 integrate
.. //depot/projects/usb/src/sys/dev/syscons/syscons.c#18 integrate
.. //depot/projects/usb/src/sys/dev/syscons/syscons.h#10 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#44 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci.h#15 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_ixp4xx.c#12 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_mbus.c#11 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_pci.c#19 integrate
.. //depot/projects/usb/src/sys/dev/usb/input/atp.c#1 branch
.. //depot/projects/usb/src/sys/dev/usb/input/uhid.c#15 integrate
.. //depot/projects/usb/src/sys/dev/usb/input/ukbd.c#37 integrate
.. //depot/projects/usb/src/sys/dev/usb/input/ums.c#25 integrate
.. //depot/projects/usb/src/sys/dev/usb/serial/usb_serial.c#17 integrate
.. //depot/projects/usb/src/sys/dev/usb/storage/umass.c#38 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.c#53 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_compat_linux.h#25 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_core.h#31 integrate
.. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#173 integrate
.. //depot/projects/usb/src/sys/dev/usb/usbdi.h#15 integrate
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtw.c#11 integrate
.. //depot/projects/usb/src/sys/dev/vge/if_vge.c#11 integrate
.. //depot/projects/usb/src/sys/dev/vge/if_vgevar.h#2 integrate
.. //depot/projects/usb/src/sys/dev/wpi/if_wpi.c#15 integrate
.. //depot/projects/usb/src/sys/fs/fifofs/fifo_vnops.c#16 integrate
.. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clvnops.c#12 integrate
.. //depot/projects/usb/src/sys/geom/part/g_part_gpt.c#15 integrate
.. //depot/projects/usb/src/sys/gnu/fs/ext2fs/ext2_inode_cnv.c#2 integrate
.. //depot/projects/usb/src/sys/gnu/fs/ext2fs/ext2_vnops.c#11 integrate
.. //depot/projects/usb/src/sys/i386/i386/identcpu.c#16 integrate
.. //depot/projects/usb/src/sys/i386/i386/initcpu.c#10 integrate
.. //depot/projects/usb/src/sys/i386/i386/pmap.c#29 integrate
.. //depot/projects/usb/src/sys/i386/i386/trap.c#16 integrate
.. //depot/projects/usb/src/sys/i386/i386/vm_machdep.c#15 integrate
.. //depot/projects/usb/src/sys/i386/isa/isa_dma.c#2 integrate
.. //depot/projects/usb/src/sys/i386/xen/pmap.c#16 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/highfp.c#1 branch
.. //depot/projects/usb/src/sys/ia64/ia64/interrupt.c#10 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/machdep.c#14 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/trap.c#8 integrate
.. //depot/projects/usb/src/sys/ia64/ia64/vm_machdep.c#5 integrate
.. //depot/projects/usb/src/sys/ia64/include/md_var.h#6 integrate
.. //depot/projects/usb/src/sys/ia64/include/proc.h#2 integrate
.. //depot/projects/usb/src/sys/isa/vga_isa.c#3 integrate
.. //depot/projects/usb/src/sys/kern/kern_idle.c#6 integrate
.. //depot/projects/usb/src/sys/kern/kern_intr.c#17 integrate
.. //depot/projects/usb/src/sys/kern/kern_lock.c#21 integrate
.. //depot/projects/usb/src/sys/kern/kern_sig.c#20 integrate
.. //depot/projects/usb/src/sys/kern/sched_4bsd.c#12 integrate
.. //depot/projects/usb/src/sys/kern/sched_ule.c#20 integrate
.. //depot/projects/usb/src/sys/kern/subr_log.c#3 integrate
.. //depot/projects/usb/src/sys/kern/subr_prf.c#10 integrate
.. //depot/projects/usb/src/sys/kern/uipc_syscalls.c#22 integrate
.. //depot/projects/usb/src/sys/kern/vfs_acl.c#8 integrate
.. //depot/projects/usb/src/sys/kern/vfs_default.c#16 integrate
.. //depot/projects/usb/src/sys/kern/vfs_lookup.c#21 integrate
.. //depot/projects/usb/src/sys/kern/vfs_mount.c#31 integrate
.. //depot/projects/usb/src/sys/kern/vfs_vnops.c#24 integrate
.. //depot/projects/usb/src/sys/mips/include/pcb.h#2 integrate
.. //depot/projects/usb/src/sys/mips/mips/machdep.c#8 integrate
.. //depot/projects/usb/src/sys/mips/mips/pmap.c#14 integrate
.. //depot/projects/usb/src/sys/mips/mips/trap.c#4 integrate
.. //depot/projects/usb/src/sys/mips/mips/vm_machdep.c#2 integrate
.. //depot/projects/usb/src/sys/modules/ichwd/Makefile#2 integrate
.. //depot/projects/usb/src/sys/modules/usb/Makefile#24 integrate
.. //depot/projects/usb/src/sys/modules/usb/atp/Makefile#1 branch
.. //depot/projects/usb/src/sys/net/if_ef.c#13 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211.c#30 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_action.c#4 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_ioctl.h#17 integrate
.. //depot/projects/usb/src/sys/net80211/ieee80211_proto.h#21 integrate
.. //depot/projects/usb/src/sys/netgraph/ng_eiface.c#16 integrate
.. //depot/projects/usb/src/sys/netgraph/ng_fec.c#6 integrate
.. //depot/projects/usb/src/sys/netgraph/ng_iface.c#19 integrate
.. //depot/projects/usb/src/sys/netgraph/ng_sppp.c#4 integrate
.. //depot/projects/usb/src/sys/netinet/ip_ipsec.c#18 integrate
.. //depot/projects/usb/src/sys/netinet/ip_ipsec.h#5 integrate
.. //depot/projects/usb/src/sys/netinet/ip_output.c#30 integrate
.. //depot/projects/usb/src/sys/netinet/ipfw/ip_dummynet.c#4 integrate
.. //depot/projects/usb/src/sys/netinet/tcp_output.c#21 integrate
.. //depot/projects/usb/src/sys/netinet6/nd6.c#27 integrate
.. //depot/projects/usb/src/sys/pc98/cbus/scterm-sck.c#5 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/copyinout.c#2 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/mmu_oea64.c#7 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/swtch.S#7 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/trap.c#5 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/vm_machdep.c#6 integrate
.. //depot/projects/usb/src/sys/powerpc/booke/trap.c#4 integrate
.. //depot/projects/usb/src/sys/powerpc/booke/vm_machdep.c#6 integrate
.. //depot/projects/usb/src/sys/powerpc/powerpc/cpu.c#12 integrate
.. //depot/projects/usb/src/sys/rpc/clnt_vc.c#9 integrate
.. //depot/projects/usb/src/sys/sparc64/include/pcb.h#3 integrate
.. //depot/projects/usb/src/sys/sparc64/sparc64/trap.c#10 integrate
.. //depot/projects/usb/src/sys/sparc64/sparc64/vm_machdep.c#7 integrate
.. //depot/projects/usb/src/sys/sun4v/sun4v/trap.c#7 integrate
.. //depot/projects/usb/src/sys/sun4v/sun4v/vm_machdep.c#4 integrate
.. //depot/projects/usb/src/sys/sys/ata.h#8 integrate
.. //depot/projects/usb/src/sys/sys/fbio.h#2 integrate
.. //depot/projects/usb/src/sys/sys/mman.h#4 integrate
.. //depot/projects/usb/src/sys/sys/msgbuf.h#3 integrate
.. //depot/projects/usb/src/sys/sys/proc.h#23 integrate
.. //depot/projects/usb/src/sys/sys/signalvar.h#7 integrate
.. //depot/projects/usb/src/sys/teken/teken.c#4 integrate
.. //depot/projects/usb/src/sys/teken/teken.h#4 integrate
.. //depot/projects/usb/src/sys/teken/teken_subr.h#4 integrate
.. //depot/projects/usb/src/sys/vm/swap_pager.c#18 integrate
.. //depot/projects/usb/src/sys/vm/vm_fault.c#19 integrate
.. //depot/projects/usb/src/sys/vm/vm_map.c#22 integrate
.. //depot/projects/usb/src/sys/vm/vm_zeroidle.c#10 integrate
.. //depot/projects/usb/src/usr.sbin/usbconfig/dump.c#16 integrate
.. //depot/projects/usb/src/usr.sbin/usbconfig/usbconfig.8#7 integrate
Differences ...
==== //depot/projects/usb/src/lib/libusb/libusb.h#11 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb.h,v 1.9 2009/07/30 00:11:41 alfred Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb.h,v 1.10 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2009 Sylvestre Gallon. All rights reserved.
*
==== //depot/projects/usb/src/lib/libusb/libusb10.c#15 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb10.c,v 1.3 2009/07/30 00:11:41 alfred Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb10.c,v 1.4 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2009 Sylvestre Gallon. All rights reserved.
* Copyright (c) 2009 Hans Petter Selasky. All rights reserved.
==== //depot/projects/usb/src/lib/libusb/libusb10_desc.c#11 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb10_desc.c,v 1.3 2009/07/30 00:11:41 alfred Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb10_desc.c,v 1.4 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2009 Sylvestre Gallon. All rights reserved.
*
==== //depot/projects/usb/src/lib/libusb/libusb10_io.c#11 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb10_io.c,v 1.3 2009/07/30 00:11:41 alfred Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb10_io.c,v 1.4 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2009 Sylvestre Gallon. All rights reserved.
*
==== //depot/projects/usb/src/lib/libusb/libusb20.c#9 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb20.c,v 1.4 2009/06/12 16:07:06 thompsa Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb20.c,v 1.5 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
*
==== //depot/projects/usb/src/lib/libusb/libusb20_desc.c#5 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb20_desc.c,v 1.1 2009/03/09 17:09:46 thompsa Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb20_desc.c,v 1.2 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
*
==== //depot/projects/usb/src/lib/libusb/libusb20_ugen20.c#11 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/lib/libusb/libusb20_ugen20.c,v 1.5 2009/10/22 21:01:41 thompsa Exp $ */
+/* $FreeBSD: src/lib/libusb/libusb20_ugen20.c,v 1.6 2009/11/08 20:03:52 thompsa Exp $ */
/*-
* Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
*
==== //depot/projects/usb/src/sys/amd64/acpica/acpi_wakeup.c#7 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.27 2009/10/08 17:41:53 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.28 2009/11/04 22:39:18 jkim Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -65,9 +65,9 @@
extern int acpi_reset_video;
#ifdef SMP
-extern struct xpcb *stopxpcbs;
+extern struct xpcb **stopxpcbs;
#else
-static struct xpcb *stopxpcbs;
+static struct xpcb **stopxpcbs;
#endif
int acpi_restorecpu(struct xpcb *, vm_offset_t);
@@ -104,10 +104,10 @@
int apic_id = cpu_apic_ids[cpu];
int ms;
- WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, &stopxpcbs[cpu]);
- WAKECODE_FIXUP(wakeup_gdt, uint16_t, stopxpcbs[cpu].xpcb_gdt.rd_limit);
+ WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, stopxpcbs[cpu]);
+ WAKECODE_FIXUP(wakeup_gdt, uint16_t, stopxpcbs[cpu]->xpcb_gdt.rd_limit);
WAKECODE_FIXUP(wakeup_gdt + 2, uint64_t,
- stopxpcbs[cpu].xpcb_gdt.rd_base);
+ stopxpcbs[cpu]->xpcb_gdt.rd_base);
WAKECODE_FIXUP(wakeup_cpu, int, cpu);
/* do an INIT IPI: assert RESET */
@@ -245,8 +245,8 @@
cr3 = rcr3();
load_cr3(KPML4phys);
- stopfpu = &stopxpcbs[0].xpcb_pcb.pcb_save;
- if (acpi_savecpu(&stopxpcbs[0])) {
+ stopfpu = &stopxpcbs[0]->xpcb_pcb.pcb_save;
+ if (acpi_savecpu(stopxpcbs[0])) {
fpugetregs(curthread, stopfpu);
#ifdef SMP
@@ -261,11 +261,11 @@
WAKECODE_FIXUP(resume_beep, uint8_t, (acpi_resume_beep != 0));
WAKECODE_FIXUP(reset_video, uint8_t, (acpi_reset_video != 0));
- WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, &stopxpcbs[0]);
+ WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, stopxpcbs[0]);
WAKECODE_FIXUP(wakeup_gdt, uint16_t,
- stopxpcbs[0].xpcb_gdt.rd_limit);
+ stopxpcbs[0]->xpcb_gdt.rd_limit);
WAKECODE_FIXUP(wakeup_gdt + 2, uint64_t,
- stopxpcbs[0].xpcb_gdt.rd_base);
+ stopxpcbs[0]->xpcb_gdt.rd_base);
WAKECODE_FIXUP(wakeup_cpu, int, 0);
/* Call ACPICA to enter the desired sleep state */
@@ -320,6 +320,7 @@
acpi_alloc_wakeup_handler(void)
{
void *wakeaddr;
+ int i;
/*
* Specify the region for our wakeup code. We want it in the low 1 MB
@@ -334,12 +335,9 @@
printf("%s: can't alloc wake memory\n", __func__);
return (NULL);
}
- stopxpcbs = malloc(mp_ncpus * sizeof(*stopxpcbs), M_DEVBUF, M_NOWAIT);
- if (stopxpcbs == NULL) {
- contigfree(wakeaddr, 4 * PAGE_SIZE, M_DEVBUF);
- printf("%s: can't alloc CPU state memory\n", __func__);
- return (NULL);
- }
+ stopxpcbs = malloc(mp_ncpus * sizeof(*stopxpcbs), M_DEVBUF, M_WAITOK);
+ for (i = 0; i < mp_ncpus; i++)
+ stopxpcbs[i] = malloc(sizeof(**stopxpcbs), M_DEVBUF, M_WAITOK);
return (wakeaddr);
}
==== //depot/projects/usb/src/sys/amd64/amd64/identcpu.c#18 (text+ko) ====
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.175 2009/09/10 17:27:36 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.177 2009/11/05 14:34:38 attilio Exp $");
#include "opt_cpu.h"
@@ -607,6 +607,21 @@
printf(", %d lines/tag", (regs[2] >> 8) & 0x0f);
print_AMD_l2_assoc((regs[2] >> 12) & 0x0f);
}
+
+ /*
+ * Opteron Rev E shows a bug as in very rare occasions a read memory
+ * barrier is not performed as expected if it is followed by a
+ * non-atomic read-modify-write instruction.
+ * As long as that bug pops up very rarely (intensive machine usage
+ * on other operating systems generally generates one unexplainable
+ * crash any 2 months) and as long as a model specific fix would be
+ * impratical at this stage, print out a warning string if the broken
+ * model and family are identified.
+ */
+ if (CPUID_TO_FAMILY(cpu_id) == 0xf && CPUID_TO_MODEL(cpu_id) >= 0x20 &&
+ CPUID_TO_MODEL(cpu_id) <= 0x3f)
+ printf("WARNING: This architecture revision has known SMP "
+ "hardware bugs which may cause random instability\n");
}
static void
==== //depot/projects/usb/src/sys/amd64/amd64/initcpu.c#9 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.56 2009/10/01 12:52:48 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.57 2009/11/09 02:54:16 kuriyama Exp $");
#include "opt_cpu.h"
@@ -47,6 +47,13 @@
static int hw_instruction_sse;
SYSCTL_INT(_hw, OID_AUTO, instruction_sse, CTLFLAG_RD,
&hw_instruction_sse, 0, "SIMD/MMX2 instructions available in CPU");
+/*
+ * -1: automatic (default)
+ * 0: keep enable CLFLUSH
+ * 1: force disable CLFLUSH
+ */
+static int hw_clflush_disable = -1;
+TUNABLE_INT("hw.clflush_disable", &hw_clflush_disable);
int cpu; /* Are we 386, 386sx, 486, etc? */
u_int cpu_feature; /* Feature flags */
@@ -169,6 +176,16 @@
* XXXKIB: (temporary) hack to work around traps generated when
* CLFLUSHing APIC registers window.
*/
- if (cpu_vendor_id == CPU_VENDOR_INTEL && !(cpu_feature & CPUID_SS))
+ TUNABLE_INT_FETCH("hw.clflush_disable", &hw_clflush_disable);
+ if (cpu_vendor_id == CPU_VENDOR_INTEL && !(cpu_feature & CPUID_SS) &&
+ hw_clflush_disable == -1)
+ cpu_feature &= ~CPUID_CLFSH;
+ /*
+ * Allow to disable CLFLUSH feature manually by
+ * hw.clflush_disable tunable. This may help Xen guest on some AMD
+ * CPUs.
+ */
+ if (hw_clflush_disable == 1) {
cpu_feature &= ~CPUID_CLFSH;
+ }
}
==== //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#25 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.310 2009/08/13 17:09:45 attilio Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.311 2009/11/04 22:39:18 jkim Exp $");
#include "opt_cpu.h"
#include "opt_kstack_pages.h"
@@ -105,7 +105,7 @@
extern pt_entry_t *SMPpt;
struct pcb stoppcbs[MAXCPU];
-struct xpcb *stopxpcbs = NULL;
+struct xpcb **stopxpcbs = NULL;
/* Variables needed for SMP tlb shootdown. */
vm_offset_t smp_tlb_addr1;
@@ -1256,8 +1256,8 @@
rf = intr_disable();
cr3 = rcr3();
- stopfpu = &stopxpcbs[cpu].xpcb_pcb.pcb_save;
- if (savectx2(&stopxpcbs[cpu])) {
+ stopfpu = &stopxpcbs[cpu]->xpcb_pcb.pcb_save;
+ if (savectx2(stopxpcbs[cpu])) {
fpugetregs(curthread, stopfpu);
wbinvd();
atomic_set_int(&stopped_cpus, cpumask);
==== //depot/projects/usb/src/sys/amd64/amd64/pmap.c#33 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.675 2009/10/21 18:38:02 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.676 2009/11/11 14:21:31 avg Exp $");
/*
* Manages physical address maps.
@@ -183,7 +183,7 @@
SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, "VM/pmap parameters");
static int pg_ps_enabled = 1;
-SYSCTL_INT(_vm_pmap, OID_AUTO, pg_ps_enabled, CTLFLAG_RD, &pg_ps_enabled, 0,
+SYSCTL_INT(_vm_pmap, OID_AUTO, pg_ps_enabled, CTLFLAG_RDTUN, &pg_ps_enabled, 0,
"Are large page mappings enabled?");
static u_int64_t KPTphys; /* phys addr of kernel level 1 */
==== //depot/projects/usb/src/sys/amd64/amd64/trap.c#19 (text+ko) ====
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.336 2009/09/24 14:26:42 emaste Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.337 2009/11/10 11:43:07 kib Exp $");
/*
* AMD64 Trap and System call handling
@@ -1007,39 +1007,7 @@
#endif
}
- switch (error) {
- case 0:
- frame->tf_rax = td->td_retval[0];
- frame->tf_rdx = td->td_retval[1];
- frame->tf_rflags &= ~PSL_C;
- break;
-
- case ERESTART:
- /*
- * Reconstruct pc, we know that 'syscall' is 2 bytes.
- * We have to do a full context restore so that %r10
- * (which was holding the value of %rcx) is restored for
- * the next iteration.
- */
- frame->tf_rip -= frame->tf_err;
- frame->tf_r10 = frame->tf_rcx;
- td->td_pcb->pcb_flags |= PCB_FULLCTX;
- break;
-
- case EJUSTRETURN:
- break;
-
- default:
- if (p->p_sysent->sv_errsize) {
- if (error >= p->p_sysent->sv_errsize)
- error = -1; /* XXX */
- else
- error = p->p_sysent->sv_errtbl[error];
- }
- frame->tf_rax = error;
- frame->tf_rflags |= PSL_C;
- break;
- }
+ cpu_set_syscall_retval(td, error);
/*
* Traced syscall.
==== //depot/projects/usb/src/sys/amd64/amd64/vm_machdep.c#14 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.264 2009/07/09 09:34:11 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.265 2009/11/10 11:43:07 kib Exp $");
#include "opt_isa.h"
#include "opt_cpu.h"
@@ -317,6 +317,45 @@
cpu_thread_clean(td);
}
+void
+cpu_set_syscall_retval(struct thread *td, int error)
+{
+
+ switch (error) {
+ case 0:
+ td->td_frame->tf_rax = td->td_retval[0];
+ td->td_frame->tf_rdx = td->td_retval[1];
+ td->td_frame->tf_rflags &= ~PSL_C;
+ break;
+
+ case ERESTART:
+ /*
+ * Reconstruct pc, we know that 'syscall' is 2 bytes.
+ * We have to do a full context restore so that %r10
+ * (which was holding the value of %rcx) is restored
+ * for the next iteration.
+ */
+ td->td_frame->tf_rip -= td->td_frame->tf_err;
+ td->td_frame->tf_r10 = td->td_frame->tf_rcx;
+ td->td_pcb->pcb_flags |= PCB_FULLCTX;
+ break;
+
+ case EJUSTRETURN:
+ break;
+
+ default:
+ if (td->td_proc->p_sysent->sv_errsize) {
+ if (error >= td->td_proc->p_sysent->sv_errsize)
+ error = -1; /* XXX */
+ else
+ error = td->td_proc->p_sysent->sv_errtbl[error];
+ }
+ td->td_frame->tf_rax = error;
+ td->td_frame->tf_rflags |= PSL_C;
+ break;
+ }
+}
+
/*
* Initialize machine state (pcb and trap frame) for a new thread about to
* upcall. Put enough state in the new thread's PCB to get it to go back
==== //depot/projects/usb/src/sys/amd64/isa/isa_dma.c#2 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/isa/isa_dma.c,v 1.22 2005/05/14 10:14:56 nyan Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/isa/isa_dma.c,v 1.23 2009/11/09 20:29:10 rdivacky Exp $");
/*
* code to manage AT bus
@@ -71,6 +71,8 @@
static u_int8_t dma_busy = 0; /* Used in isa_dmastart() */
static u_int8_t dma_inuse = 0; /* User for acquire/release */
static u_int8_t dma_auto_mode = 0;
+static struct mtx isa_dma_lock;
+MTX_SYSINIT(isa_dma_lock, &isa_dma_lock, "isa DMA lock", MTX_DEF);
#define VALID_DMA_MASK (7)
@@ -84,39 +86,56 @@
isa_dma_init(int chan, u_int bouncebufsize, int flag)
{
void *buf;
-
- /*
- * If a DMA channel is shared, both drivers have to call isa_dma_init
- * since they don't know that the other driver will do it.
- * Just return if we're already set up good.
- * XXX: this only works if they agree on the bouncebuf size. This
- * XXX: is typically the case since they are multiple instances of
- * XXX: the same driver.
- */
- if (dma_bouncebuf[chan] != NULL)
- return (0);
+ int contig;
#ifdef DIAGNOSTIC
if (chan & ~VALID_DMA_MASK)
panic("isa_dma_init: channel out of range");
#endif
- dma_bouncebufsize[chan] = bouncebufsize;
/* Try malloc() first. It works better if it works. */
buf = malloc(bouncebufsize, M_DEVBUF, flag);
if (buf != NULL) {
- if (isa_dmarangecheck(buf, bouncebufsize, chan) == 0) {
- dma_bouncebuf[chan] = buf;
- return (0);
+ if (isa_dmarangecheck(buf, bouncebufsize, chan) != 0) {
+ free(buf, M_DEVBUF);
+ buf = NULL;
}
- free(buf, M_DEVBUF);
+ contig = 0;
}
- buf = contigmalloc(bouncebufsize, M_DEVBUF, flag, 0ul, 0xfffffful,
+
+ if (buf == NULL) {
+ buf = contigmalloc(bouncebufsize, M_DEVBUF, flag, 0ul, 0xfffffful,
1ul, chan & 4 ? 0x20000ul : 0x10000ul);
+ contig = 1;
+ }
+
if (buf == NULL)
return (ENOMEM);
+
+ mtx_lock(&isa_dma_lock);
+ /*
+ * If a DMA channel is shared, both drivers have to call isa_dma_init
+ * since they don't know that the other driver will do it.
+ * Just return if we're already set up good.
+ * XXX: this only works if they agree on the bouncebuf size. This
+ * XXX: is typically the case since they are multiple instances of
+ * XXX: the same driver.
+ */
+ if (dma_bouncebuf[chan] != NULL) {
+ if (contig)
+ contigfree(buf, bouncebufsize, M_DEVBUF);
+ else
+ free(buf, M_DEVBUF);
+ mtx_unlock(&isa_dma_lock);
+ return (0);
+ }
+
+ dma_bouncebufsize[chan] = bouncebufsize;
dma_bouncebuf[chan] = buf;
+
+ mtx_unlock(&isa_dma_lock);
+
return (0);
}
@@ -133,12 +152,15 @@
panic("isa_dma_acquire: channel out of range");
#endif
+ mtx_lock(&isa_dma_lock);
if (dma_inuse & (1 << chan)) {
printf("isa_dma_acquire: channel %d already in use\n", chan);
+ mtx_unlock(&isa_dma_lock);
return (EBUSY);
}
dma_inuse |= (1 << chan);
dma_auto_mode &= ~(1 << chan);
+ mtx_unlock(&isa_dma_lock);
return (0);
}
@@ -155,8 +177,11 @@
if (chan & ~VALID_DMA_MASK)
panic("isa_dma_release: channel out of range");
+ mtx_lock(&isa_dma_lock);
if ((dma_inuse & (1 << chan)) == 0)
printf("isa_dma_release: channel %d not in use\n", chan);
+#else
+ mtx_lock(&isa_dma_lock);
#endif
if (dma_busy & (1 << chan)) {
@@ -171,6 +196,8 @@
dma_inuse &= ~(1 << chan);
dma_auto_mode &= ~(1 << chan);
+
+ mtx_unlock(&isa_dma_lock);
}
/*
@@ -186,6 +213,7 @@
panic("isa_dmacascade: channel out of range");
#endif
+ mtx_lock(&isa_dma_lock);
/* set dma channel mode, and set dma channel mode */
if ((chan & 4) == 0) {
outb(DMA1_MODE, DMA37MD_CASCADE | chan);
@@ -194,6 +222,7 @@
outb(DMA2_MODE, DMA37MD_CASCADE | (chan & 3));
outb(DMA2_SMSK, chan & 3);
}
+ mtx_unlock(&isa_dma_lock);
}
/*
@@ -206,8 +235,11 @@
vm_paddr_t phys;
int waport;
caddr_t newaddr;
+ int dma_range_checked;
- GIANT_REQUIRED;
+ /* translate to physical */
+ phys = pmap_extract(kernel_pmap, (vm_offset_t)addr);
+ dma_range_checked = isa_dmarangecheck(addr, nbytes, chan);
#ifdef DIAGNOSTIC
if (chan & ~VALID_DMA_MASK)
@@ -217,8 +249,11 @@
|| (chan >= 4 && (nbytes > (1<<17) || (uintptr_t)addr & 1)))
panic("isa_dmastart: impossible request");
+ mtx_lock(&isa_dma_lock);
if ((dma_inuse & (1 << chan)) == 0)
printf("isa_dmastart: channel %d not acquired\n", chan);
+#else
+ mtx_lock(&isa_dma_lock);
#endif
#if 0
@@ -233,7 +268,7 @@
dma_busy |= (1 << chan);
- if (isa_dmarangecheck(addr, nbytes, chan)) {
+ if (dma_range_checked) {
if (dma_bouncebuf[chan] == NULL
|| dma_bouncebufsize[chan] < nbytes)
panic("isa_dmastart: bad bounce buffer");
@@ -246,9 +281,6 @@
addr = newaddr;
}
- /* translate to physical */
- phys = pmap_extract(kernel_pmap, (vm_offset_t)addr);
-
if (flags & ISADMA_RAW) {
dma_auto_mode |= (1 << chan);
} else {
@@ -323,6 +355,7 @@
/* unmask channel */
outb(DMA2_SMSK, chan & 3);
}
+ mtx_unlock(&isa_dma_lock);
}
void
@@ -336,6 +369,7 @@
printf("isa_dmadone: channel %d not acquired\n", chan);
#endif
+ mtx_lock(&isa_dma_lock);
if (((dma_busy & (1 << chan)) == 0) &&
(dma_auto_mode & (1 << chan)) == 0 )
printf("isa_dmadone: channel %d not busy\n", chan);
@@ -351,6 +385,7 @@
dma_bounced &= ~(1 << chan);
}
dma_busy &= ~(1 << chan);
+ mtx_unlock(&isa_dma_lock);
}
/*
@@ -367,8 +402,6 @@
vm_offset_t endva;
u_int dma_pgmsk = (chan & 4) ? ~(128*1024-1) : ~(64*1024-1);
- GIANT_REQUIRED;
-
endva = (vm_offset_t)round_page((vm_offset_t)va + length);
for (; va < (caddr_t) endva ; va += PAGE_SIZE) {
phys = trunc_page(pmap_extract(kernel_pmap, (vm_offset_t)va));
@@ -420,13 +453,15 @@
* or -1 if the channel requested is not active.
*
*/
-int
-isa_dmastatus(int chan)
+static int
+isa_dmastatus_locked(int chan)
{
u_long cnt = 0;
int ffport, waport;
u_long low1, high1, low2, high2;
+ mtx_assert(&isa_dma_lock, MA_OWNED);
+
/* channel active? */
if ((dma_inuse & (1 << chan)) == 0) {
printf("isa_dmastatus: channel %d not active\n", chan);
@@ -472,6 +507,18 @@
return(cnt);
}
+int
+isa_dmastatus(int chan)
+{
+ int status;
+
+ mtx_lock(&isa_dma_lock);
+ status = isa_dmastatus_locked(chan);
+ mtx_unlock(&isa_dma_lock);
+
+ return (status);
+}
+
/*
* Reached terminal count yet ?
*/
@@ -491,12 +538,16 @@
int
isa_dmastop(int chan)
{
+ int status;
+
+ mtx_lock(&isa_dma_lock);
if ((dma_inuse & (1 << chan)) == 0)
printf("isa_dmastop: channel %d not acquired\n", chan);
if (((dma_busy & (1 << chan)) == 0) &&
((dma_auto_mode & (1 << chan)) == 0)) {
printf("chan %d not busy\n", chan);
+ mtx_unlock(&isa_dma_lock);
return -2 ;
}
@@ -505,7 +556,12 @@
} else {
outb(DMA2_SMSK, (chan & 3) | 4 /* disable mask */);
}
- return(isa_dmastatus(chan));
+
+ status = isa_dmastatus_locked(chan);
+
+ mtx_unlock(&isa_dma_lock);
+
+ return (status);
}
/*
==== //depot/projects/usb/src/sys/arm/arm/db_trace.c#4 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.14 2007/12/02 20:40:31 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.16 2009/11/05 06:27:46 marcel Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -194,18 +194,18 @@
int
db_trace_thread(struct thread *thr, int count)
{
- uint32_t addr;
+ struct pcb *ctx;
- if (thr == curthread)
- addr = (uint32_t)__builtin_frame_address(0);
- else
- addr = thr->td_pcb->un_32.pcb32_r11;
- db_stack_trace_cmd(addr, -1);
+ ctx = kdb_thr_ctx(thr);
+ db_stack_trace_cmd(ctx->un_32.pcb32_r11, -1);
return (0);
}
void
db_trace_self(void)
{
- db_trace_thread(curthread, -1);
+ db_addr_t addr;
+
+ addr = (db_addr_t)__builtin_frame_address(1);
+ db_stack_trace_cmd(addr, -1);
}
==== //depot/projects/usb/src/sys/arm/arm/gdb_machdep.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/gdb_machdep.c,v 1.1 2006/07/14 00:50:51 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/gdb_machdep.c,v 1.2 2009/11/05 06:31:50 marcel Exp $");
#include <sys/param.h>
@@ -53,12 +53,15 @@
*regsz = gdb_cpu_regsz(regnum);
- if (kdb_thread == curthread) {
- if (regnum < 16)
- return (&kdb_frame->tf_r0 + 4 * regnum);
+ if (kdb_thread == curthread) {
+ if (regnum < 15)
+ return (&kdb_frame->tf_r0 + regnum);
+ if (regnum == 15)
+ return (&kdb_frame->tf_pc);
if (regnum == 25)
return (&kdb_frame->tf_spsr);
}
+
switch (regnum) {
case 8: return (&kdb_thrctx->un_32.pcb32_r8);
case 9: return (&kdb_thrctx->un_32.pcb32_r9);
@@ -78,6 +81,7 @@
return (&kdb_thrctx->un_32.pcb32_pc);
}
}
+
return (NULL);
}
==== //depot/projects/usb/src/sys/arm/arm/machdep.c#11 (text+ko) ====
@@ -46,7 +46,7 @@
#include "opt_ddb.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/machdep.c,v 1.34 2009/10/27 10:47:58 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/machdep.c,v 1.35 2009/11/04 04:41:03 alc Exp $");
#include <sys/param.h>
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list