PERFORCE change 110542 for review
Alex Lyashkov
als at FreeBSD.org
Sun Nov 26 03:42:29 PST 2006
http://perforce.freebsd.org/chv.cgi?CH=110542
Change 110542 by als at als_head on 2006/11/26 11:41:38
update to last HEAD
Affected files ...
.. //depot/projects/jail2/sys/Makefile#3 integrate
.. //depot/projects/jail2/sys/amd64/amd64/db_disasm.c#2 integrate
.. //depot/projects/jail2/sys/amd64/amd64/db_trace.c#4 integrate
.. //depot/projects/jail2/sys/amd64/amd64/intr_machdep.c#4 integrate
.. //depot/projects/jail2/sys/amd64/amd64/io_apic.c#3 integrate
.. //depot/projects/jail2/sys/amd64/amd64/local_apic.c#6 integrate
.. //depot/projects/jail2/sys/amd64/amd64/machdep.c#8 integrate
.. //depot/projects/jail2/sys/amd64/amd64/mptable_pci.c#2 integrate
.. //depot/projects/jail2/sys/amd64/amd64/msi.c#1 branch
.. //depot/projects/jail2/sys/amd64/amd64/nexus.c#3 integrate
.. //depot/projects/jail2/sys/amd64/amd64/pmap.c#5 integrate
.. //depot/projects/jail2/sys/amd64/conf/GENERIC#6 integrate
.. //depot/projects/jail2/sys/amd64/include/apicvar.h#3 integrate
.. //depot/projects/jail2/sys/amd64/include/intr_machdep.h#3 integrate
.. //depot/projects/jail2/sys/amd64/include/pmap.h#3 integrate
.. //depot/projects/jail2/sys/amd64/include/reg.h#2 integrate
.. //depot/projects/jail2/sys/amd64/linux32/linux32_proto.h#6 integrate
.. //depot/projects/jail2/sys/amd64/linux32/linux32_syscall.h#6 integrate
.. //depot/projects/jail2/sys/amd64/linux32/linux32_sysent.c#6 integrate
.. //depot/projects/jail2/sys/amd64/pci/pci_bus.c#2 integrate
.. //depot/projects/jail2/sys/arm/arm/cpufunc.c#5 integrate
.. //depot/projects/jail2/sys/arm/arm/identcpu.c#4 integrate
.. //depot/projects/jail2/sys/arm/arm/nexus.c#3 integrate
.. //depot/projects/jail2/sys/arm/arm/nexus_io.c#3 integrate
.. //depot/projects/jail2/sys/arm/arm/pmap.c#5 integrate
.. //depot/projects/jail2/sys/arm/at91/at91.c#3 integrate
.. //depot/projects/jail2/sys/arm/at91/at91_twi.c#5 integrate
.. //depot/projects/jail2/sys/arm/at91/kb920x_machdep.c#6 integrate
.. //depot/projects/jail2/sys/arm/conf/AVILA#1 branch
.. //depot/projects/jail2/sys/arm/include/bus.h#2 integrate
.. //depot/projects/jail2/sys/arm/include/pmap.h#4 integrate
.. //depot/projects/jail2/sys/arm/sa11x0/assabet_machdep.c#4 integrate
.. //depot/projects/jail2/sys/arm/sa11x0/sa11x0_io.c#3 integrate
.. //depot/projects/jail2/sys/arm/xscale/i80321/ep80219_machdep.c#3 integrate
.. //depot/projects/jail2/sys/arm/xscale/i80321/i80321_space.c#2 integrate
.. //depot/projects/jail2/sys/arm/xscale/i80321/iq31244_machdep.c#5 integrate
.. //depot/projects/jail2/sys/arm/xscale/i80321/obio_space.c#2 integrate
.. //depot/projects/jail2/sys/arm/xscale/ixp425/avila_ata.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/avila_led.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/avila_machdep.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/files.avila#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/files.ixp425#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/if_npe.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/if_npereg.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixdp425_pci.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixdp425reg.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_a4x_io.S#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_a4x_space.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_iic.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_intr.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_mem.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_npe.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_npereg.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_npevar.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_pci.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_pci_asm.S#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_pci_space.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_qmgr.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_qmgr.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_space.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_timer.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425_wdog.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425reg.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/ixp425var.h#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/std.avila#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/std.ixp425#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/uart_bus_ixp425.c#1 branch
.. //depot/projects/jail2/sys/arm/xscale/ixp425/uart_cpu_ixp425.c#1 branch
.. //depot/projects/jail2/sys/boot/arm/at91/Makefile#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/Makefile.inc#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot0/Makefile#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot0/arm_init.s#2 delete
.. //depot/projects/jail2/sys/boot/arm/at91/boot0iic/Makefile#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot0iic/main.c#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot0spi/Makefile#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot0spi/main.c#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot2/Makefile#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot2/board.h#1 branch
.. //depot/projects/jail2/sys/boot/arm/at91/boot2/boot2.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/boot2/kb920x_board.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/bootiic/Makefile#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/bootiic/arm_init.S#3 delete
.. //depot/projects/jail2/sys/boot/arm/at91/bootspi/Makefile#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/bootspi/arm_init.S#3 delete
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/Makefile#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/arm_init.S#1 branch
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/emac.c#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/emac.h#4 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/emac_init.c#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/mci_device.c#3 delete
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/mci_device.h#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/memcmp.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/memcpy.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/memset.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/sd-card.c#3 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/strcmp.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/strcpy.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/strcvt.c#2 integrate
.. //depot/projects/jail2/sys/boot/arm/at91/libat91/strlen.c#2 integrate
.. //depot/projects/jail2/sys/boot/i386/loader/main.c#4 integrate
.. //depot/projects/jail2/sys/boot/ia64/common/copy.c#2 integrate
.. //depot/projects/jail2/sys/boot/ia64/common/libia64.h#2 integrate
.. //depot/projects/jail2/sys/boot/sparc64/loader/hcall.S#2 delete
.. //depot/projects/jail2/sys/coda/coda_vnops.c#2 integrate
.. //depot/projects/jail2/sys/coda/coda_vnops.h#2 integrate
.. //depot/projects/jail2/sys/compat/freebsd32/freebsd32_proto.h#9 integrate
.. //depot/projects/jail2/sys/compat/freebsd32/freebsd32_syscall.h#9 integrate
.. //depot/projects/jail2/sys/compat/freebsd32/freebsd32_syscalls.c#9 integrate
.. //depot/projects/jail2/sys/compat/freebsd32/freebsd32_sysent.c#9 integrate
.. //depot/projects/jail2/sys/compat/linux/linux_emul.c#4 integrate
.. //depot/projects/jail2/sys/compat/linux/linux_getcwd.c#3 integrate
.. //depot/projects/jail2/sys/compat/linux/linux_misc.c#9 integrate
.. //depot/projects/jail2/sys/compat/svr4/svr4_proto.h#4 integrate
.. //depot/projects/jail2/sys/compat/svr4/svr4_syscall.h#4 integrate
.. //depot/projects/jail2/sys/compat/svr4/svr4_syscallnames.c#4 integrate
.. //depot/projects/jail2/sys/compat/svr4/svr4_sysent.c#4 integrate
.. //depot/projects/jail2/sys/conf/NOTES#9 integrate
.. //depot/projects/jail2/sys/conf/files#9 integrate
.. //depot/projects/jail2/sys/conf/files.amd64#7 integrate
.. //depot/projects/jail2/sys/conf/files.i386#6 integrate
.. //depot/projects/jail2/sys/conf/files.pc98#4 integrate
.. //depot/projects/jail2/sys/conf/files.sun4v#4 integrate
.. //depot/projects/jail2/sys/conf/options#8 integrate
.. //depot/projects/jail2/sys/conf/options.arm#4 integrate
.. //depot/projects/jail2/sys/ddb/db_watch.c#2 integrate
.. //depot/projects/jail2/sys/dev/acpica/acpi_pci_link.c#3 integrate
.. //depot/projects/jail2/sys/dev/acpica/acpi_pcib_acpi.c#2 integrate
.. //depot/projects/jail2/sys/dev/acpica/acpi_pcib_pci.c#2 integrate
.. //depot/projects/jail2/sys/dev/ata/ata-all.c#3 integrate
.. //depot/projects/jail2/sys/dev/ath/if_ath.c#5 integrate
.. //depot/projects/jail2/sys/dev/bce/if_bce.c#6 integrate
.. //depot/projects/jail2/sys/dev/bce/if_bcereg.h#3 integrate
.. //depot/projects/jail2/sys/dev/bfe/if_bfe.c#2 integrate
.. //depot/projects/jail2/sys/dev/em/if_em.c#9 integrate
.. //depot/projects/jail2/sys/dev/em/if_em.h#6 integrate
.. //depot/projects/jail2/sys/dev/fxp/if_fxp.c#4 integrate
.. //depot/projects/jail2/sys/dev/iicbus/ad7418.c#1 branch
.. //depot/projects/jail2/sys/dev/iicbus/ds1672.c#1 branch
.. //depot/projects/jail2/sys/dev/iicbus/iic.c#4 integrate
.. //depot/projects/jail2/sys/dev/iicbus/iicbb.c#3 integrate
.. //depot/projects/jail2/sys/dev/iicbus/iicbus.c#3 integrate
.. //depot/projects/jail2/sys/dev/isp/isp.c#5 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_freebsd.c#6 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_freebsd.h#6 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_library.c#4 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_library.h#3 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_pci.c#6 integrate
.. //depot/projects/jail2/sys/dev/isp/isp_stds.h#2 integrate
.. //depot/projects/jail2/sys/dev/isp/ispmbox.h#4 integrate
.. //depot/projects/jail2/sys/dev/isp/ispvar.h#4 integrate
.. //depot/projects/jail2/sys/dev/mfi/mfi.c#8 integrate
.. //depot/projects/jail2/sys/dev/mfi/mfi_ioctl.h#2 integrate
.. //depot/projects/jail2/sys/dev/mfi/mfi_linux.c#2 integrate
.. //depot/projects/jail2/sys/dev/mpt/mpt.c#5 integrate
.. //depot/projects/jail2/sys/dev/mpt/mpt.h#5 integrate
.. //depot/projects/jail2/sys/dev/mpt/mpt_cam.c#7 integrate
.. //depot/projects/jail2/sys/dev/mpt/mpt_pci.c#5 integrate
.. //depot/projects/jail2/sys/dev/mxge/if_mxge.c#5 integrate
.. //depot/projects/jail2/sys/dev/mxge/if_mxge_var.h#3 integrate
.. //depot/projects/jail2/sys/dev/nfe/if_nfe.c#5 integrate
.. //depot/projects/jail2/sys/dev/pci/pci.c#6 integrate
.. //depot/projects/jail2/sys/dev/pci/pci_if.m#3 integrate
.. //depot/projects/jail2/sys/dev/pci/pci_pci.c#3 integrate
.. //depot/projects/jail2/sys/dev/pci/pci_private.h#4 integrate
.. //depot/projects/jail2/sys/dev/pci/pcib_if.m#3 integrate
.. //depot/projects/jail2/sys/dev/pci/pcib_private.h#2 integrate
.. //depot/projects/jail2/sys/dev/pci/pcireg.h#2 integrate
.. //depot/projects/jail2/sys/dev/pci/pcivar.h#4 integrate
.. //depot/projects/jail2/sys/dev/re/if_re.c#5 integrate
.. //depot/projects/jail2/sys/dev/rp/rp.c#2 integrate
.. //depot/projects/jail2/sys/dev/rp/rpreg.h#2 integrate
.. //depot/projects/jail2/sys/dev/rp/rpvar.h#2 integrate
.. //depot/projects/jail2/sys/dev/syscons/syscons.c#5 integrate
.. //depot/projects/jail2/sys/dev/usb/FILES#2 integrate
.. //depot/projects/jail2/sys/dev/usb/if_ural.c#5 integrate
.. //depot/projects/jail2/sys/dev/usb/uark.c#1 branch
.. //depot/projects/jail2/sys/dev/usb/usb_quirks.c#4 integrate
.. //depot/projects/jail2/sys/dev/usb/usbdevs#5 integrate
.. //depot/projects/jail2/sys/dev/usb/usbdi.c#4 integrate
.. //depot/projects/jail2/sys/fs/ntfs/ntfs_subr.c#2 integrate
.. //depot/projects/jail2/sys/fs/ntfs/ntfs_subr.h#2 integrate
.. //depot/projects/jail2/sys/fs/ntfs/ntfs_vnops.c#3 integrate
.. //depot/projects/jail2/sys/fs/nullfs/null_vnops.c#2 integrate
.. //depot/projects/jail2/sys/fs/procfs/procfs_ioctl.c#4 integrate
.. //depot/projects/jail2/sys/gnu/fs/ext2fs/ext2_vfsops.c#4 integrate
.. //depot/projects/jail2/sys/i386/i386/db_trace.c#6 integrate
.. //depot/projects/jail2/sys/i386/i386/intr_machdep.c#4 integrate
.. //depot/projects/jail2/sys/i386/i386/io_apic.c#3 integrate
.. //depot/projects/jail2/sys/i386/i386/local_apic.c#6 integrate
.. //depot/projects/jail2/sys/i386/i386/locore.s#2 integrate
.. //depot/projects/jail2/sys/i386/i386/machdep.c#7 integrate
.. //depot/projects/jail2/sys/i386/i386/mptable_pci.c#2 integrate
.. //depot/projects/jail2/sys/i386/i386/msi.c#1 branch
.. //depot/projects/jail2/sys/i386/i386/nexus.c#3 integrate
.. //depot/projects/jail2/sys/i386/i386/pmap.c#6 integrate
.. //depot/projects/jail2/sys/i386/ibcs2/ibcs2_proto.h#3 integrate
.. //depot/projects/jail2/sys/i386/ibcs2/ibcs2_xenix.h#3 integrate
.. //depot/projects/jail2/sys/i386/include/apicvar.h#3 integrate
.. //depot/projects/jail2/sys/i386/include/intr_machdep.h#3 integrate
.. //depot/projects/jail2/sys/i386/include/pmap.h#3 integrate
.. //depot/projects/jail2/sys/i386/include/reg.h#2 integrate
.. //depot/projects/jail2/sys/i386/linux/linux_proto.h#7 integrate
.. //depot/projects/jail2/sys/i386/pci/pci_bus.c#2 integrate
.. //depot/projects/jail2/sys/i386/pci/pci_pir.c#2 integrate
.. //depot/projects/jail2/sys/ia64/ia64/genassym.c#3 integrate
.. //depot/projects/jail2/sys/ia64/ia64/interrupt.c#2 integrate
.. //depot/projects/jail2/sys/ia64/ia64/machdep.c#4 integrate
.. //depot/projects/jail2/sys/ia64/ia64/mp_machdep.c#2 integrate
.. //depot/projects/jail2/sys/ia64/ia64/pmap.c#4 integrate
.. //depot/projects/jail2/sys/ia64/include/kdb.h#2 integrate
.. //depot/projects/jail2/sys/ia64/include/pcpu.h#2 integrate
.. //depot/projects/jail2/sys/ia64/include/pmap.h#3 integrate
.. //depot/projects/jail2/sys/kern/Make.tags.inc#2 integrate
.. //depot/projects/jail2/sys/kern/imgact_elf.c#3 integrate
.. //depot/projects/jail2/sys/kern/init_main.c#6 integrate
.. //depot/projects/jail2/sys/kern/init_sysent.c#8 integrate
.. //depot/projects/jail2/sys/kern/kern_condvar.c#2 integrate
.. //depot/projects/jail2/sys/kern/kern_event.c#4 integrate
.. //depot/projects/jail2/sys/kern/kern_idle.c#3 integrate
.. //depot/projects/jail2/sys/kern/kern_lock.c#4 integrate
.. //depot/projects/jail2/sys/kern/kern_mutex.c#3 integrate
.. //depot/projects/jail2/sys/kern/kern_resource.c#7 integrate
.. //depot/projects/jail2/sys/kern/kern_rwlock.c#3 integrate
.. //depot/projects/jail2/sys/kern/kern_sig.c#5 integrate
.. //depot/projects/jail2/sys/kern/kern_sx.c#3 integrate
.. //depot/projects/jail2/sys/kern/kern_synch.c#3 integrate
.. //depot/projects/jail2/sys/kern/kern_thr.c#7 integrate
.. //depot/projects/jail2/sys/kern/kern_time.c#6 integrate
.. //depot/projects/jail2/sys/kern/ksched.c#1 branch
.. //depot/projects/jail2/sys/kern/makesyscalls.sh#3 integrate
.. //depot/projects/jail2/sys/kern/p1003_1b.c#1 branch
.. //depot/projects/jail2/sys/kern/posix4_mib.c#1 branch
.. //depot/projects/jail2/sys/kern/sched_4bsd.c#5 integrate
.. //depot/projects/jail2/sys/kern/subr_lock.c#2 integrate
.. //depot/projects/jail2/sys/kern/subr_sleepqueue.c#2 integrate
.. //depot/projects/jail2/sys/kern/subr_witness.c#5 integrate
.. //depot/projects/jail2/sys/kern/syscalls.c#8 integrate
.. //depot/projects/jail2/sys/kern/systrace_args.c#7 integrate
.. //depot/projects/jail2/sys/kern/sysv_msg.c#6 integrate
.. //depot/projects/jail2/sys/kern/uipc_mqueue.c#4 integrate
.. //depot/projects/jail2/sys/kern/uipc_sem.c#6 integrate
.. //depot/projects/jail2/sys/kern/uipc_socket.c#8 integrate
.. //depot/projects/jail2/sys/kern/uipc_syscalls.c#6 integrate
.. //depot/projects/jail2/sys/kern/vfs_aio.c#6 integrate
.. //depot/projects/jail2/sys/kern/vfs_default.c#3 integrate
.. //depot/projects/jail2/sys/kern/vfs_subr.c#8 integrate
.. //depot/projects/jail2/sys/kern/vfs_vnops.c#5 integrate
.. //depot/projects/jail2/sys/kern/vnode_if.src#2 integrate
.. //depot/projects/jail2/sys/modules/Makefile#6 integrate
.. //depot/projects/jail2/sys/modules/acpi/Makefile#3 integrate
.. //depot/projects/jail2/sys/modules/if_ppp/Makefile#3 integrate
.. //depot/projects/jail2/sys/modules/uark/Makefile#1 branch
.. //depot/projects/jail2/sys/net/bridgestp.c#5 integrate
.. //depot/projects/jail2/sys/net/bridgestp.h#3 integrate
.. //depot/projects/jail2/sys/net/ethernet.h#2 integrate
.. //depot/projects/jail2/sys/net/if_ethersubr.c#5 integrate
.. //depot/projects/jail2/sys/net/if_ppp.c#5 integrate
.. //depot/projects/jail2/sys/net/if_pppvar.h#2 integrate
.. //depot/projects/jail2/sys/net/route.c#2 integrate
.. //depot/projects/jail2/sys/netinet/ip_fw2.c#9 integrate
.. //depot/projects/jail2/sys/netinet/sctp_constants.h#2 integrate
.. //depot/projects/jail2/sys/netinet/sctp_indata.c#3 integrate
.. //depot/projects/jail2/sys/netinet/sctp_input.c#3 integrate
.. //depot/projects/jail2/sys/netinet/sctp_output.c#3 integrate
.. //depot/projects/jail2/sys/netinet/sctp_uio.h#3 integrate
.. //depot/projects/jail2/sys/netinet/sctp_usrreq.c#3 integrate
.. //depot/projects/jail2/sys/netinet/sctputil.c#3 integrate
.. //depot/projects/jail2/sys/netinet/sctputil.h#3 integrate
.. //depot/projects/jail2/sys/netinet/tcp_usrreq.c#6 integrate
.. //depot/projects/jail2/sys/netinet6/nd6.c#6 integrate
.. //depot/projects/jail2/sys/nfsclient/nfs.h#3 integrate
.. //depot/projects/jail2/sys/nfsclient/nfs_node.c#3 integrate
.. //depot/projects/jail2/sys/nfsclient/nfs_socket.c#5 integrate
.. //depot/projects/jail2/sys/nfsclient/nfs_vnops.c#6 integrate
.. //depot/projects/jail2/sys/nfsserver/nfs.h#3 integrate
.. //depot/projects/jail2/sys/nfsserver/nfs_serv.c#3 integrate
.. //depot/projects/jail2/sys/nfsserver/nfs_srvsubs.c#3 integrate
.. //depot/projects/jail2/sys/pc98/pc98/machdep.c#6 integrate
.. //depot/projects/jail2/sys/pci/if_rlreg.h#4 integrate
.. //depot/projects/jail2/sys/posix4/_semaphore.h#2 delete
.. //depot/projects/jail2/sys/posix4/ksched.c#4 delete
.. //depot/projects/jail2/sys/posix4/p1003_1b.c#4 delete
.. //depot/projects/jail2/sys/posix4/posix4.h#3 delete
.. //depot/projects/jail2/sys/posix4/posix4_mib.c#2 delete
.. //depot/projects/jail2/sys/posix4/sched.h#2 delete
.. //depot/projects/jail2/sys/posix4/semaphore.h#2 delete
.. //depot/projects/jail2/sys/powerpc/powerpc/mmu_oea.c#4 integrate
.. //depot/projects/jail2/sys/powerpc/powerpc/pmap_dispatch.c#3 integrate
.. //depot/projects/jail2/sys/security/mac/mac_posix_sem.c#4 integrate
.. //depot/projects/jail2/sys/security/mac_biba/mac_biba.c#4 integrate
.. //depot/projects/jail2/sys/security/mac_mls/mac_mls.c#4 integrate
.. //depot/projects/jail2/sys/security/mac_stub/mac_stub.c#3 integrate
.. //depot/projects/jail2/sys/security/mac_test/mac_test.c#2 integrate
.. //depot/projects/jail2/sys/sparc64/sparc64/autoconf.c#2 integrate
.. //depot/projects/jail2/sys/sparc64/sparc64/genassym.c#3 integrate
.. //depot/projects/jail2/sys/sparc64/sparc64/identcpu.c#2 integrate
.. //depot/projects/jail2/sys/sparc64/sparc64/mem.c#2 integrate
.. //depot/projects/jail2/sys/sparc64/sparc64/pmap.c#4 integrate
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_diff.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_findname.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_findnodeprop.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_fini.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_getbinsize.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_getgen.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_getpropdata.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_getpropstr.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_getpropval.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_init_intern.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_nodecount.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_rootnode.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/mdesc/mdesc_scandag.c#1 branch
.. //depot/projects/jail2/sys/sun4v/cddl/t1_copy.S#1 branch
.. //depot/projects/jail2/sys/sun4v/conf/DEFAULTS#4 integrate
.. //depot/projects/jail2/sys/sun4v/conf/GENERIC#4 integrate
.. //depot/projects/jail2/sys/sun4v/conf/NOTES#3 integrate
.. //depot/projects/jail2/sys/sun4v/include/asm.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/asmacros.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/cache.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/cpufunc.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/hv_api.h#1 branch
.. //depot/projects/jail2/sys/sun4v/include/hypervisor_api.h#3 delete
.. //depot/projects/jail2/sys/sun4v/include/hypervisorvar.h#3 integrate
.. //depot/projects/jail2/sys/sun4v/include/pcpu.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/pmap.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/smp.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/sun4v_cpufunc.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/tsb.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/include/tte_hash.h#2 integrate
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_diff.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_findname.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_findnodeprop.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_fini.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_getbinsize.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_getgen.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_getpropdata.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_getpropstr.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_getpropval.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_init.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_init_intern.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_nodecount.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_rootnode.c#2 delete
.. //depot/projects/jail2/sys/sun4v/mdesc/mdesc_scandag.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/autoconf.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/clock.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/counter.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/db_disasm.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/eeprom.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/elf_machdep.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/exception.S#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/gdb_machdep.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/hv_pci.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/hvcons.c#4 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/hviommu.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/identcpu.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/in_cksum.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/interrupt.S#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/intr_machdep.c#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/iommu.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/machdep.c#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/mem.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/mp_locore.S#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/mp_machdep.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/nexus.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/ofw_bus.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/ofw_machdep.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/pmap.c#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/prof_machdep.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/rtc.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/rwindow.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/simdisk.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/support.S#4 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/sys_machdep.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/t1_copy.S#3 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/tlb.c#2 delete
.. //depot/projects/jail2/sys/sun4v/sun4v/trap.c#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/tsb.c#3 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/tte.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/tte_hash.c#2 integrate
.. //depot/projects/jail2/sys/sun4v/sun4v/vnex.c#3 integrate
.. //depot/projects/jail2/sys/sys/_lock.h#2 integrate
.. //depot/projects/jail2/sys/sys/_mutex.h#2 integrate
.. //depot/projects/jail2/sys/sys/_semaphore.h#1 branch
.. //depot/projects/jail2/sys/sys/elf_common.h#3 integrate
.. //depot/projects/jail2/sys/sys/ksem.h#1 branch
.. //depot/projects/jail2/sys/sys/lock.h#2 integrate
.. //depot/projects/jail2/sys/sys/lock_profile.h#1 branch
.. //depot/projects/jail2/sys/sys/lockmgr.h#4 integrate
.. //depot/projects/jail2/sys/sys/mbuf.h#6 integrate
.. //depot/projects/jail2/sys/sys/mutex.h#3 integrate
.. //depot/projects/jail2/sys/sys/param.h#7 integrate
.. //depot/projects/jail2/sys/sys/posix4.h#1 branch
.. //depot/projects/jail2/sys/sys/proc.h#5 integrate
.. //depot/projects/jail2/sys/sys/sched.h#4 integrate
.. //depot/projects/jail2/sys/sys/semaphore.h#1 branch
.. //depot/projects/jail2/sys/sys/sleepqueue.h#2 integrate
.. //depot/projects/jail2/sys/sys/syscall.h#8 integrate
.. //depot/projects/jail2/sys/sys/syscall.mk#8 integrate
.. //depot/projects/jail2/sys/sys/sysproto.h#8 integrate
.. //depot/projects/jail2/sys/sys/thr.h#4 integrate
.. //depot/projects/jail2/sys/sys/umtx.h#5 integrate
.. //depot/projects/jail2/sys/sys/vmmeter.h#2 integrate
.. //depot/projects/jail2/sys/sys/vnode.h#3 integrate
.. //depot/projects/jail2/sys/ufs/ffs/ffs_vnops.c#4 integrate
.. //depot/projects/jail2/sys/vm/vm_fault.c#4 integrate
.. //depot/projects/jail2/sys/vm/vm_kern.c#3 integrate
.. //depot/projects/jail2/sys/vm/vm_kern.h#2 integrate
.. //depot/projects/jail2/sys/vm/vm_meter.c#3 integrate
Differences ...
==== //depot/projects/jail2/sys/Makefile#3 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/Makefile,v 1.38 2006/08/10 06:29:43 imp Exp $
+# $FreeBSD: src/sys/Makefile,v 1.39 2006/11/11 16:26:55 trhodes Exp $
.include <bsd.own.mk>
@@ -11,7 +11,7 @@
CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \
isofs kern libkern modules net net80211 netatalk netatm \
netgraph netinet netinet6 netipx netkey netnatm netncp \
- netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \
+ netsmb nfs nfsclient nfs4client rpc pccard pci sys \
ufs vm ${ARCHDIR}
ARCHDIR ?= ${MACHINE}
==== //depot/projects/jail2/sys/amd64/amd64/db_disasm.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_disasm.c,v 1.30 2005/03/30 22:57:41 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_disasm.c,v 1.31 2006/11/13 21:14:54 jhb Exp $");
/*
* Instruction disassembler.
@@ -84,6 +84,7 @@
#define Ib 21 /* byte immediate, unsigned */
#define Ibs 22 /* byte immediate, signed */
#define Iw 23 /* word immediate, unsigned */
+#define Ilq 24 /* long/quad immediate, unsigned */
#define O 25 /* direct address */
#define Db 26 /* byte displacement from EIP */
#define Dl 27 /* long displacement from EIP */
@@ -351,7 +352,6 @@
0,
0,
0,
- 0,
db_inst_0f8x,
db_inst_0f9x,
db_inst_0fax,
@@ -752,14 +752,14 @@
/*b6*/ { "mov", FALSE, BYTE, op2(I, Ri), 0 },
/*b7*/ { "mov", FALSE, BYTE, op2(I, Ri), 0 },
-/*b8*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*b9*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*ba*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bb*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bc*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bd*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*be*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bf*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
+/*b8*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*b9*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*ba*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bb*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bc*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bd*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*be*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bf*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
/*c0*/ { "", TRUE, BYTE, op2(Ib, E), db_Grp2 },
/*c1*/ { "", TRUE, LONG, op2(Ib, E), db_Grp2 },
@@ -854,17 +854,6 @@
int ss;
};
-static const char * const db_index_reg_16[8] = {
- "%bx,%si",
- "%bx,%di",
- "%bp,%si",
- "%bp,%di",
- "%si",
- "%di",
- "%bp",
- "%bx"
-};
-
static const char * const db_reg[2][4][16] = {
{{"%al", "%cl", "%dl", "%bl", "%ah", "%ch", "%dh", "%bh",
@@ -927,7 +916,7 @@
int regmodrm;
struct i_addr * addrp; /* out */
{
- int mod, rm, sib, index, disp;
+ int mod, rm, sib, index, disp, size, have_sib;
mod = f_mod(rex, regmodrm);
rm = f_rm(rex, regmodrm);
@@ -940,68 +929,49 @@
addrp->is_reg = FALSE;
addrp->index = 0;
- if (short_addr) {
- addrp->index = 0;
- addrp->ss = 0;
- switch (mod) {
- case 0:
- if (rm == 6) {
- get_value_inc(disp, loc, 2, FALSE);
- addrp->disp = disp;
- addrp->base = 0;
- }
- else {
- addrp->disp = 0;
- addrp->base = db_index_reg_16[rm];
- }
- break;
- case 1:
- get_value_inc(disp, loc, 1, TRUE);
- disp &= 0xFFFF;
- addrp->disp = disp;
- addrp->base = db_index_reg_16[rm];
- break;
- case 2:
- get_value_inc(disp, loc, 2, FALSE);
- addrp->disp = disp;
- addrp->base = db_index_reg_16[rm];
- break;
- }
- }
- else {
- if (mod != 3 && rm == 4) {
- get_value_inc(sib, loc, 1, FALSE);
- rm = sib_base(rex, sib);
- index = sib_index(rex, sib);
- if (index != 4)
- addrp->index = db_reg[1][QUAD][index];
- addrp->ss = sib_ss(rex, sib);
- }
+ if (short_addr)
+ size = LONG;
+ else
+ size = QUAD;
+
+ if ((rm & 0x7) == 4) {
+ get_value_inc(sib, loc, 1, FALSE);
+ rm = sib_base(rex, sib);
+ index = sib_index(rex, sib);
+ if (index != 4)
+ addrp->index = db_reg[1][size][index];
+ addrp->ss = sib_ss(rex, sib);
+ have_sib = 1;
+ } else
+ have_sib = 0;
- switch (mod) {
- case 0:
- if (rm == 5) {
- get_value_inc(addrp->disp, loc, 4, FALSE);
+ switch (mod) {
+ case 0:
+ if (rm == 5) {
+ get_value_inc(addrp->disp, loc, 4, FALSE);
+ if (have_sib)
addrp->base = 0;
- }
- else {
- addrp->disp = 0;
- addrp->base = db_reg[1][QUAD][rm];
- }
- break;
+ else if (short_addr)
+ addrp->base = "%eip";
+ else
+ addrp->base = "%rip";
+ } else {
+ addrp->disp = 0;
+ addrp->base = db_reg[1][size][rm];
+ }
+ break;
- case 1:
- get_value_inc(disp, loc, 1, TRUE);
- addrp->disp = disp;
- addrp->base = db_reg[1][QUAD][rm];
- break;
+ case 1:
+ get_value_inc(disp, loc, 1, TRUE);
+ addrp->disp = disp;
+ addrp->base = db_reg[1][size][rm];
+ break;
- case 2:
- get_value_inc(disp, loc, 4, FALSE);
- addrp->disp = disp;
- addrp->base = db_reg[1][QUAD][rm];
- break;
- }
+ case 2:
+ get_value_inc(disp, loc, 4, FALSE);
+ addrp->disp = disp;
+ addrp->base = db_reg[1][size][rm];
+ break;
}
return (loc);
}
@@ -1022,7 +992,8 @@
db_printf("%s:", seg);
}
- db_printsym((db_addr_t)addrp->disp, DB_STGY_ANY);
+ if (addrp->disp != 0 || (addrp->base == 0 && addrp->index == 0))
+ db_printsym((db_addr_t)addrp->disp, DB_STGY_ANY);
if (addrp->base != 0 || addrp->index != 0) {
db_printf("(");
if (addrp->base)
@@ -1154,6 +1125,7 @@
int prefix;
int imm;
int imm2;
+ long imm64;
int len;
struct i_addr address;
@@ -1426,6 +1398,12 @@
db_printf("$%#r", imm);
break;
+ case Ilq:
+ len = db_lengths[rex & REX_W ? QUAD : LONG];
+ get_value_inc(imm64, loc, len, FALSE);
+ db_printf("$%#lr", imm64);
+ break;
+
case O:
len = (short_addr ? 2 : 4);
get_value_inc(displ, loc, len, FALSE);
==== //depot/projects/jail2/sys/amd64/amd64/db_trace.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.76 2006/10/20 09:44:20 bde Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.80 2006/11/17 20:27:00 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -200,10 +200,10 @@
static void db_print_stack_entry(const char *, int, char **, long *, db_addr_t);
static void decode_syscall(int, struct thread *);
-static char * watchtype_str(int type);
+static const char * watchtype_str(int type);
int amd64_set_watch(int watchnum, unsigned long watchaddr, int size,
- int access, struct dbreg * d);
-int amd64_clr_watch(int watchnum, struct dbreg * d);
+ int access, struct dbreg *d);
+int amd64_clr_watch(int watchnum, struct dbreg *d);
/*
* Figure out how many arguments were passed into the frame at "fp".
@@ -536,21 +536,20 @@
unsigned long watchaddr;
int size;
int access;
- struct dbreg * d;
+ struct dbreg *d;
{
- int i;
- unsigned int mask;
-
+ int i, len;
+
if (watchnum == -1) {
- for (i = 0, mask = 0x3; i < 4; i++, mask <<= 2)
- if ((d->dr[7] & mask) == 0)
+ for (i = 0; i < 4; i++)
+ if (!DBREG_DR7_ENABLED(d->dr[7], i))
break;
if (i < 4)
watchnum = i;
else
return (-1);
}
-
+
switch (access) {
case DBREG_DR7_EXEC:
size = 1; /* size must be 1 for an execution breakpoint */
@@ -558,29 +557,39 @@
case DBREG_DR7_WRONLY:
case DBREG_DR7_RDWR:
break;
- default : return (-1);
+ default:
+ return (-1);
}
-
+
/*
- * we can watch a 1, 2, or 4 byte sized location
+ * we can watch a 1, 2, 4, or 8 byte sized location
*/
switch (size) {
- case 1 : mask = 0x00; break;
- case 2 : mask = 0x01 << 2; break;
- case 4 : mask = 0x03 << 2; break;
- default : return (-1);
+ case 1:
+ len = DBREG_DR7_LEN_1;
+ break;
+ case 2:
+ len = DBREG_DR7_LEN_2;
+ break;
+ case 4:
+ len = DBREG_DR7_LEN_4;
+ break;
+ case 8:
+ len = DBREG_DR7_LEN_8;
+ break;
+ default:
+ return (-1);
}
- mask |= access;
-
/* clear the bits we are about to affect */
- d->dr[7] &= ~((0x3 << (watchnum*2)) | (0x0f << (watchnum*4+16)));
+ d->dr[7] &= ~DBREG_DR7_MASK(watchnum);
/* set drN register to the address, N=watchnum */
- DBREG_DRX(d,watchnum) = watchaddr;
+ DBREG_DRX(d, watchnum) = watchaddr;
/* enable the watchpoint */
- d->dr[7] |= (0x2 << (watchnum*2)) | (mask << (watchnum*4+16));
+ d->dr[7] |= DBREG_DR7_SET(watchnum, len, access,
+ DBREG_DR7_GLOBAL_ENABLE);
return (watchnum);
}
@@ -589,15 +598,15 @@
int
amd64_clr_watch(watchnum, d)
int watchnum;
- struct dbreg * d;
+ struct dbreg *d;
{
if (watchnum < 0 || watchnum >= 4)
return (-1);
-
- d->dr[7] = d->dr[7] & ~((0x3 << (watchnum*2)) | (0x0f << (watchnum*4+16)));
- DBREG_DRX(d,watchnum) = 0;
-
+
+ d->dr[7] &= ~DBREG_DR7_MASK(watchnum);
+ DBREG_DRX(d, watchnum) = 0;
+
return (0);
}
@@ -607,38 +616,38 @@
db_expr_t addr;
db_expr_t size;
{
- int avail, wsize;
- int i;
struct dbreg d;
-
+ int avail, i, wsize;
+
fill_dbregs(NULL, &d);
-
+
avail = 0;
- for(i=0; i<4; i++) {
- if ((d.dr[7] & (3 << (i*2))) == 0)
+ for(i = 0; i < 4; i++) {
+ if (!DBREG_DR7_ENABLED(d.dr[7], i))
avail++;
}
-
- if (avail*4 < size)
+
+ if (avail * 8 < size)
return (-1);
-
- for (i=0; i<4 && (size != 0); i++) {
- if ((d.dr[7] & (3<<(i*2))) == 0) {
- if (size > 4)
+
+ for (i = 0; i < 4 && (size > 0); i++) {
+ if (!DBREG_DR7_ENABLED(d.dr[7], i)) {
+ if (size >= 8 || (avail == 1 && size > 4))
+ wsize = 8;
+ else if (size > 2)
wsize = 4;
else
wsize = size;
- if (wsize == 3)
- wsize++;
- amd64_set_watch(i, addr, wsize,
+ amd64_set_watch(i, addr, wsize,
DBREG_DR7_WRONLY, &d);
addr += wsize;
size -= wsize;
+ avail--;
}
}
-
+
set_dbregs(NULL, &d);
-
+
return(0);
}
@@ -648,28 +657,27 @@
db_expr_t addr;
db_expr_t size;
{
+ struct dbreg d;
int i;
- struct dbreg d;
fill_dbregs(NULL, &d);
- for(i=0; i<4; i++) {
- if (d.dr[7] & (3 << (i*2))) {
- if ((DBREG_DRX((&d), i) >= addr) &&
+ for(i = 0; i < 4; i++) {
+ if (DBREG_DR7_ENABLED(d.dr[7], i)) {
+ if ((DBREG_DRX((&d), i) >= addr) &&
(DBREG_DRX((&d), i) < addr+size))
amd64_clr_watch(i, &d);
-
+
}
}
-
+
set_dbregs(NULL, &d);
-
+
return(0);
}
-static
-char *
+static const char *
watchtype_str(type)
int type;
{
@@ -685,30 +693,33 @@
void
db_md_list_watchpoints()
{
- int i;
struct dbreg d;
+ int i, len, type;
fill_dbregs(NULL, &d);
db_printf("\nhardware watchpoints:\n");
- db_printf(" watch status type len address\n");
- db_printf(" ----- -------- ---------- --- ----------\n");
- for (i=0; i<4; i++) {
- if (d.dr[7] & (0x03 << (i*2))) {
- unsigned type, len;
- type = (d.dr[7] >> (16+(i*4))) & 3;
- len = (d.dr[7] >> (16+(i*4)+2)) & 3;
- db_printf(" %-5d %-8s %10s %3d 0x%016lx\n",
- i, "enabled", watchtype_str(type),
- len + 1, DBREG_DRX((&d), i));
- }
- else {
+ db_printf(" watch status type len address\n");
+ db_printf(" ----- -------- ---------- --- ------------------\n");
+ for (i = 0; i < 4; i++) {
+ if (DBREG_DR7_ENABLED(d.dr[7], i)) {
+ type = DBREG_DR7_ACCESS(d.dr[7], i);
+ len = DBREG_DR7_LEN(d.dr[7], i);
+ if (len == DBREG_DR7_LEN_8)
+ len = 8;
+ else
+ len++;
+ db_printf(" %-5d %-8s %10s %3d ",
+ i, "enabled", watchtype_str(type), len);
+ db_printsym((db_addr_t)DBREG_DRX((&d), i), DB_STGY_ANY);
+ db_printf("\n");
+ } else {
db_printf(" %-5d disabled\n", i);
}
}
-
+
db_printf("\ndebug register values:\n");
- for (i=0; i<8; i++) {
+ for (i = 0; i < 8; i++) {
db_printf(" dr%d 0x%016lx\n", i, DBREG_DRX((&d), i));
}
db_printf("\n");
==== //depot/projects/jail2/sys/amd64/amd64/intr_machdep.c#4 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.25 2006/10/16 21:40:46 jhb Exp $
+ * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.26 2006/11/17 16:41:03 jhb Exp $
*/
/*
@@ -446,10 +446,6 @@
current_cpu++;
if (current_cpu >= num_cpus)
current_cpu = 0;
- if (bootverbose) {
- printf("INTR: Assigning IRQ %d", pic->pic_vector(isrc));
- printf(" to local APIC %u\n", apic_id);
- }
pic->pic_assign_cpu(isrc, apic_id);
}
@@ -483,7 +479,7 @@
if (num_cpus <= 1)
return;
- /* Round-robin assign each enabled source a CPU. */
+ /* Round-robin assign a CPU to each enabled source. */
mtx_lock_spin(&intr_table_lock);
assign_cpu = 1;
for (i = 0; i < NUM_IO_INTS; i++) {
==== //depot/projects/jail2/sys/amd64/amd64/io_apic.c#3 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.25 2006/10/10 23:23:11 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.26 2006/11/17 16:41:03 jhb Exp $");
#include "opt_isa.h"
@@ -512,13 +512,6 @@
* be routed to other CPUs later after they are enabled.
*/
intpin->io_cpu = PCPU_GET(apic_id);
- if (bootverbose && intpin->io_irq != IRQ_DISABLED) {
- printf("ioapic%u: intpin %d -> ", io->io_id, i);
- ioapic_print_irq(intpin);
- printf(" (%s, %s)\n", intpin->io_edgetrigger ?
- "edge" : "level", intpin->io_activehi ? "high" :
- "low");
- }
value = ioapic_read(apic, IOAPIC_REDTBL_LO(i));
ioapic_write(apic, IOAPIC_REDTBL_LO(i), value | IOART_INTMSET);
}
@@ -583,6 +576,8 @@
return (EINVAL);
if (io->io_pins[pin].io_irq >= NUM_IO_INTS)
return (EINVAL);
+ if (io->io_pins[pin].io_bus == bus_type)
+ return (0);
io->io_pins[pin].io_bus = bus_type;
if (bootverbose)
printf("ioapic%u: intpin %d bus %s\n", io->io_id, pin,
@@ -666,13 +661,17 @@
ioapic_set_polarity(void *cookie, u_int pin, enum intr_polarity pol)
{
struct ioapic *io;
+ int activehi;
io = (struct ioapic *)cookie;
if (pin >= io->io_numintr || pol == INTR_POLARITY_CONFORM)
return (EINVAL);
if (io->io_pins[pin].io_irq >= NUM_IO_INTS)
return (EINVAL);
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list