From owner-p4-projects@FreeBSD.ORG Tue Aug 19 19:29:06 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6885D106567D; Tue, 19 Aug 2008 19:29:06 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2A6DF1065676 for ; Tue, 19 Aug 2008 19:29:06 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 18D728FC08 for ; Tue, 19 Aug 2008 19:29:06 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.2/8.14.2) with ESMTP id m7JJT5bN081407 for ; Tue, 19 Aug 2008 19:29:05 GMT (envelope-from ed@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m7JJT53t081405 for perforce@freebsd.org; Tue, 19 Aug 2008 19:29:05 GMT (envelope-from ed@FreeBSD.org) Date: Tue, 19 Aug 2008 19:29:05 GMT Message-Id: <200808191929.m7JJT53t081405@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to ed@FreeBSD.org using -f From: Ed Schouten To: Perforce Change Reviews Cc: Subject: PERFORCE change 147826 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Aug 2008 19:29:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=147826 Change 147826 by ed@ed_dull on 2008/08/19 19:28:58 IFC. Affected files ... .. //depot/projects/mpsafetty/Makefile.inc1#3 integrate .. //depot/projects/mpsafetty/UPDATING#6 integrate .. //depot/projects/mpsafetty/contrib/ntp/FREEBSD-Xlist#2 delete .. //depot/projects/mpsafetty/contrib/ntp/FREEBSD-upgrade#2 delete .. //depot/projects/mpsafetty/etc/defaults/rc.conf#5 integrate .. //depot/projects/mpsafetty/etc/rc.d/kernel#3 delete .. //depot/projects/mpsafetty/etc/rc.d/kernel_symlink#1 branch .. //depot/projects/mpsafetty/share/man/man4/ata.4#2 integrate .. //depot/projects/mpsafetty/share/man/man5/rc.conf.5#3 integrate .. //depot/projects/mpsafetty/sys/amd64/amd64/bpf_jit_machdep.c#4 integrate .. //depot/projects/mpsafetty/sys/amd64/amd64/bpf_jit_machdep.h#4 integrate .. //depot/projects/mpsafetty/sys/amd64/amd64/exception.S#2 integrate .. //depot/projects/mpsafetty/sys/conf/options#6 integrate .. //depot/projects/mpsafetty/sys/ddb/db_output.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb/ehci.c#3 integrate .. //depot/projects/mpsafetty/sys/dev/usb/hid.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb/if_rum.c#3 integrate .. //depot/projects/mpsafetty/sys/dev/usb/ufoma.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb/ums.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb/usbdevs#5 integrate .. //depot/projects/mpsafetty/sys/i386/i386/bpf_jit_machdep.c#4 integrate .. //depot/projects/mpsafetty/sys/i386/i386/bpf_jit_machdep.h#4 integrate .. //depot/projects/mpsafetty/sys/i386/include/pmap.h#4 integrate .. //depot/projects/mpsafetty/sys/i386/include/xen/xenpmap.h#3 integrate .. //depot/projects/mpsafetty/sys/i386/xen/xen_machdep.c#4 integrate .. //depot/projects/mpsafetty/sys/kern/vfs_bio.c#3 integrate .. //depot/projects/mpsafetty/sys/net/bpf_jitter.c#2 integrate .. //depot/projects/mpsafetty/sys/net/bpf_jitter.h#2 integrate .. //depot/projects/mpsafetty/sys/netinet/if_ether.c#3 integrate .. //depot/projects/mpsafetty/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/mpsafetty/sys/rpc/rpcclnt.c#3 integrate .. //depot/projects/mpsafetty/sys/sys/vimage.h#2 integrate .. //depot/projects/mpsafetty/sys/xen/evtchn/evtchn_dev.c#2 integrate .. //depot/projects/mpsafetty/tools/regression/bpf/Makefile#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/Makefile#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/bpf_test.c#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0001.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0002.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0003.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0004.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0005.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0006.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0007.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0008.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0009.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0010.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0011.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0012.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0013.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0014.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0015.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0016.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0017.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0018.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0019.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0020.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0021.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0022.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0023.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0024.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0025.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0026.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0027.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0028.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0029.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0030.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0031.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0032.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0033.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0034.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0035.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0036.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0037.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0038.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0039.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0040.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0041.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0042.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0043.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0044.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0045.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0046.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0047.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0048.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0049.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0050.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0051.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0052.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0053.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0054.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0055.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0056.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0057.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0058.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0059.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0060.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0061.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0062.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0063.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0064.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0065.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0066.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0067.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0068.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0069.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0070.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0071.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0072.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0073.h#1 branch .. //depot/projects/mpsafetty/tools/regression/bpf/bpf_filter/tests/test0074.h#1 branch .. //depot/projects/mpsafetty/usr.bin/tar/matching.c#3 integrate Differences ... ==== //depot/projects/mpsafetty/Makefile.inc1#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.609 2008/08/02 12:14:22 jhb Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.610 2008/08/19 14:23:26 jhb Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -259,11 +259,11 @@ LIB32TMP= ${OBJTREE}${.CURDIR}/lib32 .if empty(TARGET_CPUTYPE) -LIB32CPUTYPE= k8 +LIB32CPUFLAGS= -march=i686 -mmmx -msse -msse2 .else -LIB32CPUTYPE= ${TARGET_CPUTYPE} +LIB32CPUFLAGS= -march=${TARGET_CPUTYPE} .endif -LIB32FLAGS= -m32 -march=${LIB32CPUTYPE} -mfancy-math-387 -DCOMPAT_32BIT \ +LIB32FLAGS= -m32 ${LIB32CPUFLAGS} -mfancy-math-387 -DCOMPAT_32BIT \ -iprefix ${LIB32TMP}/usr/ \ -L${LIB32TMP}/usr/lib32 \ -B${LIB32TMP}/usr/lib32 ==== //depot/projects/mpsafetty/UPDATING#6 (text+ko) ==== @@ -52,6 +52,17 @@ instead of "ttyd0". You may need to reconfigure applications to use the new device names. + When using the serial port as a boot console, be sure to update + /boot/device.hints and /etc/ttys before booting the new kernel. + If you forget to do so, you can still manually specify the hints + at the loader prompt: + + set hint.uart.0.at="isa" + set hint.uart.0.port="0x3F8" + set hint.uart.0.flags="0x10" + set hint.uart.0.irq="4" + boot -s + 20080609: The gpt(8) utility has been removed. Use gpart(8) to partition disks instead. @@ -1097,4 +1108,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.537 2008/07/25 09:30:53 maxim Exp $ +$FreeBSD: src/UPDATING,v 1.538 2008/08/18 10:38:16 ed Exp $ ==== //depot/projects/mpsafetty/etc/defaults/rc.conf#5 (text+ko) ==== @@ -15,7 +15,7 @@ # For a more detailed explanation of all the rc.conf variables, please # refer to the rc.conf(5) manual page. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.341 2008/08/15 19:20:59 jhb Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.342 2008/08/19 14:23:31 obrien Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -552,8 +552,7 @@ sysvipc_enable="NO" # Load System V IPC primitives at startup (or NO). linux_enable="NO" # Linux binary compatibility loaded at startup (or NO). svr4_enable="NO" # SysVR4 emulation loaded at startup (or NO). - -kernel_enable="NO" # Symlink kernel directory to /boot/kernel if not exist. +kernel_symlink_enable="NO" # Symlink booted kernel to /boot/kernel if missing. clear_tmp_enable="NO" # Clear /tmp at startup. clear_tmp_X="YES" # Clear and recreate X11-related directories in /tmp ldconfig_insecure="NO" # Set to YES to disable ldconfig security checks ==== //depot/projects/mpsafetty/share/man/man4/ata.4#2 (text+ko) ==== @@ -25,9 +25,9 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ata.4,v 1.74 2007/10/05 07:06:51 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/ata.4,v 1.76 2008/08/18 09:45:26 simon Exp $ .\" -.Dd October 5, 2007 +.Dd August 18, 2008 .Dt ATA 4 .Os .Sh NAME @@ -85,6 +85,8 @@ .Bl -ohang .It Va hw.ata.ata_dma set to 1 for DMA access, 0 for PIO (default is DMA). +.It Va hw.ata.ata_dma_check_80pin +set to 0 to disable the 80pin cable check (default is 1, check the cable) .It Va hw.ata.atapi_dma set to 1 for DMA access, 0 for PIO (default is DMA). .It Va hw.ata.wc @@ -170,6 +172,9 @@ or could not be detected properly, or that one of the devices on the channel only accepts up to UDMA2/ATA33. +The +.Va hw.ata.ata_dma_check_80pin +tunable can be set to 0 to disable this check. .Pp Unknown ATAPI devices are initialized to DMA mode if the .Va hw.ata.atapi_dma ==== //depot/projects/mpsafetty/share/man/man5/rc.conf.5#3 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man5/rc.conf.5,v 1.344 2008/08/09 06:35:19 obrien Exp $ +.\" $FreeBSD: src/share/man/man5/rc.conf.5,v 1.345 2008/08/19 14:23:31 obrien Exp $ .\" .Dd June 21, 2008 .Dt RC.CONF 5 @@ -3116,16 +3116,16 @@ If set to .Dq Li YES , load System V IPC primitives at boot time. -.It Va kernel_enable +.It Va kernel_symlink_enable .Pq Vt bool Set to .Dq Li YES -to symlink +to symbolicly link .Pa /boot/kernel to the directory that contains the kernel you booted from, unless .Pa /boot/kernel -already exists and is not a symlink. +already exists and is not a symbolic link. .It Va clear_tmp_enable .Pq Vt bool Set to ==== //depot/projects/mpsafetty/sys/amd64/amd64/bpf_jit_machdep.c#4 (text+ko) ==== @@ -30,18 +30,22 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.c,v 1.10 2008/08/13 19:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.c,v 1.12 2008/08/18 19:14:26 jkim Exp $"); +#ifdef _KERNEL #include "opt_bpf.h" - #include #include #include -#include #include #include +#include +#else +#include +#endif + +#include -#include #include #include @@ -53,7 +57,7 @@ * emit routine to update the jump table */ static void -emit_length(bpf_bin_stream *stream, u_int value, u_int len) +emit_length(bpf_bin_stream *stream, __unused u_int value, u_int len) { (stream->refs)[stream->bpf_pc] += len; @@ -108,8 +112,12 @@ return (NULL); /* Allocate the reference table for the jumps */ +#ifdef _KERNEL stream.refs = (u_int *)malloc((nins + 1) * sizeof(u_int), M_BPFJIT, M_NOWAIT); +#else + stream.refs = (u_int *)malloc((nins + 1) * sizeof(u_int)); +#endif if (stream.refs == NULL) return (NULL); @@ -141,7 +149,11 @@ switch (ins->code) { default: +#ifdef _KERNEL return (NULL); +#else + abort(); +#endif case BPF_RET|BPF_K: MOVid(ins->k, EAX); @@ -155,11 +167,13 @@ break; case BPF_LD|BPF_W|BPF_ABS: - MOVid(ins->k, ECX); - MOVrd(ECX, ESI); - ADDib(sizeof(int32_t), ECX); - CMPrd(EDI, ECX); - JBEb(6); + MOVid(ins->k, ESI); + CMPrd(EDI, ESI); + JAb(12); + MOVrd(EDI, ECX); + SUBrd(ESI, ECX); + CMPid(sizeof(int32_t), ECX); + JAEb(6); ZEROrd(EAX); MOVrq3(R8, RBX); RET(); @@ -169,11 +183,13 @@ case BPF_LD|BPF_H|BPF_ABS: ZEROrd(EAX); - MOVid(ins->k, ECX); - MOVrd(ECX, ESI); - ADDib(sizeof(int16_t), ECX); - CMPrd(EDI, ECX); - JBEb(4); + MOVid(ins->k, ESI); + CMPrd(EDI, ESI); + JAb(12); + MOVrd(EDI, ECX); + SUBrd(ESI, ECX); + CMPid(sizeof(int16_t), ECX); + JAEb(4); MOVrq3(R8, RBX); RET(); MOVobw(RBX, RSI, AX); @@ -182,12 +198,12 @@ case BPF_LD|BPF_B|BPF_ABS: ZEROrd(EAX); - MOVid(ins->k, ECX); - CMPrd(EDI, ECX); - JBEb(4); + MOVid(ins->k, ESI); + CMPrd(EDI, ESI); + JBb(4); MOVrq3(R8, RBX); RET(); - MOVobb(RBX, RCX, AL); + MOVobb(RBX, RSI, AL); break; case BPF_LD|BPF_W|BPF_LEN: @@ -199,12 +215,18 @@ break; case BPF_LD|BPF_W|BPF_IND: - MOVid(ins->k, ECX); - ADDrd(EDX, ECX); - MOVrd(ECX, ESI); - ADDib(sizeof(int32_t), ECX); - CMPrd(EDI, ECX); - JBEb(6); + CMPrd(EDI, EDX); + JAb(27); + MOVid(ins->k, ESI); + MOVrd(EDI, ECX); + SUBrd(EDX, ECX); + CMPrd(ESI, ECX); + JBb(14); + ADDrd(EDX, ESI); + MOVrd(EDI, ECX); + SUBrd(ESI, ECX); + CMPid(sizeof(int32_t), ECX); + JAEb(6); ZEROrd(EAX); MOVrq3(R8, RBX); RET(); @@ -214,12 +236,18 @@ case BPF_LD|BPF_H|BPF_IND: ZEROrd(EAX); - MOVid(ins->k, ECX); - ADDrd(EDX, ECX); - MOVrd(ECX, ESI); - ADDib(sizeof(int16_t), ECX); - CMPrd(EDI, ECX); - JBEb(4); + CMPrd(EDI, EDX); + JAb(27); + MOVid(ins->k, ESI); + MOVrd(EDI, ECX); + SUBrd(EDX, ECX); + CMPrd(ESI, ECX); + JBb(14); + ADDrd(EDX, ESI); + MOVrd(EDI, ECX); + SUBrd(ESI, ECX); + CMPid(sizeof(int16_t), ECX); + JAEb(4); MOVrq3(R8, RBX); RET(); MOVobw(RBX, RSI, AX); @@ -228,24 +256,28 @@ case BPF_LD|BPF_B|BPF_IND: ZEROrd(EAX); - MOVid(ins->k, ECX); - ADDrd(EDX, ECX); - CMPrd(EDI, ECX); - JBEb(4); + CMPrd(EDI, EDX); + JAEb(13); + MOVid(ins->k, ESI); + MOVrd(EDI, ECX); + SUBrd(EDX, ECX); + CMPrd(ESI, ECX); + JAb(4); MOVrq3(R8, RBX); RET(); - MOVobb(RBX, RCX, AL); + ADDrd(EDX, ESI); + MOVobb(RBX, RSI, AL); break; case BPF_LDX|BPF_MSH|BPF_B: - MOVid(ins->k, ECX); - CMPrd(EDI, ECX); - JBEb(6); + MOVid(ins->k, ESI); + CMPrd(EDI, ESI); + JBb(6); ZEROrd(EAX); MOVrq3(R8, RBX); RET(); ZEROrd(EDX); - MOVobb(RBX, RCX, DL); + MOVobb(RBX, RSI, DL); ANDib(0x0f, DL); SHLib(2, EDX); break; @@ -450,11 +482,19 @@ if (pass == 2) break; +#ifdef _KERNEL stream.ibuf = (char *)malloc(stream.cur_ip, M_BPFJIT, M_NOWAIT); if (stream.ibuf == NULL) { free(stream.refs, M_BPFJIT); return (NULL); } +#else + stream.ibuf = (char *)malloc(stream.cur_ip); + if (stream.ibuf == NULL) { + free(stream.refs); + return (NULL); + } +#endif /* * modify the reference table to contain the offsets and @@ -475,7 +515,11 @@ * the reference table is needed only during compilation, * now we can free it */ +#ifdef _KERNEL free(stream.refs, M_BPFJIT); +#else + free(stream.refs); +#endif return ((bpf_filter_func)stream.ibuf); } ==== //depot/projects/mpsafetty/sys/amd64/amd64/bpf_jit_machdep.h#4 (text+ko) ==== @@ -28,7 +28,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.h,v 1.8 2008/08/13 19:25:09 jkim Exp $ + * $FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.h,v 1.9 2008/08/18 19:14:26 jkim Exp $ */ #ifndef _BPF_JIT_MACHDEP_H_ @@ -381,15 +381,27 @@ } \ } while (0) +/* jb off8 */ +#define JBb(off8) do { \ + emitm(&stream, 0x72, 1); \ + emitm(&stream, off8, 1); \ +} while (0) + +/* jae off8 */ +#define JAEb(off8) do { \ + emitm(&stream, 0x73, 1); \ + emitm(&stream, off8, 1); \ +} while (0) + /* jne off8 */ #define JNEb(off8) do { \ emitm(&stream, 0x75, 1); \ emitm(&stream, off8, 1); \ } while (0) -/* jbe off8 */ -#define JBEb(off8) do { \ - emitm(&stream, 0x76, 1); \ +/* ja off8 */ +#define JAb(off8) do { \ + emitm(&stream, 0x77, 1); \ emitm(&stream, off8, 1); \ } while (0) ==== //depot/projects/mpsafetty/sys/amd64/amd64/exception.S#2 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.132 2008/05/24 06:32:26 jb Exp $ + * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.133 2008/08/18 08:47:27 kib Exp $ */ #include "opt_atpic.h" @@ -636,13 +636,10 @@ .globl doreti_iret_fault doreti_iret_fault: subq $TF_RIP,%rsp /* space including tf_err, tf_trapno */ - testb $SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */ - jz 1f /* already running with kernel GS.base */ - swapgs -1: testl $PSL_I,TF_RFLAGS(%rsp) - jz 2f + testl $PSL_I,TF_RFLAGS(%rsp) + jz 1f sti -2: movq %rdi,TF_RDI(%rsp) +1: movq %rdi,TF_RDI(%rsp) movq %rsi,TF_RSI(%rsp) movq %rdx,TF_RDX(%rsp) movq %rcx,TF_RCX(%rsp) ==== //depot/projects/mpsafetty/sys/conf/options#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.634 2008/08/17 23:27:27 bz Exp $ +# $FreeBSD: src/sys/conf/options,v 1.635 2008/08/18 16:48:09 attilio Exp $ # # On the handling of kernel options # @@ -48,6 +48,7 @@ # Debugging options. DDB +DDB_BUFR_SIZE opt_ddb.h DDB_CAPTURE_DEFAULTBUFSIZE opt_ddb.h DDB_CAPTURE_MAXBUFSIZE opt_ddb.h DDB_CTF opt_ddb.h ==== //depot/projects/mpsafetty/sys/ddb/db_output.c#2 (text+ko) ==== @@ -33,7 +33,9 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ddb/db_output.c,v 1.38 2007/12/25 23:06:51 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/ddb/db_output.c,v 1.40 2008/08/18 16:51:44 attilio Exp $"); + +#include "opt_ddb.h" #include #include @@ -47,6 +49,13 @@ #include #include +struct dbputchar_arg { + size_t da_nbufr; + size_t da_remain; + char *da_pbufr; + char *da_pnext; +}; + /* * Character output - tracks position in line. * To do this correctly, we should know how wide @@ -73,6 +82,8 @@ SYSCTL_INT(_debug, OID_AUTO, ddb_use_printf, CTLFLAG_RW, &ddb_use_printf, 0, "use printf for all ddb output"); +static void db_putc(int c); +static void db_puts(const char *str); static void db_putchar(int c, void *arg); static void db_pager(void); @@ -107,9 +118,34 @@ * Output character. Buffer whitespace. */ static void -db_putchar(c, arg) - int c; /* character to output */ - void * arg; +db_putchar(int c, void *arg) +{ + struct dbputchar_arg *dap = arg; + + if (dap->da_pbufr == NULL) { + + /* No bufferized output is provided. */ + db_putc(c); + } else { + + *dap->da_pnext++ = c; + dap->da_remain--; + + /* Leave always the buffer 0 terminated. */ + *dap->da_pnext = '\0'; + + /* Check if the buffer needs to be flushed. */ + if (dap->da_remain < 2 || c == '\n') { + db_puts(dap->da_pbufr); + dap->da_pnext = dap->da_pbufr; + dap->da_remain = dap->da_nbufr; + *dap->da_pnext = '\0'; + } + } +} + +static void +db_putc(int c) { /* @@ -180,6 +216,15 @@ /* other characters are assumed non-printing */ } +static void +db_puts(const char *str) +{ + int i; + + for (i = 0; str[i] != '\0'; i++) + db_putc(str[i]); +} + /* * Turn on the pager. */ @@ -272,30 +317,43 @@ * Printing */ void -#if __STDC__ db_printf(const char *fmt, ...) +{ +#ifdef DDB_BUFR_SIZE + char bufr[DDB_BUFR_SIZE]; +#endif + struct dbputchar_arg dca; + va_list listp; + +#ifdef DDB_BUFR_SIZE + dca.da_pbufr = bufr; + dca.da_pnext = dca.da_pbufr; + dca.da_nbufr = sizeof(bufr); + dca.da_remain = sizeof(bufr); + *dca.da_pnext = '\0'; #else -db_printf(fmt) - const char *fmt; + dca.da_pbufr = NULL; #endif -{ - va_list listp; va_start(listp, fmt); - kvprintf (fmt, db_putchar, NULL, db_radix, listp); + kvprintf (fmt, db_putchar, &dca, db_radix, listp); va_end(listp); + +#ifdef DDB_BUFR_SIZE + if (*dca.da_pbufr != '\0') + db_puts(dca.da_pbufr); +#endif } int db_indent; void -#if __STDC__ db_iprintf(const char *fmt,...) -#else -db_iprintf(fmt) - const char *fmt; +{ +#ifdef DDB_BUFR_SIZE + char bufr[DDB_BUFR_SIZE]; #endif -{ + struct dbputchar_arg dca; register int i; va_list listp; @@ -303,9 +361,25 @@ db_printf("\t"); while (--i >= 0) db_printf(" "); + +#ifdef DDB_BUFR_SIZE + dca.da_pbufr = bufr; + dca.da_pnext = dca.da_pbufr; + dca.da_nbufr = sizeof(bufr); + dca.da_remain = sizeof(bufr); + *dca.da_pnext = '\0'; +#else + dca.da_pbufr = NULL; +#endif + va_start(listp, fmt); - kvprintf (fmt, db_putchar, NULL, db_radix, listp); + kvprintf (fmt, db_putchar, &dca, db_radix, listp); va_end(listp); + +#ifdef DDB_BUFR_SIZE + if (*dca.da_pbufr != '\0') + db_puts(dca.da_pbufr); +#endif } /* ==== //depot/projects/mpsafetty/sys/dev/usb/ehci.c#3 (text+ko) ==== @@ -59,7 +59,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/ehci.c,v 1.65 2008/08/18 04:49:58 kevlo Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/ehci.c,v 1.66 2008/08/18 10:39:59 kris Exp $"); #include #include @@ -239,7 +239,7 @@ static void ehci_dump_sqtd(ehci_soft_qtd_t *); static void ehci_dump_qtd(ehci_qtd_t *); static void ehci_dump_sqh(ehci_soft_qh_t *); -#if notyet +#ifdef notyet static void ehci_dump_sitd(struct ehci_soft_itd *); static void ehci_dump_itd(struct ehci_soft_itd *); #endif @@ -1474,7 +1474,7 @@ ehci_dump_qtd(&qh->qh_qtd); } -#if notyet +#ifdef notyet void ehci_dump_itd(struct ehci_soft_itd *itd) { ==== //depot/projects/mpsafetty/sys/dev/usb/hid.c#2 (text+ko) ==== @@ -2,7 +2,7 @@ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/hid.c,v 1.29 2007/06/20 05:10:52 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/hid.c,v 1.31 2008/08/18 17:05:59 kaiw Exp $"); /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. * All rights reserved. @@ -193,8 +193,11 @@ case 0: /* Main */ switch (bTag) { case 8: /* Input */ - if (!(s->kindset & (1 << hid_input))) + if (!(s->kindset & (1 << hid_input))) { + if (s->nu > 0) + s->nu--; continue; + } c->kind = hid_input; c->flags = dval; ret: @@ -223,8 +226,11 @@ return (1); } case 9: /* Output */ - if (!(s->kindset & (1 << hid_output))) + if (!(s->kindset & (1 << hid_output))) { + if (s->nu > 0) + s->nu--; continue; + } c->kind = hid_output; c->flags = dval; goto ret; @@ -237,8 +243,11 @@ s->nu = 0; return (1); case 11: /* Feature */ - if (!(s->kindset & (1 << hid_feature))) + if (!(s->kindset & (1 << hid_feature))) { + if (s->nu > 0) + s->nu--; continue; + } c->kind = hid_feature; c->flags = dval; goto ret; @@ -266,7 +275,7 @@ c->logical_maximum = dval; break; case 3: - c->physical_maximum = dval; + c->physical_minimum = dval; break; case 4: c->physical_maximum = dval; ==== //depot/projects/mpsafetty/sys/dev/usb/if_rum.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/usb/if_rum.c,v 1.25 2008/07/30 00:38:10 thompsa Exp $ */ +/* $FreeBSD: src/sys/dev/usb/if_rum.c,v 1.26 2008/08/19 01:44:56 kevlo Exp $ */ /*- * Copyright (c) 2005-2007 Damien Bergamini @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_rum.c,v 1.25 2008/07/30 00:38:10 thompsa Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_rum.c,v 1.26 2008/08/19 01:44:56 kevlo Exp $"); /*- * Ralink Technology RT2501USB/RT2601USB chipset driver @@ -98,6 +98,7 @@ { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWLG122C1 }, { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_WUA1340 }, { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA111 }, + { USB_VENDOR_DLINK2, USB_PRODUCT_DLINK2_DWA110 }, { USB_VENDOR_GIGABYTE, USB_PRODUCT_GIGABYTE_GNWB01GS }, { USB_VENDOR_GIGABYTE, USB_PRODUCT_GIGABYTE_GNWI05GS }, { USB_VENDOR_GIGASET, USB_PRODUCT_GIGASET_RT2573 }, ==== //depot/projects/mpsafetty/sys/dev/usb/ufoma.c#2 (text+ko) ==== @@ -1,8 +1,10 @@ /* $NetBSD: umodem.c,v 1.45 2002/09/23 05:51:23 simonb Exp $ */ +#define UFOMA_HANDSFREE #include -__FBSDID("$FreeBSD: src/sys/dev/usb/ufoma.c,v 1.10 2007/07/27 12:00:29 takawata Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/ufoma.c,v 1.11 2008/08/18 11:56:13 takawata Exp $"); + /*- * Copyright (c) 2005, Takanori Watanabe * Copyright (c) 2003, M. Warner Losh . @@ -193,11 +195,13 @@ static char *ufoma_mode_to_str(int); static int ufoma_str_to_mode(char *); -/*Pseudo ucom stuff*/ +#ifdef UFOMA_HANDSFREE +/*Pseudo ucom stuff(for Handsfree interface)*/ static int ufoma_init_pseudo_ucom(struct ufoma_softc *); static t_open_t ufomaopen; static t_close_t ufomaclose; static t_oproc_t ufomastart; +#endif /*umodem like stuff*/ static int ufoma_init_modem(struct ufoma_softc *, struct usb_attach_arg *); @@ -291,8 +295,9 @@ return (UMATCH_NONE); } -#if 0 - if(mad->bType != UMCPC_ACM_TYPE_AB5){ +#ifndef UFOMA_HANDSFREE + if((mad->bType == UMCPC_ACM_TYPE_AB5)|| + (mad->bType == UMCPC_ACM_TYPE_AB6)){ return UMATCH_NONE; } #endif @@ -375,12 +380,17 @@ } } printf("\n"); - if((mad->bType == UMCPC_ACM_TYPE_AB5) ||(mad->bType == UMCPC_ACM_TYPE_AB6)){ +#ifdef UFOMA_HANDSFREE /*These does not have data interface*/ sc->sc_is_ucom = 0; ufoma_init_pseudo_ucom(sc); +#else + /*Should not happen*/ + goto error; +#endif + }else{ if(ufoma_init_modem(sc, uaa)){ goto error; @@ -429,10 +439,15 @@ sc->sc_ucom.sc_dying = 1; usbd_abort_pipe(sc->sc_notify_pipe); usbd_close_pipe(sc->sc_notify_pipe); - if(sc->sc_is_ucom) + if(sc->sc_is_ucom){ ucom_detach(&sc->sc_ucom); - else + } +#ifdef UFOMA_HANDSFREE + else{ ttyfree(sc->sc_ucom.sc_tty); + } + +#endif free(sc->sc_modetable, M_USBDEV); return rv; } @@ -547,7 +562,7 @@ return 0; } - +#ifdef UFOMA_HANDSFREE static inline void ufoma_setup_msg_req(struct ufoma_softc *sc, usb_device_request_t *req) { req->bmRequestType = UT_READ_CLASS_INTERFACE; @@ -583,15 +598,18 @@ mtx_unlock(&sc->sc_mtx); } - +#endif static void ufoma_intr(usbd_xfer_handle xfer, usbd_private_handle priv, usbd_status status) { struct ufoma_softc *sc = priv; unsigned int a; struct ucom_softc *ucom =&sc->sc_ucom; + u_char mstatus; +#ifdef UFOMA_HANDSFREE usb_device_request_t req; + ufoma_setup_msg_req(sc, &req); - u_char mstatus; +#endif if (sc->sc_ucom.sc_dying) return; @@ -616,6 +634,7 @@ return; } switch(sc->sc_notify_buf.bNotification){ +#ifdef UFOMA_HANDSFREE case UCDC_N_RESPONSE_AVAILABLE: if(sc->sc_is_ucom){ printf("%s:wrong response request?\n", device_get_nameunit(ucom->sc_dev)); @@ -632,6 +651,7 @@ sc->sc_nummsg++; mtx_unlock(&sc->sc_mtx); break; +#endif case UCDC_N_SERIAL_STATE: if(!sc->sc_is_ucom){ >>> TRUNCATED FOR MAIL (1000 lines) <<<