From owner-svn-src-projects@FreeBSD.ORG Thu Oct 2 16:33:02 2014 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6C68196E; Thu, 2 Oct 2014 16:33:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 54E63C99; Thu, 2 Oct 2014 16:33:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id s92GX297071920; Thu, 2 Oct 2014 16:33:02 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id s92GWrdK071817; Thu, 2 Oct 2014 16:32:53 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201410021632.s92GWrdK071817@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Thu, 2 Oct 2014 16:32:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r272415 - in projects/release-vmimage: . bin/pkill/tests etc etc/devd gnu/lib/csu gnu/lib/libgcc gnu/lib/libgcov gnu/lib/libstdc++ gnu/lib/libsupc++ gnu/usr.bin/cc gnu/usr.bin/cc/cc_too... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Oct 2014 16:33:02 -0000 Author: gjb Date: Thu Oct 2 16:32:52 2014 New Revision: 272415 URL: https://svnweb.freebsd.org/changeset/base/272415 Log: Reintegrate head@r272414 Sponsored by: The FreeBSD Foundation Added: projects/release-vmimage/sys/arm/arm/syscall.c - copied unchanged from r272413, head/sys/arm/arm/syscall.c projects/release-vmimage/sys/dev/ath/if_ath_pci_devlist.h - copied unchanged from r272413, head/sys/dev/ath/if_ath_pci_devlist.h projects/release-vmimage/sys/dev/uart/uart_dev_msm.c - copied unchanged from r272413, head/sys/dev/uart/uart_dev_msm.c projects/release-vmimage/sys/dev/uart/uart_dev_msm.h - copied unchanged from r272413, head/sys/dev/uart/uart_dev_msm.h projects/release-vmimage/sys/dev/xen/xenstore/ - copied from r272413, head/sys/dev/xen/xenstore/ projects/release-vmimage/sys/x86/xen/xen_msi.c - copied unchanged from r272413, head/sys/x86/xen/xen_msi.c projects/release-vmimage/sys/x86/xen/xen_pci.c - copied unchanged from r272413, head/sys/x86/xen/xen_pci.c projects/release-vmimage/sys/xen/xen_msi.h - copied unchanged from r272413, head/sys/xen/xen_msi.h Deleted: projects/release-vmimage/lib/libc/arm/Symbol_oabi.map projects/release-vmimage/sys/xen/xenstore/xenstore.c projects/release-vmimage/sys/xen/xenstore/xenstore_dev.c Modified: projects/release-vmimage/Makefile.inc1 projects/release-vmimage/ObsoleteFiles.inc projects/release-vmimage/bin/pkill/tests/pgrep-j_test.sh projects/release-vmimage/bin/pkill/tests/pkill-j_test.sh projects/release-vmimage/etc/devd/usb.conf projects/release-vmimage/etc/rc.subr projects/release-vmimage/gnu/lib/csu/Makefile projects/release-vmimage/gnu/lib/libgcc/Makefile projects/release-vmimage/gnu/lib/libgcov/Makefile projects/release-vmimage/gnu/lib/libstdc++/Makefile projects/release-vmimage/gnu/lib/libsupc++/Makefile projects/release-vmimage/gnu/usr.bin/cc/Makefile.inc projects/release-vmimage/gnu/usr.bin/cc/cc_tools/Makefile projects/release-vmimage/lib/clang/clang.build.mk projects/release-vmimage/lib/libc/arm/Makefile.inc projects/release-vmimage/lib/libc/arm/aeabi/Makefile.inc projects/release-vmimage/lib/libc/arm/gen/Makefile.inc projects/release-vmimage/lib/libc/powerpc/gen/_ctx_start.S projects/release-vmimage/lib/libc/powerpc/gen/_setjmp.S projects/release-vmimage/lib/libc/powerpc/gen/eabi.S projects/release-vmimage/lib/libc/powerpc/gen/fabs.S projects/release-vmimage/lib/libc/powerpc/gen/setjmp.S projects/release-vmimage/lib/libc/powerpc/gen/sigsetjmp.S projects/release-vmimage/lib/libc/powerpc/sys/brk.S projects/release-vmimage/lib/libc/powerpc/sys/exect.S projects/release-vmimage/lib/libc/powerpc/sys/pipe.S projects/release-vmimage/lib/libc/powerpc/sys/ptrace.S projects/release-vmimage/lib/libc/powerpc/sys/sbrk.S projects/release-vmimage/lib/libc/powerpc64/gen/_ctx_start.S projects/release-vmimage/lib/libc/powerpc64/gen/_setjmp.S projects/release-vmimage/lib/libc/powerpc64/gen/fabs.S projects/release-vmimage/lib/libc/powerpc64/gen/setjmp.S projects/release-vmimage/lib/libc/powerpc64/gen/sigsetjmp.S projects/release-vmimage/lib/libc/powerpc64/sys/brk.S projects/release-vmimage/lib/libc/powerpc64/sys/exect.S projects/release-vmimage/lib/libc/powerpc64/sys/pipe.S projects/release-vmimage/lib/libc/powerpc64/sys/ptrace.S projects/release-vmimage/lib/libc/powerpc64/sys/sbrk.S projects/release-vmimage/lib/libc/quad/Makefile.inc projects/release-vmimage/lib/libc/stdtime/strptime.c projects/release-vmimage/lib/libc/sys/connect.2 projects/release-vmimage/lib/libcompiler_rt/Makefile projects/release-vmimage/lib/libpam/modules/pam_login_access/pam_login_access.c projects/release-vmimage/lib/libstand/Makefile projects/release-vmimage/libexec/rtld-elf/Makefile projects/release-vmimage/rescue/rescue/Makefile projects/release-vmimage/sbin/fdisk_pc98/Makefile projects/release-vmimage/sbin/ifconfig/ifconfig.8 projects/release-vmimage/sbin/ifconfig/ifconfig.c projects/release-vmimage/sbin/ifconfig/iflagg.c projects/release-vmimage/share/man/man4/icmp.4 projects/release-vmimage/share/man/man4/ipheth.4 projects/release-vmimage/share/man/man4/lagg.4 projects/release-vmimage/share/man/man4/sfxge.4 projects/release-vmimage/share/man/man4/udplite.4 projects/release-vmimage/share/man/man4/urtwn.4 projects/release-vmimage/share/mk/bsd.dep.mk projects/release-vmimage/share/mk/bsd.endian.mk projects/release-vmimage/share/mk/bsd.port.mk projects/release-vmimage/share/mk/bsd.port.subdir.mk projects/release-vmimage/share/mk/src.opts.mk projects/release-vmimage/sys/amd64/amd64/machdep.c projects/release-vmimage/sys/amd64/vmm/intel/vmx.c projects/release-vmimage/sys/arm/allwinner/timer.c projects/release-vmimage/sys/arm/arm/physmem.c projects/release-vmimage/sys/arm/arm/trap.c projects/release-vmimage/sys/arm/include/sysreg.h projects/release-vmimage/sys/boot/Makefile.pc98 projects/release-vmimage/sys/boot/arm/ixp425/boot2/Makefile projects/release-vmimage/sys/boot/i386/boot2/Makefile projects/release-vmimage/sys/boot/libstand32/Makefile projects/release-vmimage/sys/boot/pc98/boot2/Makefile projects/release-vmimage/sys/boot/pc98/cdboot/cdboot.S projects/release-vmimage/sys/boot/pc98/libpc98/Makefile projects/release-vmimage/sys/boot/pc98/loader/Makefile projects/release-vmimage/sys/cam/ctl/ctl.c projects/release-vmimage/sys/cam/ctl/ctl_tpc.c projects/release-vmimage/sys/cam/scsi/scsi_xpt.c projects/release-vmimage/sys/cddl/boot/zfs/lz4.c projects/release-vmimage/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/release-vmimage/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/release-vmimage/sys/conf/Makefile.arm projects/release-vmimage/sys/conf/files projects/release-vmimage/sys/conf/files.amd64 projects/release-vmimage/sys/conf/files.arm projects/release-vmimage/sys/conf/files.i386 projects/release-vmimage/sys/conf/kern.opts.mk projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300.h projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.h projects/release-vmimage/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_reset.c projects/release-vmimage/sys/dev/acpica/Osd/OsdSchedule.c projects/release-vmimage/sys/dev/acpica/acpi_pci.c projects/release-vmimage/sys/dev/ath/ath_hal/ah.c projects/release-vmimage/sys/dev/ath/ath_hal/ah.h projects/release-vmimage/sys/dev/ath/ath_hal/ah_internal.h projects/release-vmimage/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar9001/ar9130_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c projects/release-vmimage/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c projects/release-vmimage/sys/dev/ath/if_ath.c projects/release-vmimage/sys/dev/ath/if_ath_lna_div.c projects/release-vmimage/sys/dev/ath/if_ath_pci.c projects/release-vmimage/sys/dev/ath/if_athvar.h projects/release-vmimage/sys/dev/bge/if_bge.c projects/release-vmimage/sys/dev/ce/if_ce.c projects/release-vmimage/sys/dev/cp/if_cp.c projects/release-vmimage/sys/dev/ctau/if_ct.c projects/release-vmimage/sys/dev/cx/if_cx.c projects/release-vmimage/sys/dev/e1000/if_em.c projects/release-vmimage/sys/dev/e1000/if_lem.c projects/release-vmimage/sys/dev/fxp/if_fxp.c projects/release-vmimage/sys/dev/ie/if_ie.c projects/release-vmimage/sys/dev/iscsi_initiator/isc_cam.c projects/release-vmimage/sys/dev/ixgb/if_ixgb.c projects/release-vmimage/sys/dev/ixgbe/ixgbe.c projects/release-vmimage/sys/dev/ixgbe/ixv.c projects/release-vmimage/sys/dev/ixl/i40e_osdep.h projects/release-vmimage/sys/dev/ixl/if_ixl.c projects/release-vmimage/sys/dev/ixl/if_ixlv.c projects/release-vmimage/sys/dev/nfe/if_nfe.c projects/release-vmimage/sys/dev/sfxge/common/efsys.h projects/release-vmimage/sys/dev/sfxge/sfxge.c projects/release-vmimage/sys/dev/sfxge/sfxge.h projects/release-vmimage/sys/dev/sfxge/sfxge_dma.c projects/release-vmimage/sys/dev/sfxge/sfxge_ev.c projects/release-vmimage/sys/dev/sfxge/sfxge_intr.c projects/release-vmimage/sys/dev/sfxge/sfxge_port.c projects/release-vmimage/sys/dev/sfxge/sfxge_rx.c projects/release-vmimage/sys/dev/sfxge/sfxge_rx.h projects/release-vmimage/sys/dev/sfxge/sfxge_tx.c projects/release-vmimage/sys/dev/sfxge/sfxge_tx.h projects/release-vmimage/sys/dev/sound/usb/uaudio.c projects/release-vmimage/sys/dev/sound/usb/uaudioreg.h projects/release-vmimage/sys/dev/uart/uart.h projects/release-vmimage/sys/dev/uart/uart_bus_fdt.c projects/release-vmimage/sys/dev/uart/uart_dev_imx.c projects/release-vmimage/sys/dev/usb/controller/xhci.c projects/release-vmimage/sys/dev/usb/usbdevs projects/release-vmimage/sys/dev/usb/wlan/if_urtwn.c projects/release-vmimage/sys/dev/xen/balloon/balloon.c projects/release-vmimage/sys/dev/xen/blkback/blkback.c projects/release-vmimage/sys/fs/autofs/autofs.c projects/release-vmimage/sys/fs/autofs/autofs.h projects/release-vmimage/sys/fs/autofs/autofs_vfsops.c projects/release-vmimage/sys/fs/autofs/autofs_vnops.c projects/release-vmimage/sys/geom/geom_dev.c projects/release-vmimage/sys/i386/i386/machdep.c projects/release-vmimage/sys/kern/kern_exec.c projects/release-vmimage/sys/kern/kern_mbuf.c projects/release-vmimage/sys/kern/kern_poll.c projects/release-vmimage/sys/kern/tty.c projects/release-vmimage/sys/kern/vfs_subr.c projects/release-vmimage/sys/mips/atheros/ar724x_pci.c projects/release-vmimage/sys/modules/zfs/Makefile projects/release-vmimage/sys/net/ieee8023ad_lacp.c projects/release-vmimage/sys/net/if.c projects/release-vmimage/sys/net/if_lagg.c projects/release-vmimage/sys/net/if_lagg.h projects/release-vmimage/sys/net/if_var.h projects/release-vmimage/sys/net/if_vlan.c projects/release-vmimage/sys/net/ifq.h projects/release-vmimage/sys/net/radix.c projects/release-vmimage/sys/netinet/in_mcast.c projects/release-vmimage/sys/netinet/in_rmx.c projects/release-vmimage/sys/netinet/ip_icmp.c projects/release-vmimage/sys/netinet/ip_output.c projects/release-vmimage/sys/netinet/udp_usrreq.c projects/release-vmimage/sys/netinet6/in6.h projects/release-vmimage/sys/netinet6/in6_cksum.c projects/release-vmimage/sys/netinet6/in6_rmx.c projects/release-vmimage/sys/netinet6/ip6_forward.c projects/release-vmimage/sys/netinet6/ip6_output.c projects/release-vmimage/sys/netinet6/udp6_usrreq.c projects/release-vmimage/sys/netipsec/ipsec_input.c projects/release-vmimage/sys/netpfil/pf/pf_table.c projects/release-vmimage/sys/pc98/conf/GENERIC projects/release-vmimage/sys/sys/fdcio.h projects/release-vmimage/sys/sys/vnode.h projects/release-vmimage/sys/x86/include/init.h projects/release-vmimage/sys/x86/x86/local_apic.c projects/release-vmimage/sys/x86/xen/pv.c projects/release-vmimage/sys/x86/xen/xen_intr.c projects/release-vmimage/sys/x86/xen/xen_nexus.c projects/release-vmimage/sys/xen/interface/physdev.h projects/release-vmimage/sys/xen/xen_intr.h projects/release-vmimage/sys/xen/xenstore/xenstore_internal.h projects/release-vmimage/tools/sched/schedgraph.py projects/release-vmimage/usr.bin/at/at.c projects/release-vmimage/usr.bin/mkimg/Makefile projects/release-vmimage/usr.bin/mkimg/image.c projects/release-vmimage/usr.bin/mkimg/vhd.c projects/release-vmimage/usr.bin/sort/sort.c projects/release-vmimage/usr.bin/systat/ifstat.c projects/release-vmimage/usr.sbin/bsdinstall/distextract/distextract.c projects/release-vmimage/usr.sbin/bsdinstall/distfetch/distfetch.c projects/release-vmimage/usr.sbin/bsdinstall/scripts/zfsboot projects/release-vmimage/usr.sbin/fdread/fdutil.c Directory Properties: projects/release-vmimage/ (props changed) projects/release-vmimage/etc/ (props changed) projects/release-vmimage/gnu/lib/ (props changed) projects/release-vmimage/gnu/usr.bin/cc/cc_tools/ (props changed) projects/release-vmimage/lib/libc/ (props changed) projects/release-vmimage/lib/libc/stdtime/ (props changed) projects/release-vmimage/sbin/ (props changed) projects/release-vmimage/share/ (props changed) projects/release-vmimage/share/man/man4/ (props changed) projects/release-vmimage/sys/ (props changed) projects/release-vmimage/sys/amd64/vmm/ (props changed) projects/release-vmimage/sys/boot/ (props changed) projects/release-vmimage/sys/cddl/contrib/opensolaris/ (props changed) projects/release-vmimage/sys/conf/ (props changed) projects/release-vmimage/usr.bin/mkimg/ (props changed) Modified: projects/release-vmimage/Makefile.inc1 ============================================================================== --- projects/release-vmimage/Makefile.inc1 Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/Makefile.inc1 Thu Oct 2 16:32:52 2014 (r272415) @@ -336,11 +336,11 @@ XFLAGS+= -B${CROSS_BINUTILS_PREFIX} .else XFLAGS+= -B${WORLDTMP}/usr/bin .endif -.if ${TARGET} == "arm" && ${MK_ARM_EABI} != "no" -.if ${TARGET_ARCH:M*eb*} == "" -TARGET_ABI= gnueabi -.elif ${TARGET_ARCH} == "armv6hf" +.if ${TARGET} == "arm" +.if ${TARGET_ARCH:M*hf*} != "" TARGET_ABI= gnueabihf +.else +TARGET_ABI= gnueabi .endif .endif TARGET_ABI?= unknown Modified: projects/release-vmimage/ObsoleteFiles.inc ============================================================================== --- projects/release-vmimage/ObsoleteFiles.inc Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/ObsoleteFiles.inc Thu Oct 2 16:32:52 2014 (r272415) @@ -43,6 +43,9 @@ OLD_FILES+=usr/share/man/man9/sleepq_cal OLD_FILES+=usr/share/man/man9/sleepq_catch_signals.9.gz # 20140917: hv_kvpd rc.d script removed in favor of devd configuration OLD_FILES+=etc/rc.d/hv_kvpd +# 20140917: libnv was accidentally being installed to /usr/lib instead of /lib +OLD_LIBS+=usr/lib/libnv.a +OLD_LIBS+=usr/lib/libnv.so.0 # 20140814: libopie version bump OLD_LIBS+=usr/lib/libopie.so.7 OLD_LIBS+=usr/lib32/libopie.so.7 Modified: projects/release-vmimage/bin/pkill/tests/pgrep-j_test.sh ============================================================================== --- projects/release-vmimage/bin/pkill/tests/pgrep-j_test.sh Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/bin/pkill/tests/pgrep-j_test.sh Thu Oct 2 16:32:52 2014 (r272415) @@ -1,7 +1,23 @@ #!/bin/sh # $FreeBSD$ -base=`basename $0` +jail_name_to_jid() +{ + local check_name="$1" + ( + line="$(jls -n 2> /dev/null | grep name=$check_name )" + for nv in $line; do + local name="${nv%=*}" + if [ "${name}" = "jid" ]; then + eval $nv + echo $jid + break + fi + done + ) +} + +base=pgrep_j_test echo "1..3" @@ -9,21 +25,25 @@ name="pgrep -j " if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - jail / $base-1 127.0.0.1 $sleep 5 & - chpid=$! - jail / $base-2 127.0.0.1 $sleep 5 & - chpid2=$! - $sleep 5 & - chpid3=$! - sleep 0.5 - jid=`jls | awk "/127\\.0\\.0\\.1.*${base}-1/ {print \$1}"` - pid=`pgrep -f -j $jid $sleep` - if [ "$pid" = "$chpid" ]; then + jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_1_1.pid $sleep 5 & + + jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_1_2.pid $sleep 5 & + + jid1=$(jail_name_to_jid ${base}_1_1) + jid2=$(jail_name_to_jid ${base}_1_2) + jid="${jid1},${jid2}" + pid1="$(pgrep -f -x -j $jid "$sleep 5" | sort)" + pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_1_1.pid)" \ + $(cat ${PWD}/${base}_1_2.pid) | sort) + if [ "$pid1" = "$pid2" ]; then echo "ok 1 - $name" else echo "not ok 1 - $name" fi - kill $chpid $chpid2 $chpid3 + [ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid) + [ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid) rm -f $sleep else echo "ok 1 - $name # skip Test needs uid 0." @@ -33,21 +53,23 @@ name="pgrep -j any" if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - jail / $base-1 127.0.0.1 $sleep 5 & - chpid=$! - jail / $base-2 127.0.0.1 $sleep 5 & - chpid2=$! - $sleep 5 & - chpid3=$! - sleep 0.5 - pids=`pgrep -f -j any $sleep | sort` - refpids=`{ echo $chpid; echo $chpid2; } | sort` - if [ "$pids" = "$refpids" ]; then + jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_2_1.pid $sleep 5 & + + jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_2_2.pid $sleep 5 & + + sleep 2 + pid1="$(pgrep -f -x -j any "$sleep 5" | sort)" + pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_2_1.pid)" \ + $(cat ${PWD}/${base}_2_2.pid) | sort) + if [ "$pid1" = "$pid2" ]; then echo "ok 2 - $name" else echo "not ok 2 - $name" fi - kill $chpid $chpid2 $chpid3 + [ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid) + [ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid) rm -f $sleep else echo "ok 2 - $name # skip Test needs uid 0." @@ -57,19 +79,19 @@ name="pgrep -j none" if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - $sleep 5 & - chpid=$! - jail / $base 127.0.0.1 $sleep 5 & - chpid2=$! - sleep 0.5 - pid=`pgrep -f -j none $sleep` - if [ "$pid" = "$chpid" ]; then + daemon -p ${PWD}/${base}_3_1.pid $sleep 5 & + jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_3_2.pid $sleep 5 & + sleep 2 + pid="$(pgrep -f -x -j none "$sleep 5")" + if [ "$pid" = "$(cat ${PWD}/${base}_3_1.pid)" ]; then echo "ok 3 - $name" else echo "not ok 3 - $name" fi - kill $chpid $chpid2 rm -f $sleep + [ -f ${PWD}/${base}_3_1.pid ] && kill $(cat $PWD/${base}_3_1.pid) + [ -f ${PWD}/${base}_3_2.pid ] && kill $(cat $PWD/${base}_3_2.pid) else echo "ok 3 - $name # skip Test needs uid 0." fi Modified: projects/release-vmimage/bin/pkill/tests/pkill-j_test.sh ============================================================================== --- projects/release-vmimage/bin/pkill/tests/pkill-j_test.sh Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/bin/pkill/tests/pkill-j_test.sh Thu Oct 2 16:32:52 2014 (r272415) @@ -1,7 +1,23 @@ #!/bin/sh # $FreeBSD$ -base=`basename $0` +jail_name_to_jid() +{ + local check_name="$1" + ( + line="$(jls -n 2> /dev/null | grep name=$check_name )" + for nv in $line; do + local name="${nv%=*}" + if [ "${name}" = "jid" ]; then + eval $nv + echo $jid + break + fi + done + ) +} + +base=pkill_j_test echo "1..3" @@ -9,21 +25,28 @@ name="pkill -j " if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - jail / $base-1 127.0.0.1 $sleep 5 & - chpid=$! - jail / $base-2 127.0.0.1 $sleep 5 & - chpid2=$! + jail -c path=/ name=${base}_1_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_1_1.pid $sleep 5 & + + jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_1_2.pid $sleep 5 & + $sleep 5 & - chpid3=$! sleep 0.5 - jid=`jls | awk "/127\\.0\\.0\\.1.*${base}-1/ {print \$1}"` - if pkill -f -j $jid $sleep && sleep 0.5 && - ! kill $chpid && kill $chpid2 $chpid3; then + jid1=$(jail_name_to_jid ${base}_1_1) + jid2=$(jail_name_to_jid ${base}_1_2) + jid="${jid1},${jid2}" + if pkill -f -j "$jid" $sleep && sleep 0.5 && + ! -f ${PWD}/${base}_1_1.pid && + ! -f ${PWD}/${base}_1_2.pid ; then echo "ok 1 - $name" else echo "not ok 1 - $name" fi 2>/dev/null rm -f $sleep + [ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid) + [ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid) + wait else echo "ok 1 - $name # skip Test needs uid 0." fi @@ -32,20 +55,26 @@ name="pkill -j any" if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - jail / $base-1 127.0.0.1 $sleep 5 & - chpid=$! - jail / $base-2 127.0.0.1 $sleep 5 & - chpid2=$! + jail -c path=/ name=${base}_2_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_2_1.pid $sleep 5 & + + jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_2_2.pid $sleep 5 & + $sleep 5 & - chpid3=$! sleep 0.5 + chpid3=$! if pkill -f -j any $sleep && sleep 0.5 && - ! kill $chpid && ! kill $chpid2 && kill $chpid3; then + [ ! -f ${PWD}/${base}_2_1.pid -a + ! -f ${PWD}/${base}_2_2.pid ] && kill $chpid3; then echo "ok 2 - $name" else echo "not ok 2 - $name" fi 2>/dev/null rm -f $sleep + [ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid) + [ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid) + wait else echo "ok 2 - $name # skip Test needs uid 0." fi @@ -54,18 +83,20 @@ name="pkill -j none" if [ `id -u` -eq 0 ]; then sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep - $sleep 5 & - chpid=$! - jail / $base 127.0.0.1 $sleep 5 & - chpid2=$! - sleep 0.5 - if pkill -f -j none $sleep && sleep 0.5 && - ! kill $chpid && kill $chpid2; then + daemon -p ${PWD}/${base}_3_1.pid $sleep 5 + jail -c path=/ name=${base}_3_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_3_2.pid $sleep 5 & + sleep 1 + if pkill -f -j none "$sleep 5" && sleep 1 && + [ ! -f ${PWD}/${base}_3_1.pid -a -f ${PWD}/${base}_3_2.pid ] ; then echo "ok 3 - $name" else + ls ${PWD}/*.pid echo "not ok 3 - $name" fi 2>/dev/null rm -f $sleep + [ -f ${PWD}/${base}_3_1.pid ] && kill $(cat ${base}_3_1.pid) + [ -f ${PWD}/${base}_3_2.pid ] && kill $(cat ${base}_3_2.pid) else echo "ok 3 - $name # skip Test needs uid 0." fi Modified: projects/release-vmimage/etc/devd/usb.conf ============================================================================== --- projects/release-vmimage/etc/devd/usb.conf Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/etc/devd/usb.conf Thu Oct 2 16:32:52 2014 (r272415) @@ -65,7 +65,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x03f0"; - match "product" "(0x2016|0x2116|0x2216|0x3016|0x3116)"; + match "product" "(0x2016|0x2116|0x2216)"; + action "kldload -n uipaq"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x03f0"; + match "product" "(0x241d|0x251d)"; + action "kldload -n u3g"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x03f0"; + match "product" "(0x3016|0x3116)"; action "kldload -n uipaq"; }; @@ -129,7 +145,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0403"; - match "product" "(0x6001|0x6004|0x6006|0x6006|0x6010|0x6011|0x6014|0x6015|0x8372|0x9378|0x9379|0x937a|0x937c|0x9868|0x9e90|0x9f80|0xa6d0|0xabb8|0xb810|0xb811|0xb812|0xbaf8|0xbbe2|0xbca0|0xbca1|0xbca2|0xbca4|0xbcd8|0xbcd9|0xbcda|0xbdc8|0xbfd8|0xbfd9|0xbfda|0xbfdb|0xbfdc|0xc7d0|0xc850|0xc991|0xcaa0|0xcc48|0xcc49|0xcc4a|0xd010|0xd011|0xd012|0xd013|0xd014|0xd015|0xd016|0xd017|0xd070|0xd071|0xd388|0xd389|0xd38a|0xd38b|0xd38c|0xd38d|0xd38e|0xd38f|0xd578|0xd678|0xd738|0xd780|0xdaf8|0xdaf9|0xdafa|0xdafb|0xdafc|0xdafd|0xdafe|0xdaff|0xdc00|0xdc01|0xdd20|0xdf28|0xdf30|0xdf31|0xdf32|0xdf33|0xdf35|0xe000|0xe001|0xe002|0xe004|0xe006|0xe008|0xe009|0xe00a|0xe050|0xe0e8|0xe0e9|0xe0ea|0xe0eb|0xe0ec|0xe0ed|0xe0ee|0xe0ef|0xe0f0|0xe0f1|0xe0f2|0xe0f3|0xe0f4|0xe0f5|0xe0f6|0xe0f7|0xe40b|0xe520|0xe548|0xe6c8|0xe700|0xe729|0xe808|0xe809|0xe80a|0xe80b|0xe80c|0xe80d|0xe80e|0xe80f|0xe888|0xe889|0xe88a|0xe88b|0xe88c|0xe88d|0xe88e|0xe88f|0xea90|0xebe0|0xec88|0xec89|0xed22|0xed71|0xed72|0xed73|0xed74|0xee18|0xeee 8|0xeee9|0xeeea|0xeeeb|0xeeec|0xeeed|0xeeee|0xeeef|0xef50|0xef51|0xf068|0xf069|0xf06a|0xf06b|0xf06c|0xf06d|0xf06e|0xf06f|0xf070|0xf0c0|0xf0c8|0xf208|0xf2d0|0xf3c0|0xf3c1|0xf3c2|0xf448|0xf449|0xf44a|0xf44b|0xf44c|0xf460|0xf608|0xf60b|0xf680|0xf850|0xf857|0xf9d0|0xf9d1|0xf9d2|0xf9d3|0xf9d4|0xf9d5|0xfa00|0xfa01|0xfa02|0xfa03|0xfa04|0xfa05|0xfa06|0xfa10|0xfa33|0xfa88|0xfad0|0xfaf0|0xfb58|0xfb59|0xfb5a|0xfb5b|0xfb5c|0xfb5d|0xfb5e|0xfb5f|0xfb80|0xfb99|0xfbfa|0xfc08|0xfc09|0xfc0a|0xfc0b|0xfc0c|0xfc0d|0xfc0e|0xfc0f|0xfc60|0xfc70|0xfc71|0xfc72|0xfc73|0xfc82|0xfd60|0xfe38|0xff00|0xff18|0xff1c|0xff1d|0xff20|0xff38|0xff39|0xff3a|0xff3b|0xff3c|0xff3d|0xff3e|0xff3f|0xffa8)"; + match "product" "(0x6001|0x6004|0x6006|0x6006|0x6010|0x6011|0x6014|0x6015|0x8372|0x9378|0x9379|0x937a|0x937c|0x9868|0x9e90|0x9f80|0xa6d0|0xa6d1|0xabb8|0xb810|0xb811|0xb812|0xbaf8|0xbbe2|0xbca0|0xbca1|0xbca2|0xbca4|0xbcd8|0xbcd9|0xbcda|0xbdc8|0xbfd8|0xbfd9|0xbfda|0xbfdb|0xbfdc|0xc7d0|0xc850|0xc991|0xcaa0|0xcc48|0xcc49|0xcc4a|0xd010|0xd011|0xd012|0xd013|0xd014|0xd015|0xd016|0xd017|0xd070|0xd071|0xd388|0xd389|0xd38a|0xd38b|0xd38c|0xd38d|0xd38e|0xd38f|0xd578|0xd678|0xd738|0xd780|0xdaf8|0xdaf9|0xdafa|0xdafb|0xdafc|0xdafd|0xdafe|0xdaff|0xdc00|0xdc01|0xdd20|0xdf28|0xdf30|0xdf31|0xdf32|0xdf33|0xdf35|0xe000|0xe001|0xe002|0xe004|0xe006|0xe008|0xe009|0xe00a|0xe050|0xe0e8|0xe0e9|0xe0ea|0xe0eb|0xe0ec|0xe0ed|0xe0ee|0xe0ef|0xe0f0|0xe0f1|0xe0f2|0xe0f3|0xe0f4|0xe0f5|0xe0f6|0xe0f7|0xe40b|0xe520|0xe548|0xe6c8|0xe700|0xe729|0xe808|0xe809|0xe80a|0xe80b|0xe80c|0xe80d|0xe80e|0xe80f|0xe888|0xe889|0xe88a|0xe88b|0xe88c|0xe88d|0xe88e|0xe88f|0xea90|0xebe0|0xec88|0xec89|0xed22|0xed71|0xed72|0xed73|0xed74|0xee1 8|0xeee8|0xeee9|0xeeea|0xeeeb|0xeeec|0xeeed|0xeeee|0xeeef|0xef50|0xef51|0xf068|0xf069|0xf06a|0xf06b|0xf06c|0xf06d|0xf06e|0xf06f|0xf070|0xf0c0|0xf0c8|0xf208|0xf2d0|0xf3c0|0xf3c1|0xf3c2|0xf448|0xf449|0xf44a|0xf44b|0xf44c|0xf460|0xf608|0xf60b|0xf680|0xf850|0xf857|0xf9d0|0xf9d1|0xf9d2|0xf9d3|0xf9d4|0xf9d5|0xfa00|0xfa01|0xfa02|0xfa03|0xfa04|0xfa05|0xfa06|0xfa10|0xfa33|0xfa88|0xfad0|0xfaf0|0xfb58|0xfb59|0xfb5a|0xfb5b|0xfb5c|0xfb5d|0xfb5e|0xfb5f|0xfb80|0xfb99|0xfbfa|0xfc08|0xfc09|0xfc0a|0xfc0b|0xfc0c|0xfc0d|0xfc0e|0xfc0f|0xfc60|0xfc70|0xfc71|0xfc72|0xfc73|0xfc82|0xfd60|0xfe38|0xff00|0xff18|0xff1c|0xff1d|0xff20|0xff38|0xff39|0xff3a|0xff3b|0xff3c|0xff3d|0xff3e|0xff3f|0xffa8)"; action "kldload -n uftdi"; }; @@ -1057,7 +1073,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0586"; - match "product" "(0x3416|0x341a)"; + match "product" "(0x3416|0x341a|0x341e)"; action "kldload -n if_run"; }; @@ -1097,7 +1113,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x05ac"; - match "product" "(0x020d|0x020e|0x020f|0x0215|0x0217|0x0218|0x0219|0x021a|0x021b|0x021c)"; + match "product" "(0x020d|0x020e|0x020f|0x0210|0x0214|0x0215|0x0216|0x0217|0x0218|0x0219|0x021a|0x021b|0x021c)"; action "kldload -n atp"; }; @@ -2353,7 +2369,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; - match "product" "(0x17b5|0x17cb)"; + match "product" "0x17b5"; + action "kldload -n ng_ubt"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x17ba"; + action "kldload -n if_urtwn"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x17cb"; action "kldload -n ng_ubt"; }; @@ -2481,7 +2513,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; - match "product" "(0x018a|0x317f)"; + match "product" "(0x0179|0x018a|0x317f)"; action "kldload -n if_urtwn"; }; @@ -2513,7 +2545,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; - match "product" "(0x8176|0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; + match "product" "(0x8176|0x8176|0x8177|0x8178|0x8179|0x817a|0x817b|0x817c|0x817d|0x817e)"; action "kldload -n if_urtwn"; }; @@ -2929,6 +2961,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; + match "product" "0x0072"; + action "kldload -n if_axge"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; match "product" "0x061c"; action "kldload -n if_axe"; }; @@ -3577,7 +3617,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x12d1"; - match "product" "(0x1001|0x1003|0x1004|0x1401|0x1402|0x1403|0x1404|0x1405|0x1406|0x1407|0x1408|0x1409|0x140a|0x140b|0x140c|0x140d|0x140e|0x140f|0x1410|0x1411|0x1412|0x1413|0x1414|0x1415|0x1416|0x1417|0x1418|0x1419|0x141a|0x141b|0x141c|0x141d|0x141e|0x141f|0x1420|0x1421|0x1422|0x1423|0x1424|0x1425|0x1426|0x1427|0x1428|0x1429|0x142a|0x142b|0x142c|0x142d|0x142e|0x142f|0x1430|0x1431|0x1432|0x1433|0x1434|0x1435|0x1436|0x1437|0x1438|0x1439|0x143a|0x143b|0x143c|0x143d|0x143e|0x143f|0x1446|0x1464|0x1465|0x14ac|0x14c9|0x14d1|0x14fe|0x1505|0x1506|0x1520|0x1521|0x1803|0x1c05|0x1c0b)"; + match "product" "(0x1001|0x1003|0x1004|0x1401|0x1402|0x1403|0x1404|0x1405|0x1406|0x1407|0x1408|0x1409|0x140a|0x140b|0x140c|0x140d|0x140e|0x140f|0x1410|0x1411|0x1412|0x1413|0x1414|0x1415|0x1416|0x1417|0x1418|0x1419|0x141a|0x141b|0x141c|0x141d|0x141e|0x141f|0x1420|0x1421|0x1422|0x1423|0x1424|0x1425|0x1426|0x1427|0x1428|0x1429|0x142a|0x142b|0x142c|0x142d|0x142e|0x142f|0x1430|0x1431|0x1432|0x1433|0x1434|0x1435|0x1436|0x1437|0x1438|0x1439|0x143a|0x143b|0x143c|0x143d|0x143e|0x143f|0x1446|0x1464|0x1465|0x14ac|0x14c9|0x14d1|0x14fe|0x1505|0x1506|0x1520|0x1521)"; + action "kldload -n u3g"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x12d1"; + match "product" "0x155b"; + action "kldload -n if_cdce"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x12d1"; + match "product" "(0x1803|0x1c05|0x1c0b)"; action "kldload -n u3g"; }; @@ -3753,7 +3809,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1410"; - match "product" "(0x1100|0x1110|0x1120|0x1130|0x1400|0x1410|0x1420|0x1430|0x1450|0x2100|0x2110|0x2120|0x2130|0x2400|0x2410|0x2420|0x4100|0x4400|0x5010|0x5020|0x5041|0x5100|0x6000|0x6002|0x7042)"; + match "product" "(0x1100|0x1110|0x1120|0x1130|0x1400|0x1410|0x1420|0x1430|0x1450|0x2100|0x2110|0x2120|0x2130|0x2400|0x2410|0x2420|0x4100|0x4400|0x5010|0x5020|0x5041|0x5100|0x6000|0x6002|0x7001|0x7031|0x7042)"; action "kldload -n u3g"; }; @@ -4553,7 +4609,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1cf1"; - match "product" "(0x0001|0x0004)"; + match "product" "(0x0001|0x0004|0x0022)"; action "kldload -n uftdi"; }; @@ -4568,6 +4624,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x1d34"; + match "product" "0x0004"; + action "kldload -n uled"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x1d4d"; match "product" "(0x0002|0x000c|0x000e|0x0010)"; action "kldload -n if_run"; @@ -4633,7 +4697,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2001"; - match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d)"; + match "product" "(0x3307|0x3308|0x3309|0x330a|0x330d|0x330f)"; action "kldload -n if_urtwn"; }; @@ -4665,7 +4729,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2001"; - match "product" "(0x3c09|0x3c0a|0x3c15|0x3c1a|0x3c1b|0x3c1f)"; + match "product" "(0x3c09|0x3c0a|0x3c15|0x3c1a|0x3c1b|0x3c1f|0x3c20)"; action "kldload -n if_run"; }; @@ -4689,6 +4753,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2001"; + match "product" "0x4a00"; + action "kldload -n if_axge"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x2001"; match "product" "(0x7e12|0xa805)"; action "kldload -n u3g"; }; @@ -5232,6 +5304,36 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x12d1"; + match "intclass" "0xff"; + match "intsubclass" "0x02"; + match "intprotocol" "0x16"; + action "kldload -n if_cdce"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x12d1"; + match "intclass" "0xff"; + match "intsubclass" "0x02"; + match "intprotocol" "0x46"; + action "kldload -n if_cdce"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x12d1"; + match "intclass" "0xff"; + match "intsubclass" "0x02"; + match "intprotocol" "0x76"; + action "kldload -n if_cdce"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "intclass" "0x02"; match "intsubclass" "0x02"; match "intprotocol" "0x00"; @@ -5399,5 +5501,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2621 USB entries processed +# 2643 USB entries processed Modified: projects/release-vmimage/etc/rc.subr ============================================================================== --- projects/release-vmimage/etc/rc.subr Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/etc/rc.subr Thu Oct 2 16:32:52 2014 (r272415) @@ -68,6 +68,39 @@ list_vars() done; } } +# set_rcvar [var] [defval] [desc] +# +# Echo or define a rc.conf(5) variable name. Global variable +# $rcvars is used. +# +# If no argument is specified, echo "${name}_enable". +# +# If only a var is specified, echo "${var}_enable". +# +# If var and defval are specified, the ${var} is defined as +# rc.conf(5) variable and the default value is ${defvar}. An +# optional argument $desc can also be specified to add a +# description for that. +# +set_rcvar() +{ + local _var + + case $# in + 0) echo ${name}_enable ;; + 1) echo ${1}_enable ;; + *) + debug "set_rcvar: \$$1=$2 is added" \ + " as a rc.conf(5) variable." + _var=$1 + rcvars="${rcvars# } $_var" + eval ${_var}_defval=\"$2\" + shift 2 + eval ${_var}_desc=\"$*\" + ;; + esac +} + # set_rcvar_obsolete oldvar [newvar] [msg] # Define obsolete variable. # Global variable $rcvars_obsolete is used. @@ -76,7 +109,7 @@ set_rcvar_obsolete() { local _var _var=$1 - debug "rcvar_obsolete: \$$1(old) -> \$$2(new) is defined" + debug "set_rcvar_obsolete: \$$1(old) -> \$$2(new) is defined" rcvars_obsolete="${rcvars_obsolete# } $1" eval ${1}_newvar=\"$2\" @@ -1091,8 +1124,8 @@ $command $rc_flags $command_args" echo "" fi echo "#" - # Get unique vars in $rcvar - for _v in $rcvar; do + # Get unique vars in $rcvar $rcvars + for _v in $rcvar $rcvars; do case $v in $_v\ *|\ *$_v|*\ $_v\ *) ;; *) v="${v# } $_v" ;; @@ -1238,7 +1271,7 @@ run_rc_script() unset name command command_args command_interpreter \ extra_commands pidfile procname \ - rcvar rcvars_obsolete required_dirs required_files \ + rcvar rcvars rcvars_obsolete required_dirs required_files \ required_vars eval unset ${_arg}_cmd ${_arg}_precmd ${_arg}_postcmd @@ -1306,7 +1339,7 @@ load_rc_config() done # Set defaults if defined. - for _var in $rcvar; do + for _var in $rcvar $rcvars; do eval _defval=\$${_var}_defval if [ -n "$_defval" ]; then eval : \${$_var:=\$${_var}_defval} Modified: projects/release-vmimage/gnu/lib/csu/Makefile ============================================================================== --- projects/release-vmimage/gnu/lib/csu/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/lib/csu/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -24,7 +24,7 @@ CFLAGS+= -I${GCCLIB}/include -I${GCCDIR} CRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} MKDEP= -DCRT_BEGIN -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/release-vmimage/gnu/lib/libgcc/Makefile ============================================================================== --- projects/release-vmimage/gnu/lib/libgcc/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/lib/libgcc/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -15,7 +15,7 @@ MK_SSP= no .include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt" -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" CFLAGS+= -DTARGET_ARM_EABI .endif @@ -56,7 +56,7 @@ LIB2FUNCS+= _fixuns${mode}si .endfor # Likewise double-word routines. -.if ${TARGET_CPUARCH} != "arm" || ${MK_ARM_EABI} == "no" +.if ${TARGET_CPUARCH} != "arm" # These are implemented in an ARM specific file but will not be filtered out .for mode in sf df xf tf LIB2FUNCS+= _fix${mode}di _fixuns${mode}di @@ -117,14 +117,10 @@ CFLAGS.clang+= -fheinous-gnu-extensions LIB1ASMSRC = lib1funcs.asm LIB1ASMFUNCS = _dvmd_tls _bb_init_func -.if ${MK_ARM_EABI} != "no" LIB2ADDEH = unwind-arm.c libunwind.S pr-support.c unwind-c.c # Some compilers generate __aeabi_ functions libgcc_s is missing DPADD+= ${LIBCOMPILER_RT} LDADD+= -lcompiler_rt -.else -LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c -.endif .endif .if ${TARGET_CPUARCH} == mips @@ -319,7 +315,7 @@ CLEANFILES += cs-*.h option* SHLIB_MKMAP = ${GCCDIR}/mkmap-symver.awk SHLIB_MKMAP_OPTS = SHLIB_MAPFILES = ${GCCDIR}/libgcc-std.ver -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" SHLIB_MAPFILES += ${GCCDIR}/config/arm/libgcc-bpabi.ver .endif VERSION_MAP = libgcc.map Modified: projects/release-vmimage/gnu/lib/libgcov/Makefile ============================================================================== --- projects/release-vmimage/gnu/lib/libgcov/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/lib/libgcov/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -17,7 +17,7 @@ CFLAGS+= -D_PTHREADS -DGTHREAD_USE_WEAK CFLAGS+= -I${.CURDIR}/../../usr.bin/cc/cc_tools \ -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/release-vmimage/gnu/lib/libstdc++/Makefile ============================================================================== --- projects/release-vmimage/gnu/lib/libstdc++/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/lib/libstdc++/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -16,9 +16,6 @@ LIB= stdc++ SHLIB_MAJOR= 6 CFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H -.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no" -CFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 -.endif CFLAGS+= -I${.CURDIR} -I${SUPDIR} -I${GCCDIR} -I${SRCDIR}/include CFLAGS+= -I${GCCLIB}/include -I${SRCDIR}/include -I. CFLAGS+= -frandom-seed=RepeatabilityConsideredGood @@ -596,7 +593,7 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h CLEANFILES+= ${THRHDRS} -.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${MACHINE_CPUARCH} == "arm" unwind.h: ${GCCDIR}/config/arm/unwind-arm.h .else unwind.h: ${GCCDIR}/unwind-generic.h Modified: projects/release-vmimage/gnu/lib/libsupc++/Makefile ============================================================================== --- projects/release-vmimage/gnu/lib/libsupc++/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/lib/libsupc++/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -22,9 +22,6 @@ SRCS+= del_op.cc del_opnt.cc del_opv.cc SRCS+= cp-demangle.c CFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H -.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no" -CFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 -.endif CFLAGS+= -I${GCCLIB}/include -I${SRCDIR} -I${GCCDIR} CFLAGS+= -I${.CURDIR}/../libstdc++ -I. CFLAGS+= -frandom-seed=RepeatabilityConsideredGood @@ -35,7 +32,7 @@ HDRS= exception new typeinfo cxxabi.h ex INCS= ${HDRS:S;^;${SRCDIR}/;} INCSDIR=${INCLUDEDIR}/c++/${GCCVER} -.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${MACHINE_CPUARCH} == "arm" unwind.h: ${GCCDIR}/config/arm/unwind-arm.h .else unwind.h: ${GCCDIR}/unwind-generic.h Modified: projects/release-vmimage/gnu/usr.bin/cc/Makefile.inc ============================================================================== --- projects/release-vmimage/gnu/usr.bin/cc/Makefile.inc Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/usr.bin/cc/Makefile.inc Thu Oct 2 16:32:52 2014 (r272415) @@ -27,7 +27,7 @@ CSTD?= gnu89 CFLAGS+= -DCROSS_DIRECTORY_STRUCTURE .endif -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/release-vmimage/gnu/usr.bin/cc/cc_tools/Makefile ============================================================================== --- projects/release-vmimage/gnu/usr.bin/cc/cc_tools/Makefile Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/gnu/usr.bin/cc/cc_tools/Makefile Thu Oct 2 16:32:52 2014 (r272415) @@ -51,10 +51,8 @@ TARGET_INC+= ${GCC_CPU}/elf.h .endif .if ${TARGET_CPUARCH} == "arm" TARGET_INC+= ${GCC_CPU}/aout.h -.if ${MK_ARM_EABI} != "no" TARGET_INC+= ${GCC_CPU}/bpabi.h .endif -.endif .if ${TARGET_ARCH} == "powerpc64" TARGET_INC+= ${GCC_CPU}/biarch64.h TARGET_INC+= ${GCC_CPU}/default64.h @@ -352,7 +350,7 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h GENSRCS+= gthr-default.h -.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" +.if ${TARGET_CPUARCH} == "arm" unwind.h: ${GCCDIR}/config/arm/unwind-arm.h .else unwind.h: ${GCCDIR}/unwind-generic.h Modified: projects/release-vmimage/lib/clang/clang.build.mk ============================================================================== --- projects/release-vmimage/lib/clang/clang.build.mk Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/clang/clang.build.mk Thu Oct 2 16:32:52 2014 (r272415) @@ -22,11 +22,10 @@ CFLAGS+= -fno-strict-aliasing TARGET_ARCH?= ${MACHINE_ARCH} BUILD_ARCH?= ${MACHINE_ARCH} -.if (${TARGET_ARCH} == "arm" || ${TARGET_ARCH} == "armv6") && \ - ${MK_ARM_EABI} != "no" -TARGET_ABI= gnueabi -.elif ${TARGET_ARCH} == "armv6hf" +.if ${TARGET_ARCH:Marm*hf*} != "" TARGET_ABI= gnueabihf +.elif ${TARGET_ARCH:Marm*} != "" +TARGET_ABI= gnueabi .else TARGET_ABI= unknown .endif Modified: projects/release-vmimage/lib/libc/arm/Makefile.inc ============================================================================== --- projects/release-vmimage/lib/libc/arm/Makefile.inc Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/arm/Makefile.inc Thu Oct 2 16:32:52 2014 (r272415) @@ -9,14 +9,9 @@ SOFTFLOAT_BITS=32 MDSRCS+=machdep_ldisd.c SYM_MAPS+=${LIBC_SRCTOP}/arm/Symbol.map -.if ${MK_ARM_EABI} == "no" -# This contains the symbols that were removed when moving to the ARM EABI -SYM_MAPS+=${LIBC_SRCTOP}/arm/Symbol_oabi.map -.else .include "${LIBC_SRCTOP}/arm/aeabi/Makefile.inc" -.endif -.if ${MACHINE_ARCH} == "armv6hf" +.if ${MACHINE_ARCH:Marm*hf*} != "" SYM_MAPS+=${LIBC_SRCTOP}/arm/Symbol_vfp.map .endif Modified: projects/release-vmimage/lib/libc/arm/aeabi/Makefile.inc ============================================================================== --- projects/release-vmimage/lib/libc/arm/aeabi/Makefile.inc Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/arm/aeabi/Makefile.inc Thu Oct 2 16:32:52 2014 (r272415) @@ -5,7 +5,7 @@ SRCS+= aeabi_atexit.c \ aeabi_unwind_cpp.c \ aeabi_unwind_exidx.c -.if ${MACHINE_ARCH} != "armv6hf" +.if ${MACHINE_ARCH:Marm*hf*} == "" SRCS+= aeabi_double.c \ aeabi_float.c .endif Modified: projects/release-vmimage/lib/libc/arm/gen/Makefile.inc ============================================================================== --- projects/release-vmimage/lib/libc/arm/gen/Makefile.inc Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/arm/gen/Makefile.inc Thu Oct 2 16:32:52 2014 (r272415) @@ -6,10 +6,6 @@ SRCS+= _ctx_start.S _setjmp.S _set_tp.c __aeabi_read_tp.S setjmp.S signalcontext.c sigsetjmp.S flt_rounds.c \ arm_initfini.c -.if ${MK_ARM_EABI} == "no" -SRCS+= divsi3.S -.endif - .if ${MACHINE_ARCH} == "armv6hf" SRCS+= fpgetmask_vfp.c fpgetround_vfp.c fpgetsticky_vfp.c fpsetmask_vfp.c \ fpsetround_vfp.c fpsetsticky_vfp.c Modified: projects/release-vmimage/lib/libc/powerpc/gen/_ctx_start.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/_ctx_start.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/_ctx_start.S Thu Oct 2 16:32:52 2014 (r272415) @@ -41,5 +41,6 @@ * above branch. */ bl PIC_PLT(CNAME(abort)) /* abort */ + END(_cts_start) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/gen/_setjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/_setjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/_setjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -58,6 +58,7 @@ ENTRY(_setjmp) stmw %r9,20(%r3) li %r3,0 blr +END(_setjmp) ENTRY(_longjmp) lmw %r9,20(%r3) @@ -68,5 +69,6 @@ ENTRY(_longjmp) bnelr li %r3,1 blr +END(_longjmp) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/gen/eabi.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/eabi.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/eabi.S Thu Oct 2 16:32:52 2014 (r272415) @@ -29,5 +29,6 @@ __FBSDID("$FreeBSD$"); ENTRY(__eabi) blr +END(__eabi) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/gen/fabs.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/fabs.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/fabs.S Thu Oct 2 16:32:52 2014 (r272415) @@ -33,5 +33,6 @@ __FBSDID("$FreeBSD$"); ENTRY(fabs) fabs %f1,%f1 blr +END(fabs) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/gen/setjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/setjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/setjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -68,6 +68,7 @@ ENTRY(setjmp) stmw %r9,20(%r6) li %r3,0 /* return (0) */ blr +END(setjmp) WEAK_REFERENCE(CNAME(__longjmp), longjmp) ENTRY(__longjmp) @@ -86,5 +87,6 @@ ENTRY(__longjmp) bnelr li %r3,1 blr +END(__longjmp) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/gen/sigsetjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/gen/sigsetjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/gen/sigsetjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -73,6 +73,7 @@ ENTRY(sigsetjmp) stmw %r9,20(%r6) li %r3,0 blr +END(sigsetjmp) ENTRY(siglongjmp) lmw %r9,20(%r3) @@ -94,5 +95,6 @@ ENTRY(siglongjmp) bnelr li %r3,1 blr +END(siglongjmp) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/sys/brk.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/sys/brk.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/sys/brk.S Thu Oct 2 16:32:52 2014 (r272415) @@ -71,5 +71,6 @@ ENTRY(brk) 1: b PIC_PLT(HIDENAME(cerror)) +END(brk) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/sys/exect.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/sys/exect.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/sys/exect.S Thu Oct 2 16:32:52 2014 (r272415) @@ -37,5 +37,6 @@ ENTRY(exect) blr 1: b PIC_PLT(HIDENAME(cerror)) +END(exect) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/sys/pipe.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/sys/pipe.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/sys/pipe.S Thu Oct 2 16:32:52 2014 (r272415) @@ -41,5 +41,6 @@ ENTRY(pipe) blr /* and return 0 */ 1: b PIC_PLT(HIDENAME(cerror)) +END(pipe) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/sys/ptrace.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/sys/ptrace.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/sys/ptrace.S Thu Oct 2 16:32:52 2014 (r272415) @@ -56,5 +56,6 @@ ENTRY(ptrace) blr 1: b PIC_PLT(HIDENAME(cerror)) +END(ptrace) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc/sys/sbrk.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc/sys/sbrk.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc/sys/sbrk.S Thu Oct 2 16:32:52 2014 (r272415) @@ -68,5 +68,6 @@ ENTRY(sbrk) blr 2: b PIC_PLT(HIDENAME(cerror)) +END(sbrk) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc64/gen/_ctx_start.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc64/gen/_ctx_start.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc64/gen/_ctx_start.S Thu Oct 2 16:32:52 2014 (r272415) @@ -46,5 +46,6 @@ nop bl CNAME(abort) /* abort */ nop + END(_ctx_start) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc64/gen/_setjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc64/gen/_setjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc64/gen/_setjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -80,6 +80,7 @@ ENTRY(_setjmp) std %r31,40 + 22*8(%r3) li %r3,0 blr +END(_setjmp) ENTRY(_longjmp) ld %r9,40 + 0*8(%r3) @@ -113,5 +114,6 @@ ENTRY(_longjmp) bnelr li %r3,1 blr +END(_longjmp) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc64/gen/fabs.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc64/gen/fabs.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc64/gen/fabs.S Thu Oct 2 16:32:52 2014 (r272415) @@ -33,5 +33,6 @@ __FBSDID("$FreeBSD$"); ENTRY(fabs) fabs %f1,%f1 blr +END(fabs) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc64/gen/setjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc64/gen/setjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc64/gen/setjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -92,6 +92,7 @@ ENTRY(setjmp) li %r3,0 /* return (0) */ blr +END(setjmp) WEAK_REFERENCE(__longjmp, longjmp) ENTRY(__longjmp) @@ -132,5 +133,6 @@ ENTRY(__longjmp) bnelr li %r3,1 blr +END(__longjmp) .section .note.GNU-stack,"",%progbits Modified: projects/release-vmimage/lib/libc/powerpc64/gen/sigsetjmp.S ============================================================================== --- projects/release-vmimage/lib/libc/powerpc64/gen/sigsetjmp.S Thu Oct 2 16:13:12 2014 (r272414) +++ projects/release-vmimage/lib/libc/powerpc64/gen/sigsetjmp.S Thu Oct 2 16:32:52 2014 (r272415) @@ -97,6 +97,7 @@ ENTRY(sigsetjmp) li %r3,0 blr +END(sigsetjmp) ENTRY(siglongjmp) ld %r9,40 + 0*8(%r3) @@ -141,5 +142,6 @@ ENTRY(siglongjmp) bnelr li %r3,1 blr +END(siglongjmp) *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***