PERFORCE change 147826 for review
Ed Schouten
ed at FreeBSD.org
Tue Aug 19 19:29:06 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=147826
Change 147826 by ed at 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 <sys/cdefs.h>
-__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 <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
-#include <sys/types.h>
#include <sys/socket.h>
#include <sys/malloc.h>
+#include <net/if.h>
+#else
+#include <stdlib.h>
+#endif
+
+#include <sys/types.h>
-#include <net/if.h>
#include <net/bpf.h>
#include <net/bpf_jitter.h>
@@ -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 <sys/cdefs.h>
-__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 <sys/param.h>
#include <sys/systm.h>
@@ -47,6 +49,13 @@
#include <ddb/ddb.h>
#include <ddb/db_output.h>
+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 <sys/cdefs.h>
-__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 <sys/param.h>
#include <sys/systm.h>
@@ -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 <sys/cdefs.h>
-__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 <damien.bergamini at free.fr>
@@ -18,7 +18,7 @@
*/
#include <sys/cdefs.h>
-__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 <sys/cdefs.h>
-__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 <imp at freebsd.org>.
@@ -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) <<<
More information about the p4-projects
mailing list