From owner-svn-src-projects@freebsd.org Tue Sep 15 23:00:09 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E443B9C2B01 for ; Tue, 15 Sep 2015 23:00:09 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.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 CFFA31E99; Tue, 15 Sep 2015 23:00:09 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8FN09MK040120; Tue, 15 Sep 2015 23:00:09 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8FMxwIv040021; Tue, 15 Sep 2015 22:59:58 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201509152259.t8FMxwIv040021@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Tue, 15 Sep 2015 22:59:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287834 - in projects/sendfile: . bin/df bin/ls bin/pkill bin/pkill/tests bin/ps bin/rm bin/setfacl bin/sh bin/sh/tests/builtins bin/sh/tests/errors bin/sh/tests/parser cddl/contrib/ope... 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.20 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: Tue, 15 Sep 2015 23:00:10 -0000 Author: glebius Date: Tue Sep 15 22:59:55 2015 New Revision: 287834 URL: https://svnweb.freebsd.org/changeset/base/287834 Log: Merge head r261119 through r287832. Added: projects/sendfile/bin/sh/tests/builtins/case20.0 - copied unchanged from r287832, head/bin/sh/tests/builtins/case20.0 projects/sendfile/bin/sh/tests/builtins/read9.0 - copied unchanged from r287832, head/bin/sh/tests/builtins/read9.0 projects/sendfile/bin/sh/tests/errors/bad-parm-exp7.0 - copied unchanged from r287832, head/bin/sh/tests/errors/bad-parm-exp7.0 projects/sendfile/bin/sh/tests/errors/bad-parm-exp8.0 - copied unchanged from r287832, head/bin/sh/tests/errors/bad-parm-exp8.0 projects/sendfile/bin/sh/tests/parser/dollar-quote12.0 - copied unchanged from r287832, head/bin/sh/tests/parser/dollar-quote12.0 projects/sendfile/bin/sh/tests/parser/dollar-quote13.0 - copied unchanged from r287832, head/bin/sh/tests/parser/dollar-quote13.0 projects/sendfile/bin/sh/tests/parser/heredoc13.0 - copied unchanged from r287832, head/bin/sh/tests/parser/heredoc13.0 projects/sendfile/contrib/libxo/INSTALL.md - copied unchanged from r287832, head/contrib/libxo/INSTALL.md projects/sendfile/contrib/libxo/encoder/ - copied from r287832, head/contrib/libxo/encoder/ projects/sendfile/contrib/libxo/libxo/add.man - copied unchanged from r287832, head/contrib/libxo/libxo/add.man projects/sendfile/contrib/libxo/libxo/add.man.in - copied unchanged from r287832, head/contrib/libxo/libxo/add.man.in projects/sendfile/contrib/libxo/libxo/xo_buf.h - copied unchanged from r287832, head/contrib/libxo/libxo/xo_buf.h projects/sendfile/contrib/libxo/libxo/xo_config.h - copied unchanged from r287832, head/contrib/libxo/libxo/xo_config.h projects/sendfile/contrib/libxo/libxo/xo_emit_err.3 - copied unchanged from r287832, head/contrib/libxo/libxo/xo_emit_err.3 projects/sendfile/contrib/libxo/libxo/xo_encoder.c - copied unchanged from r287832, head/contrib/libxo/libxo/xo_encoder.c projects/sendfile/contrib/libxo/libxo/xo_encoder.h - copied unchanged from r287832, head/contrib/libxo/libxo/xo_encoder.h projects/sendfile/contrib/libxo/libxo/xo_humanize.h - copied unchanged from r287832, head/contrib/libxo/libxo/xo_humanize.h projects/sendfile/contrib/libxo/libxo/xo_message.3 - copied unchanged from r287832, head/contrib/libxo/libxo/xo_message.3 projects/sendfile/contrib/libxo/libxo/xo_set_syslog_enterprise_id.3 - copied unchanged from r287832, head/contrib/libxo/libxo/xo_set_syslog_enterprise_id.3 projects/sendfile/contrib/libxo/libxo/xo_syslog.3 - copied unchanged from r287832, head/contrib/libxo/libxo/xo_syslog.3 projects/sendfile/contrib/libxo/libxo/xo_syslog.c - copied unchanged from r287832, head/contrib/libxo/libxo/xo_syslog.c projects/sendfile/contrib/libxo/libxo/xo_wcwidth.h - copied unchanged from r287832, head/contrib/libxo/libxo/xo_wcwidth.h projects/sendfile/contrib/libxo/tests/core/saved/test_01.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_01.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_01.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_01.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_02.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_02.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_02.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_03.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_03.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_03.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_03.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_04.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_04.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_04.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_04.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_05.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_05.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_05.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_06.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_06.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_06.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_06.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_07.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_07.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_07.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_07.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_08.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_08.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_08.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_09.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_09.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_09.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_09.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_10.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_10.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_10.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_10.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.E.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.E.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.E.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.E.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.H.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.H.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.H.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.H.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.HIPx.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.HIPx.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.HIPx.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.HIPx.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.HP.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.HP.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.HP.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.HP.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.J.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.J.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.J.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.J.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.JP.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.JP.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.JP.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.JP.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.T.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.T.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.T.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.T.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.X.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.X.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.X.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.X.out projects/sendfile/contrib/libxo/tests/core/saved/test_11.XP.err - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.XP.err projects/sendfile/contrib/libxo/tests/core/saved/test_11.XP.out - copied unchanged from r287832, head/contrib/libxo/tests/core/saved/test_11.XP.out projects/sendfile/contrib/libxo/tests/core/test_11.c - copied unchanged from r287832, head/contrib/libxo/tests/core/test_11.c projects/sendfile/contrib/libxo/tests/gettext/ - copied from r287832, head/contrib/libxo/tests/gettext/ projects/sendfile/contrib/libxo/xopo/ - copied from r287832, head/contrib/libxo/xopo/ projects/sendfile/lib/libc/aarch64/gen/infinity.c - copied unchanged from r287832, head/lib/libc/aarch64/gen/infinity.c projects/sendfile/lib/libkvm/kvm_minidump_aarch64.c - copied unchanged from r287832, head/lib/libkvm/kvm_minidump_aarch64.c projects/sendfile/share/doc/papers/bsdreferences.bib - copied unchanged from r287832, head/share/doc/papers/bsdreferences.bib projects/sendfile/share/dtrace/tcpdebug - copied unchanged from r287832, head/share/dtrace/tcpdebug projects/sendfile/share/man/man4/ioat.4 - copied unchanged from r287832, head/share/man/man4/ioat.4 projects/sendfile/share/man/man4/ow.4 - copied unchanged from r287832, head/share/man/man4/ow.4 projects/sendfile/share/man/man4/ow_temp.4 - copied unchanged from r287832, head/share/man/man4/ow_temp.4 projects/sendfile/share/man/man4/owc.4 - copied unchanged from r287832, head/share/man/man4/owc.4 projects/sendfile/share/man/man4/rccgpio.4 - copied unchanged from r287832, head/share/man/man4/rccgpio.4 projects/sendfile/share/man/man9/owll.9 - copied unchanged from r287832, head/share/man/man9/owll.9 projects/sendfile/share/man/man9/own.9 - copied unchanged from r287832, head/share/man/man9/own.9 projects/sendfile/share/mk/bsd.stand.mk - copied unchanged from r287832, head/share/mk/bsd.stand.mk projects/sendfile/sys/arm/conf/A20 - copied unchanged from r287832, head/sys/arm/conf/A20 projects/sendfile/sys/arm64/include/minidump.h - copied unchanged from r287832, head/sys/arm64/include/minidump.h projects/sendfile/sys/boot/efi/include/efipciio.h - copied unchanged from r287832, head/sys/boot/efi/include/efipciio.h projects/sendfile/sys/boot/efi/include/efiuga.h - copied unchanged from r287832, head/sys/boot/efi/include/efiuga.h projects/sendfile/sys/cam/ctl/ctl_ha.c - copied unchanged from r287832, head/sys/cam/ctl/ctl_ha.c projects/sendfile/sys/dev/ioat/ - copied from r287832, head/sys/dev/ioat/ projects/sendfile/sys/dev/mmc/host/dwmmc_hisi.c - copied unchanged from r287832, head/sys/dev/mmc/host/dwmmc_hisi.c projects/sendfile/sys/dev/mmc/host/dwmmc_reg.h - copied unchanged from r287832, head/sys/dev/mmc/host/dwmmc_reg.h projects/sendfile/sys/dev/mmc/host/dwmmc_var.h - copied unchanged from r287832, head/sys/dev/mmc/host/dwmmc_var.h projects/sendfile/sys/dev/ow/ - copied from r287832, head/sys/dev/ow/ projects/sendfile/sys/dev/rccgpio/ - copied from r287832, head/sys/dev/rccgpio/ projects/sendfile/sys/dev/usb/controller/dwc_otg_hisi.c - copied unchanged from r287832, head/sys/dev/usb/controller/dwc_otg_hisi.c projects/sendfile/sys/modules/ioat/ - copied from r287832, head/sys/modules/ioat/ projects/sendfile/sys/modules/ow/ - copied from r287832, head/sys/modules/ow/ projects/sendfile/sys/modules/rccgpio/ - copied from r287832, head/sys/modules/rccgpio/ projects/sendfile/sys/net/altq/altq_codel.c - copied unchanged from r287832, head/sys/net/altq/altq_codel.c projects/sendfile/sys/net/altq/altq_codel.h - copied unchanged from r287832, head/sys/net/altq/altq_codel.h projects/sendfile/sys/pc98/include/ofw_machdep.h - copied unchanged from r287832, head/sys/pc98/include/ofw_machdep.h projects/sendfile/sys/powerpc/mikrotik/ - copied from r287832, head/sys/powerpc/mikrotik/ projects/sendfile/sys/sparc64/pci/ofw_pci.c - copied unchanged from r287832, head/sys/sparc64/pci/ofw_pci.c projects/sendfile/sys/x86/include/stack.h - copied unchanged from r287832, head/sys/x86/include/stack.h projects/sendfile/sys/x86/x86/stack_machdep.c - copied unchanged from r287832, head/sys/x86/x86/stack_machdep.c projects/sendfile/tools/tools/ioat/ - copied from r287832, head/tools/tools/ioat/ projects/sendfile/usr.bin/netstat/nlist_symbols - copied unchanged from r287832, head/usr.bin/netstat/nlist_symbols projects/sendfile/usr.sbin/fstyp/tests/ - copied from r287832, head/usr.sbin/fstyp/tests/ projects/sendfile/usr.sbin/sesutil/ - copied from r287832, head/usr.sbin/sesutil/ projects/sendfile/usr.sbin/ypserv/common/ - copied from r287832, head/usr.sbin/ypserv/common/ Replaced: - copied from r287832, head/contrib/libc++/ Directory Properties: projects/sendfile/contrib/libc++/ (props changed) Deleted: projects/sendfile/contrib/libxo/libxo/xoconfig.h projects/sendfile/contrib/libxo/libxo/xoconfig.h.in projects/sendfile/contrib/libxo/libxo/xoversion.h projects/sendfile/contrib/libxo/libxo/xoversion.h.in projects/sendfile/sys/amd64/amd64/stack_machdep.c projects/sendfile/sys/arm/conf/CUBIEBOARD2 projects/sendfile/sys/cam/ctl/ctl_backend_block.h projects/sendfile/sys/dev/mmc/host/dwmmc.h projects/sendfile/sys/i386/i386/stack_machdep.c projects/sendfile/sys/mips/rmi/dev/xlr/rge.c projects/sendfile/sys/mips/rmi/dev/xlr/rge.h Modified: projects/sendfile/Makefile.inc1 projects/sendfile/ObsoleteFiles.inc projects/sendfile/UPDATING projects/sendfile/bin/df/df.c projects/sendfile/bin/ls/Makefile projects/sendfile/bin/pkill/Makefile projects/sendfile/bin/pkill/Makefile.depend projects/sendfile/bin/pkill/pkill.1 projects/sendfile/bin/pkill/pkill.c projects/sendfile/bin/pkill/tests/pgrep-j_test.sh projects/sendfile/bin/pkill/tests/pkill-j_test.sh projects/sendfile/bin/ps/Makefile projects/sendfile/bin/rm/rm.c projects/sendfile/bin/setfacl/setfacl.1 projects/sendfile/bin/sh/expand.c projects/sendfile/bin/sh/miscbltin.c projects/sendfile/bin/sh/options.c projects/sendfile/bin/sh/options.h projects/sendfile/bin/sh/parser.c projects/sendfile/bin/sh/sh.1 projects/sendfile/bin/sh/tests/builtins/Makefile projects/sendfile/bin/sh/tests/errors/Makefile projects/sendfile/bin/sh/tests/parser/Makefile projects/sendfile/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c projects/sendfile/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs.8 projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c projects/sendfile/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h projects/sendfile/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c projects/sendfile/cddl/lib/Makefile projects/sendfile/cddl/lib/libdtrace/ip.d projects/sendfile/cddl/lib/libdtrace/tcp.d projects/sendfile/contrib/compiler-rt/lib/builtins/multc3.c projects/sendfile/contrib/expat/lib/xmlparse.c projects/sendfile/contrib/file/ChangeLog projects/sendfile/contrib/file/configure projects/sendfile/contrib/file/configure.ac projects/sendfile/contrib/file/magic/Magdir/database projects/sendfile/contrib/file/magic/Magdir/elf projects/sendfile/contrib/file/magic/Magdir/fortran projects/sendfile/contrib/file/magic/Magdir/mail.news projects/sendfile/contrib/file/magic/Magdir/make projects/sendfile/contrib/file/magic/Magdir/map projects/sendfile/contrib/file/src/file.c projects/sendfile/contrib/file/src/funcs.c projects/sendfile/contrib/file/src/readelf.c projects/sendfile/contrib/hyperv/tools/hv_kvp_daemon.c projects/sendfile/contrib/jemalloc/FREEBSD-diffs projects/sendfile/contrib/jemalloc/FREEBSD-upgrade projects/sendfile/contrib/jemalloc/doc/jemalloc.3 projects/sendfile/contrib/jemalloc/include/jemalloc/jemalloc_FreeBSD.h projects/sendfile/contrib/libxo/.gitignore projects/sendfile/contrib/libxo/.travis.yml projects/sendfile/contrib/libxo/Makefile.am projects/sendfile/contrib/libxo/bin/Zaliases projects/sendfile/contrib/libxo/bin/setup.sh projects/sendfile/contrib/libxo/configure.ac projects/sendfile/contrib/libxo/doc/Makefile.am projects/sendfile/contrib/libxo/doc/libxo.txt projects/sendfile/contrib/libxo/libxo/Makefile.am projects/sendfile/contrib/libxo/libxo/libxo.3 projects/sendfile/contrib/libxo/libxo/libxo.c projects/sendfile/contrib/libxo/libxo/xo.h projects/sendfile/contrib/libxo/libxo/xo_attr.3 projects/sendfile/contrib/libxo/libxo/xo_create.3 projects/sendfile/contrib/libxo/libxo/xo_emit.3 projects/sendfile/contrib/libxo/libxo/xo_err.3 projects/sendfile/contrib/libxo/libxo/xo_error.3 projects/sendfile/contrib/libxo/libxo/xo_finish.3 projects/sendfile/contrib/libxo/libxo/xo_flush.3 projects/sendfile/contrib/libxo/libxo/xo_format.5 projects/sendfile/contrib/libxo/libxo/xo_no_setlocale.3 projects/sendfile/contrib/libxo/libxo/xo_open_container.3 projects/sendfile/contrib/libxo/libxo/xo_open_list.3 projects/sendfile/contrib/libxo/libxo/xo_open_marker.3 projects/sendfile/contrib/libxo/libxo/xo_parse_args.3 projects/sendfile/contrib/libxo/libxo/xo_set_allocator.3 projects/sendfile/contrib/libxo/libxo/xo_set_flags.3 projects/sendfile/contrib/libxo/libxo/xo_set_info.3 projects/sendfile/contrib/libxo/libxo/xo_set_options.3 projects/sendfile/contrib/libxo/libxo/xo_set_style.3 projects/sendfile/contrib/libxo/libxo/xo_set_version.3 projects/sendfile/contrib/libxo/libxo/xo_set_writer.3 projects/sendfile/contrib/libxo/tests/Makefile.am projects/sendfile/contrib/libxo/tests/core/Makefile.am projects/sendfile/contrib/libxo/tests/core/saved/test_01.H.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.HIPx.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.HP.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.J.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.JP.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.T.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.X.out projects/sendfile/contrib/libxo/tests/core/saved/test_01.XP.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.H.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.HIPx.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.HP.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.J.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.JP.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.T.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.X.out projects/sendfile/contrib/libxo/tests/core/saved/test_02.XP.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.H.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.HIPx.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.HP.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.J.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.JP.out (contents, props changed) projects/sendfile/contrib/libxo/tests/core/saved/test_05.T.out projects/sendfile/contrib/libxo/tests/core/saved/test_05.X.out (contents, props changed) projects/sendfile/contrib/libxo/tests/core/saved/test_05.XP.out (contents, props changed) projects/sendfile/contrib/libxo/tests/core/saved/test_08.H.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.HIPx.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.HIPx.out projects/sendfile/contrib/libxo/tests/core/saved/test_08.HP.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.J.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.J.out projects/sendfile/contrib/libxo/tests/core/saved/test_08.JP.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.JP.out projects/sendfile/contrib/libxo/tests/core/saved/test_08.T.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.X.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.X.out projects/sendfile/contrib/libxo/tests/core/saved/test_08.XP.err projects/sendfile/contrib/libxo/tests/core/saved/test_08.XP.out projects/sendfile/contrib/libxo/tests/core/test_01.c projects/sendfile/contrib/libxo/tests/core/test_02.c projects/sendfile/contrib/libxo/tests/core/test_05.c projects/sendfile/contrib/libxo/tests/core/test_08.c projects/sendfile/contrib/libxo/xo/Makefile.am projects/sendfile/contrib/libxo/xo/xo.1 projects/sendfile/contrib/libxo/xo/xo.c projects/sendfile/contrib/libxo/xohtml/Makefile.am projects/sendfile/contrib/libxo/xohtml/xohtml.1 projects/sendfile/contrib/libxo/xolint/Makefile.am projects/sendfile/contrib/libxo/xolint/xolint.1 projects/sendfile/contrib/libxo/xolint/xolint.pl projects/sendfile/contrib/llvm/tools/lldb/FREEBSD-Xlist projects/sendfile/contrib/ncurses/ncurses/base/MKlib_gen.sh projects/sendfile/contrib/netbsd-tests/lib/libc/gen/posix_spawn/t_spawnattr.c projects/sendfile/contrib/subversion/subversion/svn/util.c projects/sendfile/contrib/tzdata/leapseconds projects/sendfile/crypto/openssh/monitor.c projects/sendfile/crypto/openssh/monitor_wrap.c projects/sendfile/crypto/openssh/mux.c projects/sendfile/etc/devd.conf projects/sendfile/etc/mtree/BSD.tests.dist projects/sendfile/etc/mtree/BSD.usr.dist projects/sendfile/etc/network.subr projects/sendfile/etc/pccard_ether projects/sendfile/etc/rc.d/bgfsck projects/sendfile/etc/rc.d/jail projects/sendfile/etc/rc.d/netif projects/sendfile/games/fortune/datfiles/freebsd-tips projects/sendfile/gnu/usr.bin/binutils/Makefile projects/sendfile/include/malloc_np.h projects/sendfile/kerberos5/Makefile.inc projects/sendfile/kerberos5/lib/libhdb/Makefile projects/sendfile/kerberos5/libexec/digest-service/Makefile projects/sendfile/kerberos5/libexec/kdc/Makefile projects/sendfile/kerberos5/usr.bin/kpasswd/Makefile projects/sendfile/kerberos5/usr.sbin/iprop-log/Makefile projects/sendfile/lib/libc/aarch64/Symbol.map projects/sendfile/lib/libc/aarch64/gen/Makefile.inc projects/sendfile/lib/libc/amd64/gen/setjmp.S projects/sendfile/lib/libc/amd64/gen/sigsetjmp.S projects/sendfile/lib/libc/compat-43/sigcompat.c projects/sendfile/lib/libc/db/btree/bt_open.c projects/sendfile/lib/libc/db/hash/hash_page.c projects/sendfile/lib/libc/db/recno/rec_open.c projects/sendfile/lib/libc/gen/daemon.c projects/sendfile/lib/libc/gen/devname.c projects/sendfile/lib/libc/gen/fts-compat.c projects/sendfile/lib/libc/gen/getgrent.c projects/sendfile/lib/libc/gen/getloadavg.c projects/sendfile/lib/libc/gen/getmntinfo.c projects/sendfile/lib/libc/gen/getpwent.c projects/sendfile/lib/libc/gen/nlist.c projects/sendfile/lib/libc/gen/posix_spawn.c projects/sendfile/lib/libc/gen/readpassphrase.c projects/sendfile/lib/libc/gen/setmode.c projects/sendfile/lib/libc/gen/siginterrupt.c projects/sendfile/lib/libc/gen/signal.c projects/sendfile/lib/libc/gen/strtofflags.c projects/sendfile/lib/libc/gen/sysctl.3 projects/sendfile/lib/libc/gen/wordexp.3 projects/sendfile/lib/libc/gen/wordexp.c projects/sendfile/lib/libc/gmon/gmon.c projects/sendfile/lib/libc/i386/gen/setjmp.S projects/sendfile/lib/libc/i386/gen/sigsetjmp.S projects/sendfile/lib/libc/include/libc_private.h projects/sendfile/lib/libc/locale/utf8.c projects/sendfile/lib/libc/net/getnameinfo.c projects/sendfile/lib/libc/net/if_nametoindex.c projects/sendfile/lib/libc/net/rcmd.c projects/sendfile/lib/libc/net/rcmdsh.c projects/sendfile/lib/libc/posix1e/acl_add_flag_np.3 projects/sendfile/lib/libc/posix1e/acl_entry.c projects/sendfile/lib/libc/posix1e/acl_flag.c projects/sendfile/lib/libc/posix1e/acl_init.c projects/sendfile/lib/libc/posix1e/acl_strip.c projects/sendfile/lib/libc/posix1e/acl_support_nfs4.c projects/sendfile/lib/libc/rpc/auth_des.c projects/sendfile/lib/libc/rpc/auth_none.c projects/sendfile/lib/libc/rpc/auth_time.c projects/sendfile/lib/libc/rpc/clnt_bcast.c projects/sendfile/lib/libc/rpc/clnt_dg.c projects/sendfile/lib/libc/rpc/crypt_client.c projects/sendfile/lib/libc/rpc/des_crypt.c projects/sendfile/lib/libc/rpc/des_soft.c projects/sendfile/lib/libc/rpc/getpublickey.c projects/sendfile/lib/libc/rpc/key_call.c projects/sendfile/lib/libc/rpc/rpc_prot.c projects/sendfile/lib/libc/rpc/rpc_soc.c projects/sendfile/lib/libc/rpc/rpcb_clnt.c projects/sendfile/lib/libc/rpc/rpcdname.c projects/sendfile/lib/libc/rpc/rtime.c projects/sendfile/lib/libc/rpc/svc_auth.c projects/sendfile/lib/libc/rpc/svc_auth_des.c projects/sendfile/lib/libc/rpc/svc_dg.c projects/sendfile/lib/libc/rpc/svc_vc.c projects/sendfile/lib/libc/stdio/tmpfile.c projects/sendfile/lib/libc/stdlib/abort.c projects/sendfile/lib/libc/stdlib/heapsort.c projects/sendfile/lib/libc/stdlib/merge.c projects/sendfile/lib/libc/stdlib/radixsort.c projects/sendfile/lib/libc/stdlib/system.c projects/sendfile/lib/libc/string/bcopy.3 projects/sendfile/lib/libc/string/bzero.3 projects/sendfile/lib/libc/string/strndup.c projects/sendfile/lib/libc/sys/getrlimit.2 projects/sendfile/lib/libc/sys/procctl.2 projects/sendfile/lib/libc/sys/setuid.2 projects/sendfile/lib/libc/sys/sigaction.c projects/sendfile/lib/libc/sys/sigprocmask.c projects/sendfile/lib/libc/sys/sigsuspend.c projects/sendfile/lib/libc/tests/gen/posix_spawn/Makefile projects/sendfile/lib/libc/tests/sys/Makefile projects/sendfile/lib/libgeom/geom_xml2tree.c projects/sendfile/lib/libkvm/kvm_aarch64.c projects/sendfile/lib/libkvm/kvm_private.h projects/sendfile/lib/libmagic/config.h projects/sendfile/lib/libproc/proc_bkpt.c projects/sendfile/lib/libproc/tests/proc_test.c projects/sendfile/lib/libprocstat/libprocstat.c projects/sendfile/lib/libstand/Makefile projects/sendfile/lib/libthr/thread/thr_once.c projects/sendfile/lib/libutil/kinfo_getfile.c projects/sendfile/lib/libxo/Makefile projects/sendfile/lib/libz/inflate.c projects/sendfile/libexec/ftpd/Makefile projects/sendfile/libexec/rtld-elf/aarch64/reloc.c projects/sendfile/libexec/rtld-elf/aarch64/rtld_machdep.h projects/sendfile/libexec/rtld-elf/rtld.c projects/sendfile/libexec/talkd/table.c projects/sendfile/release/Makefile projects/sendfile/release/Makefile.vagrant projects/sendfile/release/amd64/mkisoimages.sh projects/sendfile/release/doc/en_US.ISO8859-1/errata/article.xml projects/sendfile/release/i386/mkisoimages.sh projects/sendfile/release/pc98/mkisoimages.sh projects/sendfile/release/powerpc/mkisoimages.sh projects/sendfile/release/sparc64/mkisoimages.sh projects/sendfile/sbin/bsdlabel/bsdlabel.8 projects/sendfile/sbin/camcontrol/camcontrol.8 projects/sendfile/sbin/camcontrol/camcontrol.c projects/sendfile/sbin/camcontrol/camcontrol.h projects/sendfile/sbin/camcontrol/fwdownload.c projects/sendfile/sbin/camcontrol/progress.c projects/sendfile/sbin/dumpfs/dumpfs.8 projects/sendfile/sbin/fdisk/fdisk.8 projects/sendfile/sbin/ffsinfo/ffsinfo.8 projects/sendfile/sbin/geom/class/nop/geom_nop.c projects/sendfile/sbin/geom/class/nop/gnop.8 projects/sendfile/sbin/ifconfig/ifgif.c projects/sendfile/sbin/ipfw/ipfw2.c projects/sendfile/sbin/ipfw/nat.c projects/sendfile/sbin/ipfw/tables.c projects/sendfile/sbin/mdconfig/mdconfig.8 projects/sendfile/sbin/mount_unionfs/mount_unionfs.8 projects/sendfile/sbin/newfs/newfs.8 projects/sendfile/sbin/newfs/newfs.c projects/sendfile/sbin/newfs_msdos/newfs_msdos.8 projects/sendfile/sbin/newfs_nandfs/newfs_nandfs.8 projects/sendfile/sbin/pfctl/parse.y projects/sendfile/sbin/pfctl/pfctl_altq.c projects/sendfile/sbin/pfctl/pfctl_parser.c projects/sendfile/sbin/pfctl/pfctl_parser.h projects/sendfile/sbin/pfctl/pfctl_qstats.c projects/sendfile/sbin/reboot/boot_i386.8 projects/sendfile/sbin/rtsol/Makefile projects/sendfile/sbin/savecore/Makefile projects/sendfile/secure/libexec/sftp-server/Makefile projects/sendfile/secure/libexec/ssh-keysign/Makefile projects/sendfile/secure/libexec/ssh-pkcs11-helper/Makefile projects/sendfile/secure/usr.bin/scp/Makefile projects/sendfile/secure/usr.bin/sftp/Makefile projects/sendfile/secure/usr.bin/ssh-add/Makefile projects/sendfile/secure/usr.bin/ssh-agent/Makefile projects/sendfile/secure/usr.bin/ssh-keyscan/Makefile projects/sendfile/secure/usr.sbin/sshd/Makefile projects/sendfile/share/dtrace/nfsattrstats projects/sendfile/share/dtrace/nfsclienttime projects/sendfile/share/man/man4/Makefile projects/sendfile/share/man/man4/altq.4 projects/sendfile/share/man/man4/blackhole.4 projects/sendfile/share/man/man4/ctl.4 projects/sendfile/share/man/man4/da.4 projects/sendfile/share/man/man4/dtrace_ip.4 projects/sendfile/share/man/man4/geom_fox.4 projects/sendfile/share/man/man4/gif.4 projects/sendfile/share/man/man4/md.4 projects/sendfile/share/man/man4/ng_pppoe.4 projects/sendfile/share/man/man4/random.4 projects/sendfile/share/man/man4/rights.4 projects/sendfile/share/man/man4/ses.4 projects/sendfile/share/man/man4/vpo.4 projects/sendfile/share/man/man5/core.5 projects/sendfile/share/man/man5/pf.conf.5 projects/sendfile/share/man/man5/rc.conf.5 projects/sendfile/share/man/man7/tuning.7 projects/sendfile/share/man/man8/picobsd.8 projects/sendfile/share/man/man9/Makefile projects/sendfile/share/man/man9/acl.9 projects/sendfile/share/man/man9/devfs_set_cdevpriv.9 projects/sendfile/share/man/man9/nv.9 projects/sendfile/share/man/man9/stack.9 projects/sendfile/share/man/man9/timeout.9 projects/sendfile/share/misc/organization.dot projects/sendfile/share/mk/bsd.README projects/sendfile/share/mk/bsd.cpu.mk projects/sendfile/share/mk/bsd.files.mk projects/sendfile/share/mk/bsd.own.mk projects/sendfile/share/mk/bsd.port.mk projects/sendfile/share/mk/bsd.port.subdir.mk projects/sendfile/share/mk/bsd.subdir.mk projects/sendfile/share/mk/local.meta.sys.mk projects/sendfile/share/mk/src.libnames.mk projects/sendfile/share/mk/sys.mk projects/sendfile/share/zoneinfo/Makefile projects/sendfile/sys/amd64/amd64/exception.S projects/sendfile/sys/amd64/amd64/machdep.c projects/sendfile/sys/amd64/amd64/trap.c projects/sendfile/sys/amd64/cloudabi64/cloudabi64_sysvec.c projects/sendfile/sys/amd64/conf/NOTES projects/sendfile/sys/amd64/include/stack.h projects/sendfile/sys/arm/allwinner/a10_gpio.c projects/sendfile/sys/arm/arm/busdma_machdep-v6.c projects/sendfile/sys/arm/arm/locore-v6.S projects/sendfile/sys/arm/arm/machdep.c projects/sendfile/sys/arm/arm/stack_machdep.c projects/sendfile/sys/arm/arm/trap-v6.c projects/sendfile/sys/arm/arm/trap.c projects/sendfile/sys/arm/conf/BEAGLEBONE projects/sendfile/sys/arm/conf/IMX6 projects/sendfile/sys/arm/conf/std.armv6 projects/sendfile/sys/arm/freescale/imx/imx_wdog.c projects/sendfile/sys/arm/freescale/imx/imx_wdogreg.h projects/sendfile/sys/arm/include/proc.h projects/sendfile/sys/arm64/arm64/copyinout.S projects/sendfile/sys/arm64/arm64/db_interface.c projects/sendfile/sys/arm64/arm64/gic_v3.c projects/sendfile/sys/arm64/arm64/gic_v3_its.c projects/sendfile/sys/arm64/arm64/gic_v3_reg.h projects/sendfile/sys/arm64/arm64/gic_v3_var.h projects/sendfile/sys/arm64/arm64/locore.S projects/sendfile/sys/arm64/arm64/machdep.c projects/sendfile/sys/arm64/arm64/minidump_machdep.c projects/sendfile/sys/arm64/arm64/mp_machdep.c projects/sendfile/sys/arm64/arm64/pmap.c projects/sendfile/sys/arm64/arm64/stack_machdep.c projects/sendfile/sys/arm64/arm64/support.S projects/sendfile/sys/arm64/arm64/swtch.S projects/sendfile/sys/arm64/arm64/trap.c projects/sendfile/sys/arm64/arm64/uma_machdep.c projects/sendfile/sys/arm64/arm64/unwind.c projects/sendfile/sys/arm64/conf/GENERIC projects/sendfile/sys/arm64/include/cpu.h projects/sendfile/sys/arm64/include/md_var.h projects/sendfile/sys/arm64/include/param.h projects/sendfile/sys/arm64/include/pmap.h projects/sendfile/sys/boot/efi/Makefile.inc projects/sendfile/sys/boot/efi/loader/Makefile projects/sendfile/sys/boot/efi/loader/arch/amd64/framebuffer.c projects/sendfile/sys/boot/efi/loader/arch/arm64/Makefile.inc projects/sendfile/sys/boot/fdt/dts/arm/bananapi.dts projects/sendfile/sys/boot/fdt/dts/arm/beaglebone-black.dts projects/sendfile/sys/boot/fdt/dts/arm/cubieboard2.dts projects/sendfile/sys/boot/fdt/dts/arm/sun7i-a20.dtsi projects/sendfile/sys/boot/ficl/Makefile projects/sendfile/sys/boot/i386/Makefile.inc projects/sendfile/sys/boot/libstand32/Makefile projects/sendfile/sys/boot/pc98/Makefile.inc projects/sendfile/sys/boot/usb/usbcore.mk projects/sendfile/sys/boot/userboot/ficl/Makefile projects/sendfile/sys/boot/userboot/libstand/Makefile projects/sendfile/sys/boot/zfs/Makefile projects/sendfile/sys/cam/ata/ata_da.c projects/sendfile/sys/cam/ata/ata_xpt.c projects/sendfile/sys/cam/ctl/README.ctl.txt projects/sendfile/sys/cam/ctl/ctl.c projects/sendfile/sys/cam/ctl/ctl.h projects/sendfile/sys/cam/ctl/ctl_backend.c projects/sendfile/sys/cam/ctl/ctl_backend.h projects/sendfile/sys/cam/ctl/ctl_backend_block.c projects/sendfile/sys/cam/ctl/ctl_backend_ramdisk.c projects/sendfile/sys/cam/ctl/ctl_cmd_table.c projects/sendfile/sys/cam/ctl/ctl_error.c projects/sendfile/sys/cam/ctl/ctl_error.h projects/sendfile/sys/cam/ctl/ctl_frontend.c projects/sendfile/sys/cam/ctl/ctl_frontend.h projects/sendfile/sys/cam/ctl/ctl_frontend_cam_sim.c projects/sendfile/sys/cam/ctl/ctl_frontend_ioctl.c projects/sendfile/sys/cam/ctl/ctl_frontend_iscsi.c projects/sendfile/sys/cam/ctl/ctl_ha.h projects/sendfile/sys/cam/ctl/ctl_io.h projects/sendfile/sys/cam/ctl/ctl_ioctl.h projects/sendfile/sys/cam/ctl/ctl_private.h projects/sendfile/sys/cam/ctl/ctl_scsi_all.c projects/sendfile/sys/cam/ctl/ctl_tpc.c projects/sendfile/sys/cam/ctl/ctl_tpc_local.c projects/sendfile/sys/cam/ctl/ctl_util.c projects/sendfile/sys/cam/ctl/ctl_util.h projects/sendfile/sys/cam/ctl/scsi_ctl.c projects/sendfile/sys/cam/scsi/scsi_all.c projects/sendfile/sys/cam/scsi/scsi_all.h projects/sendfile/sys/cam/scsi/scsi_cd.c projects/sendfile/sys/cam/scsi/scsi_ch.c projects/sendfile/sys/cam/scsi/scsi_da.c projects/sendfile/sys/cam/scsi/scsi_pt.c projects/sendfile/sys/cam/scsi/scsi_sa.c projects/sendfile/sys/cam/scsi/scsi_xpt.c projects/sendfile/sys/cddl/compat/opensolaris/kern/opensolaris_acl.c projects/sendfile/sys/cddl/contrib/opensolaris/common/avl/avl.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_zfetch.h projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h projects/sendfile/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/eventdefs.h projects/sendfile/sys/cddl/dev/dtrace/amd64/dtrace_isa.c projects/sendfile/sys/compat/cloudabi/cloudabi_fd.c projects/sendfile/sys/compat/linux/linux_fork.c projects/sendfile/sys/conf/NOTES projects/sendfile/sys/conf/files projects/sendfile/sys/conf/files.amd64 projects/sendfile/sys/conf/files.arm64 projects/sendfile/sys/conf/files.i386 projects/sendfile/sys/conf/files.pc98 projects/sendfile/sys/conf/files.powerpc projects/sendfile/sys/conf/files.sparc64 projects/sendfile/sys/conf/kmod.mk projects/sendfile/sys/conf/options projects/sendfile/sys/conf/options.arm64 projects/sendfile/sys/conf/options.powerpc projects/sendfile/sys/contrib/dev/acpica/changes.txt projects/sendfile/sys/contrib/dev/acpica/common/adisasm.c projects/sendfile/sys/contrib/dev/acpica/common/dmtable.c projects/sendfile/sys/contrib/dev/acpica/compiler/aslmain.c projects/sendfile/sys/contrib/dev/acpica/compiler/asloperands.c projects/sendfile/sys/contrib/dev/acpica/compiler/asloptions.c projects/sendfile/sys/contrib/dev/acpica/compiler/aslstartup.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbcmds.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbconvert.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbdisply.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbexec.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbfileio.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbhistry.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbinput.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbmethod.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbnames.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbobject.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbstats.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbtest.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbutils.c projects/sendfile/sys/contrib/dev/acpica/components/debugger/dbxface.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmbuffer.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmcstyle.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmnames.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmopcode.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmresrc.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmresrcl.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmresrcl2.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmresrcs.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmutils.c projects/sendfile/sys/contrib/dev/acpica/components/disassembler/dmwalk.c projects/sendfile/sys/contrib/dev/acpica/components/dispatcher/dscontrol.c projects/sendfile/sys/contrib/dev/acpica/components/dispatcher/dsdebug.c projects/sendfile/sys/contrib/dev/acpica/components/dispatcher/dsinit.c projects/sendfile/sys/contrib/dev/acpica/components/dispatcher/dsopcode.c projects/sendfile/sys/contrib/dev/acpica/components/events/evregion.c projects/sendfile/sys/contrib/dev/acpica/components/executer/exconfig.c projects/sendfile/sys/contrib/dev/acpica/components/executer/exdump.c projects/sendfile/sys/contrib/dev/acpica/components/executer/exresnte.c projects/sendfile/sys/contrib/dev/acpica/components/executer/exresolv.c projects/sendfile/sys/contrib/dev/acpica/components/hardware/hwxfsleep.c projects/sendfile/sys/contrib/dev/acpica/components/namespace/nseval.c projects/sendfile/sys/contrib/dev/acpica/components/namespace/nsload.c projects/sendfile/sys/contrib/dev/acpica/components/namespace/nsutils.c projects/sendfile/sys/contrib/dev/acpica/components/parser/psloop.c projects/sendfile/sys/contrib/dev/acpica/components/resources/rsdump.c projects/sendfile/sys/contrib/dev/acpica/components/tables/tbfadt.c projects/sendfile/sys/contrib/dev/acpica/components/tables/tbfind.c projects/sendfile/sys/contrib/dev/acpica/components/tables/tbinstal.c projects/sendfile/sys/contrib/dev/acpica/components/tables/tbutils.c projects/sendfile/sys/contrib/dev/acpica/components/tables/tbxfload.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utfileio.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utinit.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utmisc.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utnonansi.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utxface.c projects/sendfile/sys/contrib/dev/acpica/components/utilities/utxfinit.c projects/sendfile/sys/contrib/dev/acpica/include/acbuffer.h projects/sendfile/sys/contrib/dev/acpica/include/acconfig.h projects/sendfile/sys/contrib/dev/acpica/include/acdebug.h projects/sendfile/sys/contrib/dev/acpica/include/acdisasm.h projects/sendfile/sys/contrib/dev/acpica/include/acexcep.h projects/sendfile/sys/contrib/dev/acpica/include/acglobal.h projects/sendfile/sys/contrib/dev/acpica/include/aclocal.h projects/sendfile/sys/contrib/dev/acpica/include/acpixf.h projects/sendfile/sys/contrib/dev/acpica/include/actables.h projects/sendfile/sys/contrib/dev/acpica/include/actypes.h projects/sendfile/sys/contrib/dev/acpica/include/acutils.h projects/sendfile/sys/contrib/dev/acpica/include/platform/acenv.h projects/sendfile/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_ani.c projects/sendfile/sys/contrib/ipfilter/netinet/ip_state.c projects/sendfile/sys/dev/acpica/Osd/OsdDebug.c projects/sendfile/sys/dev/ath/ath_rate/sample/sample.c projects/sendfile/sys/dev/ath/ath_rate/sample/sample.h projects/sendfile/sys/dev/ath/if_ath.c projects/sendfile/sys/dev/ath/if_ath_beacon.c projects/sendfile/sys/dev/ath/if_ath_debug.h projects/sendfile/sys/dev/ath/if_ath_misc.h projects/sendfile/sys/dev/ath/if_ath_rx.c projects/sendfile/sys/dev/ath/if_ath_rx_edma.c projects/sendfile/sys/dev/ath/if_ath_sysctl.c projects/sendfile/sys/dev/ath/if_ath_tdma.c projects/sendfile/sys/dev/ath/if_ath_tx.c projects/sendfile/sys/dev/ath/if_ath_tx_edma.c projects/sendfile/sys/dev/ath/if_athvar.h projects/sendfile/sys/dev/bwi/bwimac.c projects/sendfile/sys/dev/bwi/bwiphy.c projects/sendfile/sys/dev/bwi/bwirf.c projects/sendfile/sys/dev/bwi/if_bwi.c projects/sendfile/sys/dev/bwi/if_bwivar.h projects/sendfile/sys/dev/bwn/if_bwn.c projects/sendfile/sys/dev/bwn/if_bwnvar.h projects/sendfile/sys/dev/ciss/ciss.c projects/sendfile/sys/dev/cxgbe/adapter.h projects/sendfile/sys/dev/cxgbe/t4_main.c projects/sendfile/sys/dev/cxgbe/tom/t4_ddp.c projects/sendfile/sys/dev/cyapa/cyapa.c projects/sendfile/sys/dev/drm2/drmP.h projects/sendfile/sys/dev/drm2/i915/i915_dma.c projects/sendfile/sys/dev/drm2/i915/i915_drv.c projects/sendfile/sys/dev/drm2/i915/i915_drv.h projects/sendfile/sys/dev/drm2/i915/i915_gem.c projects/sendfile/sys/dev/drm2/i915/i915_gem_execbuffer.c projects/sendfile/sys/dev/drm2/i915/i915_gem_gtt.c projects/sendfile/sys/dev/drm2/i915/i915_gem_tiling.c projects/sendfile/sys/dev/drm2/i915/i915_reg.h projects/sendfile/sys/dev/drm2/i915/intel_ddi.c projects/sendfile/sys/dev/drm2/i915/intel_display.c projects/sendfile/sys/dev/drm2/i915/intel_drv.h projects/sendfile/sys/dev/drm2/i915/intel_pm.c projects/sendfile/sys/dev/drm2/i915/intel_ringbuffer.h projects/sendfile/sys/dev/drm2/i915/intel_sdvo_regs.h projects/sendfile/sys/dev/drm2/radeon/radeon_device.c projects/sendfile/sys/dev/drm2/ttm/ttm_bo.c projects/sendfile/sys/dev/dwc/if_dwc.c projects/sendfile/sys/dev/e1000/e1000_80003es2lan.c projects/sendfile/sys/dev/e1000/e1000_82540.c projects/sendfile/sys/dev/e1000/e1000_82541.c projects/sendfile/sys/dev/e1000/e1000_82541.h projects/sendfile/sys/dev/e1000/e1000_82542.c projects/sendfile/sys/dev/e1000/e1000_82543.c projects/sendfile/sys/dev/e1000/e1000_82543.h projects/sendfile/sys/dev/e1000/e1000_82571.h projects/sendfile/sys/dev/e1000/e1000_82575.c projects/sendfile/sys/dev/e1000/e1000_82575.h projects/sendfile/sys/dev/e1000/e1000_api.c projects/sendfile/sys/dev/e1000/e1000_api.h projects/sendfile/sys/dev/e1000/e1000_defines.h projects/sendfile/sys/dev/e1000/e1000_hw.h projects/sendfile/sys/dev/e1000/e1000_i210.c projects/sendfile/sys/dev/e1000/e1000_i210.h projects/sendfile/sys/dev/e1000/e1000_ich8lan.c projects/sendfile/sys/dev/e1000/e1000_ich8lan.h projects/sendfile/sys/dev/e1000/e1000_mac.c projects/sendfile/sys/dev/e1000/e1000_mac.h projects/sendfile/sys/dev/e1000/e1000_manage.c projects/sendfile/sys/dev/e1000/e1000_nvm.c projects/sendfile/sys/dev/e1000/e1000_nvm.h projects/sendfile/sys/dev/e1000/e1000_osdep.h projects/sendfile/sys/dev/e1000/e1000_phy.c projects/sendfile/sys/dev/e1000/e1000_regs.h projects/sendfile/sys/dev/e1000/if_em.c projects/sendfile/sys/dev/e1000/if_igb.c projects/sendfile/sys/dev/e1000/if_igb.h projects/sendfile/sys/dev/fdt/fdt_slicer.c projects/sendfile/sys/dev/filemon/filemon.c projects/sendfile/sys/dev/filemon/filemon_lock.c projects/sendfile/sys/dev/filemon/filemon_wrapper.c projects/sendfile/sys/dev/gpio/gpiobus.c projects/sendfile/sys/dev/hwpmc/hwpmc_mod.c projects/sendfile/sys/dev/ichiic/ig4_iic.c projects/sendfile/sys/dev/ichwd/ichwd.c projects/sendfile/sys/dev/ichwd/ichwd.h projects/sendfile/sys/dev/if_ndis/if_ndis.c projects/sendfile/sys/dev/if_ndis/if_ndisvar.h projects/sendfile/sys/dev/ipmi/ipmi_smbios.c projects/sendfile/sys/dev/ipmi/ipmivars.h projects/sendfile/sys/dev/ipw/if_ipw.c projects/sendfile/sys/dev/ipw/if_ipwvar.h projects/sendfile/sys/dev/isci/isci.c projects/sendfile/sys/dev/isci/isci_interrupt.c projects/sendfile/sys/dev/isl/isl.c projects/sendfile/sys/dev/iwi/if_iwi.c projects/sendfile/sys/dev/iwi/if_iwivar.h projects/sendfile/sys/dev/iwm/if_iwm.c projects/sendfile/sys/dev/iwm/if_iwm_mac_ctxt.c projects/sendfile/sys/dev/iwm/if_iwm_phy_ctxt.c projects/sendfile/sys/dev/iwm/if_iwm_power.c projects/sendfile/sys/dev/iwm/if_iwm_scan.c projects/sendfile/sys/dev/iwm/if_iwmvar.h projects/sendfile/sys/dev/iwn/if_iwn.c projects/sendfile/sys/dev/iwn/if_iwn_ioctl.h projects/sendfile/sys/dev/iwn/if_iwnvar.h projects/sendfile/sys/dev/malo/if_malo.c projects/sendfile/sys/dev/malo/if_malo.h projects/sendfile/sys/dev/mii/brgphy.c projects/sendfile/sys/dev/mii/miidevs projects/sendfile/sys/dev/mmc/host/dwmmc.c projects/sendfile/sys/dev/mmc/mmc.c projects/sendfile/sys/dev/msk/if_mskreg.h projects/sendfile/sys/dev/mwl/if_mwl.c projects/sendfile/sys/dev/mwl/if_mwl_pci.c projects/sendfile/sys/dev/mwl/if_mwlvar.h projects/sendfile/sys/dev/netmap/netmap.c projects/sendfile/sys/dev/pccbb/pccbb.c projects/sendfile/sys/dev/ral/if_ral_pci.c projects/sendfile/sys/dev/ral/rt2560.c projects/sendfile/sys/dev/ral/rt2560var.h projects/sendfile/sys/dev/ral/rt2661.c projects/sendfile/sys/dev/ral/rt2661var.h projects/sendfile/sys/dev/ral/rt2860.c projects/sendfile/sys/dev/ral/rt2860var.h projects/sendfile/sys/dev/random/build.sh projects/sendfile/sys/dev/random/fortuna.c projects/sendfile/sys/dev/random/random_harvestq.c projects/sendfile/sys/dev/random/unit_test.c projects/sendfile/sys/dev/random/yarrow.c projects/sendfile/sys/dev/re/if_re.c projects/sendfile/sys/dev/rl/if_rlreg.h projects/sendfile/sys/dev/sound/midi/midi.c projects/sendfile/sys/dev/uart/uart_bus_pci.c projects/sendfile/sys/dev/uart/uart_cpu_fdt.c projects/sendfile/sys/dev/usb/controller/uhci_pci.c projects/sendfile/sys/dev/usb/controller/xhci_pci.c projects/sendfile/sys/dev/usb/quirk/usb_quirk.c projects/sendfile/sys/dev/usb/serial/u3g.c projects/sendfile/sys/dev/usb/usbdevs projects/sendfile/sys/dev/usb/wlan/if_rsu.c projects/sendfile/sys/dev/usb/wlan/if_rsureg.h projects/sendfile/sys/dev/usb/wlan/if_rum.c projects/sendfile/sys/dev/usb/wlan/if_rumvar.h projects/sendfile/sys/dev/usb/wlan/if_run.c projects/sendfile/sys/dev/usb/wlan/if_runvar.h projects/sendfile/sys/dev/usb/wlan/if_uath.c projects/sendfile/sys/dev/usb/wlan/if_uathvar.h projects/sendfile/sys/dev/usb/wlan/if_upgt.c projects/sendfile/sys/dev/usb/wlan/if_upgtvar.h projects/sendfile/sys/dev/usb/wlan/if_ural.c projects/sendfile/sys/dev/usb/wlan/if_uralvar.h projects/sendfile/sys/dev/usb/wlan/if_urtw.c projects/sendfile/sys/dev/usb/wlan/if_urtwn.c projects/sendfile/sys/dev/usb/wlan/if_urtwnreg.h projects/sendfile/sys/dev/usb/wlan/if_urtwvar.h projects/sendfile/sys/dev/usb/wlan/if_zyd.c projects/sendfile/sys/dev/usb/wlan/if_zydreg.h projects/sendfile/sys/dev/virtio/network/if_vtnet.c projects/sendfile/sys/dev/vt/vt.h projects/sendfile/sys/dev/vt/vt_core.c projects/sendfile/sys/dev/vt/vt_cpulogos.c projects/sendfile/sys/dev/wi/if_wi.c projects/sendfile/sys/dev/wi/if_wi_macio.c projects/sendfile/sys/dev/wi/if_wi_pccard.c projects/sendfile/sys/dev/wi/if_wi_pci.c projects/sendfile/sys/dev/wi/if_wivar.h projects/sendfile/sys/dev/wpi/if_wpi.c projects/sendfile/sys/dev/wpi/if_wpivar.h projects/sendfile/sys/dev/wtap/if_wtap.c projects/sendfile/sys/dev/wtap/if_wtapvar.h projects/sendfile/sys/dev/xen/blkback/blkback.c projects/sendfile/sys/dev/xen/blkfront/blkfront.c projects/sendfile/sys/dev/xen/netfront/netfront.c projects/sendfile/sys/dev/xen/xenstore/xenstore.c projects/sendfile/sys/fs/devfs/devfs_vfsops.c projects/sendfile/sys/fs/devfs/devfs_vnops.c projects/sendfile/sys/fs/nfs/nfs_commonacl.c projects/sendfile/sys/geom/geom_flashmap.c projects/sendfile/sys/geom/geom_io.c projects/sendfile/sys/geom/nop/g_nop.c projects/sendfile/sys/geom/nop/g_nop.h projects/sendfile/sys/gnu/fs/reiserfs/reiserfs_vfsops.c projects/sendfile/sys/i386/i386/machdep.c projects/sendfile/sys/i386/i386/trap.c projects/sendfile/sys/i386/include/stack.h projects/sendfile/sys/kern/imgact_elf.c projects/sendfile/sys/kern/init_main.c projects/sendfile/sys/kern/kern_descrip.c projects/sendfile/sys/kern/kern_event.c projects/sendfile/sys/kern/kern_exec.c projects/sendfile/sys/kern/kern_proc.c projects/sendfile/sys/kern/kern_procctl.c projects/sendfile/sys/kern/kern_timeout.c projects/sendfile/sys/kern/ksched.c projects/sendfile/sys/kern/link_elf.c projects/sendfile/sys/kern/sched_ule.c projects/sendfile/sys/kern/subr_acl_nfs4.c projects/sendfile/sys/kern/subr_module.c projects/sendfile/sys/kern/subr_param.c projects/sendfile/sys/kern/subr_syscall.c projects/sendfile/sys/kern/sys_process.c projects/sendfile/sys/kern/uipc_usrreq.c projects/sendfile/sys/kern/vfs_bio.c projects/sendfile/sys/kern/vfs_cache.c projects/sendfile/sys/kern/vfs_hash.c projects/sendfile/sys/kern/vfs_mount.c projects/sendfile/sys/kern/vfs_mountroot.c projects/sendfile/sys/kern/vfs_subr.c projects/sendfile/sys/kern/vfs_syscalls.c projects/sendfile/sys/kern/vfs_vnops.c projects/sendfile/sys/kern/vnode_if.src projects/sendfile/sys/mips/beri/beri_machdep.c projects/sendfile/sys/mips/mips/fp.S projects/sendfile/sys/mips/mips/stack_machdep.c projects/sendfile/sys/mips/mips/trap.c projects/sendfile/sys/mips/rmi/dev/nlge/if_nlge.c projects/sendfile/sys/mips/rmi/files.xlr projects/sendfile/sys/mips/rmi/iodi.c projects/sendfile/sys/modules/Makefile projects/sendfile/sys/modules/am335x_dmtpps/Makefile projects/sendfile/sys/modules/ctl/Makefile projects/sendfile/sys/net/altq/altq.h projects/sendfile/sys/net/altq/altq_cbq.c projects/sendfile/sys/net/altq/altq_cbq.h projects/sendfile/sys/net/altq/altq_classq.h projects/sendfile/sys/net/altq/altq_fairq.c projects/sendfile/sys/net/altq/altq_fairq.h projects/sendfile/sys/net/altq/altq_hfsc.c projects/sendfile/sys/net/altq/altq_hfsc.h projects/sendfile/sys/net/altq/altq_priq.c projects/sendfile/sys/net/altq/altq_priq.h projects/sendfile/sys/net/altq/altq_rmclass.c projects/sendfile/sys/net/altq/altq_rmclass.h projects/sendfile/sys/net/altq/altq_subr.c projects/sendfile/sys/net/altq/altq_var.h projects/sendfile/sys/net/if.c projects/sendfile/sys/net/if_dl.h projects/sendfile/sys/net/if_epair.c projects/sendfile/sys/net/if_gif.c projects/sendfile/sys/net/if_gif.h projects/sendfile/sys/net/if_llatbl.c projects/sendfile/sys/net/if_llatbl.h projects/sendfile/sys/net/if_var.h projects/sendfile/sys/net/pfvar.h projects/sendfile/sys/net/route.c projects/sendfile/sys/net/route.h projects/sendfile/sys/net/rss_config.c projects/sendfile/sys/net/rss_config.h projects/sendfile/sys/net80211/ieee80211.c projects/sendfile/sys/net80211/ieee80211_ddb.c projects/sendfile/sys/net80211/ieee80211_freebsd.c projects/sendfile/sys/net80211/ieee80211_ioctl.c projects/sendfile/sys/net80211/ieee80211_output.c projects/sendfile/sys/net80211/ieee80211_power.c projects/sendfile/sys/net80211/ieee80211_proto.c projects/sendfile/sys/net80211/ieee80211_proto.h projects/sendfile/sys/net80211/ieee80211_regdomain.c projects/sendfile/sys/net80211/ieee80211_scan_sta.c projects/sendfile/sys/net80211/ieee80211_var.h projects/sendfile/sys/netgraph/ng_pppoe.c projects/sendfile/sys/netgraph/ng_pppoe.h projects/sendfile/sys/netinet/if_ether.c projects/sendfile/sys/netinet/if_ether.h projects/sendfile/sys/netinet/in.c projects/sendfile/sys/netinet/in_kdtrace.c projects/sendfile/sys/netinet/in_kdtrace.h projects/sendfile/sys/netinet/in_pcb.h projects/sendfile/sys/netinet/in_rss.c projects/sendfile/sys/netinet/in_rss.h projects/sendfile/sys/netinet/ip_carp.c projects/sendfile/sys/netinet/ip_input.c projects/sendfile/sys/netinet/sctp.h projects/sendfile/sys/netinet/sctp_auth.c projects/sendfile/sys/netinet/sctp_constants.h projects/sendfile/sys/netinet/sctp_header.h projects/sendfile/sys/netinet/sctp_indata.c projects/sendfile/sys/netinet/sctp_input.c projects/sendfile/sys/netinet/sctp_output.c projects/sendfile/sys/netinet/sctp_sysctl.c projects/sendfile/sys/netinet/sctp_sysctl.h projects/sendfile/sys/netinet/sctp_usrreq.c projects/sendfile/sys/netinet/sctputil.c projects/sendfile/sys/netinet/sctputil.h projects/sendfile/sys/netinet/tcp_input.c projects/sendfile/sys/netinet/tcp_output.c projects/sendfile/sys/netinet/tcp_subr.c projects/sendfile/sys/netinet/tcp_syncache.c projects/sendfile/sys/netinet/tcp_syncache.h projects/sendfile/sys/netinet/tcp_timer.c projects/sendfile/sys/netinet/tcp_usrreq.c projects/sendfile/sys/netinet/tcp_var.h projects/sendfile/sys/netinet/toecore.c projects/sendfile/sys/netinet/udp_usrreq.c projects/sendfile/sys/netinet/udp_var.h projects/sendfile/sys/netinet6/icmp6.c projects/sendfile/sys/netinet6/in6.c projects/sendfile/sys/netinet6/in6.h projects/sendfile/sys/netinet6/in6_ifattach.c projects/sendfile/sys/netinet6/in6_rss.c projects/sendfile/sys/netinet6/in6_rss.h projects/sendfile/sys/netinet6/in6_var.h projects/sendfile/sys/netinet6/ip6_input.c projects/sendfile/sys/netinet6/ip6_output.c projects/sendfile/sys/netinet6/ip6_var.h projects/sendfile/sys/netinet6/nd6.c projects/sendfile/sys/netinet6/nd6.h projects/sendfile/sys/netinet6/nd6_nbr.c projects/sendfile/sys/netinet6/nd6_rtr.c projects/sendfile/sys/netinet6/udp6_usrreq.c projects/sendfile/sys/netpfil/ipfw/ip_fw_private.h projects/sendfile/sys/netpfil/pf/pf.c projects/sendfile/sys/netpfil/pf/pf_altq.h projects/sendfile/sys/netpfil/pf/pf_if.c projects/sendfile/sys/netpfil/pf/pf_norm.c projects/sendfile/sys/ofed/include/linux/linux_compat.c projects/sendfile/sys/ofed/include/linux/mm.h projects/sendfile/sys/powerpc/booke/locore.S projects/sendfile/sys/powerpc/booke/pmap.c projects/sendfile/sys/powerpc/booke/trap_subr.S projects/sendfile/sys/powerpc/include/_types.h projects/sendfile/sys/powerpc/include/pmap.h projects/sendfile/sys/powerpc/include/pte.h projects/sendfile/sys/powerpc/include/spr.h projects/sendfile/sys/powerpc/include/tlb.h projects/sendfile/sys/powerpc/mpc85xx/fsl_sdhc.c projects/sendfile/sys/powerpc/mpc85xx/mpc85xx.h projects/sendfile/sys/powerpc/mpc85xx/pci_mpc85xx.c projects/sendfile/sys/powerpc/mpc85xx/pci_mpc85xx_pcib.c projects/sendfile/sys/powerpc/mpc85xx/platform_mpc85xx.c projects/sendfile/sys/powerpc/ofw/ofw_machdep.c projects/sendfile/sys/powerpc/powerpc/pmap_dispatch.c projects/sendfile/sys/powerpc/powerpc/stack_machdep.c projects/sendfile/sys/powerpc/powerpc/trap.c projects/sendfile/sys/powerpc/powerpc/uma_machdep.c projects/sendfile/sys/rpc/rpc_generic.c projects/sendfile/sys/rpc/svc_vc.c projects/sendfile/sys/sparc64/ebus/ebus.c projects/sendfile/sys/sparc64/include/smp.h projects/sendfile/sys/sparc64/pci/fire.c projects/sendfile/sys/sparc64/pci/firereg.h projects/sendfile/sys/sparc64/pci/firevar.h projects/sendfile/sys/sparc64/pci/ofw_pci.h projects/sendfile/sys/sparc64/pci/psycho.c projects/sendfile/sys/sparc64/pci/psychoreg.h projects/sendfile/sys/sparc64/pci/psychovar.h projects/sendfile/sys/sparc64/pci/schizo.c projects/sendfile/sys/sparc64/pci/schizoreg.h projects/sendfile/sys/sparc64/pci/schizovar.h projects/sendfile/sys/sparc64/sparc64/stack_machdep.c projects/sendfile/sys/sparc64/sparc64/trap.c projects/sendfile/sys/sys/_callout.h projects/sendfile/sys/sys/acl.h projects/sendfile/sys/sys/callout.h projects/sendfile/sys/sys/capsicum.h projects/sendfile/sys/sys/cdefs.h projects/sendfile/sys/sys/conf.h projects/sendfile/sys/sys/exec.h projects/sendfile/sys/sys/filedesc.h projects/sendfile/sys/sys/pcpu.h projects/sendfile/sys/sys/posix4.h projects/sendfile/sys/sys/proc.h projects/sendfile/sys/sys/ptrace.h projects/sendfile/sys/sys/random.h projects/sendfile/sys/sys/slicer.h projects/sendfile/sys/sys/stack.h projects/sendfile/sys/sys/user.h projects/sendfile/sys/sys/vmmeter.h projects/sendfile/sys/sys/vnode.h projects/sendfile/sys/teken/teken_subr.h projects/sendfile/sys/ufs/ffs/ffs_softdep.c projects/sendfile/sys/vm/swap_pager.c projects/sendfile/sys/vm/uma_core.c projects/sendfile/sys/vm/vm_map.c projects/sendfile/sys/vm/vm_meter.c projects/sendfile/sys/vm/vm_page.c projects/sendfile/sys/vm/vm_pageout.c projects/sendfile/sys/vm/vm_param.h projects/sendfile/sys/x86/acpica/madt.c projects/sendfile/sys/x86/include/apicvar.h projects/sendfile/sys/x86/include/ofw_machdep.h projects/sendfile/sys/x86/x86/fdt_machdep.c projects/sendfile/sys/x86/x86/local_apic.c projects/sendfile/sys/x86/x86/mp_x86.c projects/sendfile/sys/x86/x86/nexus.c projects/sendfile/sys/x86/xen/hvm.c projects/sendfile/sys/xen/xen-os.h projects/sendfile/tests/sys/kern/ptrace_test.c projects/sendfile/tests/sys/vm/mmap_test.c projects/sendfile/tools/regression/acltools/tools-crossfs.test projects/sendfile/tools/regression/acltools/tools-nfs4-psarc.test projects/sendfile/tools/regression/acltools/tools-nfs4-trivial.test projects/sendfile/tools/regression/acltools/tools-nfs4.test projects/sendfile/tools/regression/lib/libc/gen/test-wordexp.c projects/sendfile/tools/regression/lib/msun/test-cexp.c projects/sendfile/tools/regression/lib/msun/test-csqrt.c projects/sendfile/tools/regression/lib/msun/test-invtrig.c projects/sendfile/tools/regression/lib/msun/test-trig.c projects/sendfile/tools/regression/p1003_1b/main.c projects/sendfile/tools/tools/ath/athaggrstats/athaggrstats.c projects/sendfile/tools/tools/ath/athaggrstats/main.c projects/sendfile/tools/tools/ath/athdebug/athdebug.c projects/sendfile/tools/tools/ath/athrd/athrd.c projects/sendfile/tools/tools/ath/athstats/athstats.c projects/sendfile/tools/tools/ath/athstats/main.c projects/sendfile/tools/tools/ath/common/ah_osdep.h projects/sendfile/tools/tools/ath/common/dumpregs_5210.c projects/sendfile/tools/tools/ath/common/dumpregs_5211.c projects/sendfile/tools/tools/ath/common/dumpregs_5212.c projects/sendfile/tools/tools/ath/common/dumpregs_5416.c projects/sendfile/tools/tools/crypto/cryptostats.c projects/sendfile/tools/tools/crypto/cryptotest.c projects/sendfile/tools/tools/crypto/hifnstats.c projects/sendfile/tools/tools/crypto/ipsecstats.c projects/sendfile/tools/tools/crypto/safestats.c projects/sendfile/tools/tools/crypto/ubsecstats.c projects/sendfile/tools/tools/cxgbetool/cxgbetool.c projects/sendfile/tools/tools/iwn/iwnstats/iwn_ioctl.c projects/sendfile/tools/tools/iwn/iwnstats/iwn_ioctl.h projects/sendfile/tools/tools/iwn/iwnstats/iwnstats.h projects/sendfile/tools/tools/iwn/iwnstats/main.c projects/sendfile/tools/tools/mwl/mwldebug/mwldebug.c projects/sendfile/tools/tools/mwl/mwlstats/mwlstats.c projects/sendfile/tools/tools/nanobsd/defaults.sh projects/sendfile/tools/tools/nanobsd/pcengines/common.conf projects/sendfile/tools/tools/nanobsd/rescue/common projects/sendfile/tools/tools/net80211/wlanstats/main.c projects/sendfile/tools/tools/net80211/wlanstats/wlanstats.c projects/sendfile/tools/tools/net80211/wlantxtime/wlantxtime.c projects/sendfile/tools/tools/npe/npestats/main.c projects/sendfile/tools/tools/npe/npestats/npestats.c projects/sendfile/tools/tools/sysbuild/sysbuild.sh projects/sendfile/tools/tools/usbtest/Makefile projects/sendfile/usr.bin/ar/ar.c projects/sendfile/usr.bin/at/Makefile.inc projects/sendfile/usr.bin/bluetooth/btsockstat/btsockstat.c projects/sendfile/usr.bin/calendar/calendars/calendar.christian projects/sendfile/usr.bin/calendar/calendars/calendar.freebsd projects/sendfile/usr.bin/iconv/iconv.c projects/sendfile/usr.bin/iscsictl/Makefile projects/sendfile/usr.bin/login/login.c projects/sendfile/usr.bin/login/login_fbtab.c projects/sendfile/usr.bin/netstat/Makefile projects/sendfile/usr.bin/netstat/flowtable.c projects/sendfile/usr.bin/netstat/if.c projects/sendfile/usr.bin/netstat/inet.c projects/sendfile/usr.bin/netstat/inet6.c projects/sendfile/usr.bin/netstat/main.c projects/sendfile/usr.bin/netstat/mbuf.c projects/sendfile/usr.bin/netstat/mroute.c projects/sendfile/usr.bin/netstat/mroute6.c projects/sendfile/usr.bin/netstat/netgraph.c projects/sendfile/usr.bin/netstat/netisr.c projects/sendfile/usr.bin/netstat/netstat.1 projects/sendfile/usr.bin/netstat/netstat.h projects/sendfile/usr.bin/netstat/route.c projects/sendfile/usr.bin/netstat/sctp.c projects/sendfile/usr.bin/procstat/Makefile projects/sendfile/usr.bin/procstat/procstat.1 projects/sendfile/usr.bin/procstat/procstat.c projects/sendfile/usr.bin/procstat/procstat.h projects/sendfile/usr.bin/procstat/procstat_args.c projects/sendfile/usr.bin/procstat/procstat_auxv.c projects/sendfile/usr.bin/procstat/procstat_basic.c projects/sendfile/usr.bin/procstat/procstat_bin.c projects/sendfile/usr.bin/procstat/procstat_cred.c projects/sendfile/usr.bin/procstat/procstat_cs.c projects/sendfile/usr.bin/procstat/procstat_files.c projects/sendfile/usr.bin/procstat/procstat_kstack.c projects/sendfile/usr.bin/procstat/procstat_rlimit.c projects/sendfile/usr.bin/procstat/procstat_rusage.c projects/sendfile/usr.bin/procstat/procstat_sigs.c projects/sendfile/usr.bin/procstat/procstat_threads.c projects/sendfile/usr.bin/procstat/procstat_vm.c projects/sendfile/usr.bin/rctl/rctl.8 projects/sendfile/usr.bin/script/script.1 projects/sendfile/usr.bin/sockstat/sockstat.1 projects/sendfile/usr.bin/sockstat/sockstat.c projects/sendfile/usr.bin/systat/iostat.c projects/sendfile/usr.bin/systat/netstat.c projects/sendfile/usr.bin/systat/pigs.c projects/sendfile/usr.bin/systat/vmstat.c projects/sendfile/usr.bin/tftp/main.c projects/sendfile/usr.bin/truss/amd64-fbsd.c projects/sendfile/usr.bin/truss/amd64-fbsd32.c projects/sendfile/usr.bin/truss/amd64-linux32.c projects/sendfile/usr.bin/truss/arm-fbsd.c projects/sendfile/usr.bin/truss/i386-fbsd.c projects/sendfile/usr.bin/truss/i386-linux.c projects/sendfile/usr.bin/truss/main.c projects/sendfile/usr.bin/truss/mips-fbsd.c projects/sendfile/usr.bin/truss/powerpc-fbsd.c projects/sendfile/usr.bin/truss/powerpc64-fbsd.c projects/sendfile/usr.bin/truss/sparc64-fbsd.c projects/sendfile/usr.bin/truss/syscall.h projects/sendfile/usr.bin/truss/syscalls.c projects/sendfile/usr.bin/vi/catalog/Makefile projects/sendfile/usr.bin/vmstat/vmstat.c projects/sendfile/usr.bin/vtfontcvt/vtfontcvt.c projects/sendfile/usr.bin/w/Makefile projects/sendfile/usr.bin/w/w.c projects/sendfile/usr.bin/wc/Makefile projects/sendfile/usr.bin/whois/whois.c projects/sendfile/usr.bin/xargs/tests/regress.n2P0.out projects/sendfile/usr.bin/xargs/tests/regress.sh projects/sendfile/usr.bin/xo/Makefile projects/sendfile/usr.bin/ypcat/ypcat.1 projects/sendfile/usr.bin/ypmatch/ypmatch.1 projects/sendfile/usr.bin/ypwhich/Makefile projects/sendfile/usr.bin/ypwhich/ypwhich.1 projects/sendfile/usr.bin/ypwhich/ypwhich.c projects/sendfile/usr.sbin/Makefile projects/sendfile/usr.sbin/acpi/acpidb/acpidb.c projects/sendfile/usr.sbin/bluetooth/hccontrol/le.c projects/sendfile/usr.sbin/boot0cfg/boot0cfg.8 projects/sendfile/usr.sbin/bsdconfig/share/common.subr projects/sendfile/usr.sbin/bsdinstall/scripts/config projects/sendfile/usr.sbin/bsdinstall/scripts/docsinstall projects/sendfile/usr.sbin/bsdinstall/scripts/hostname projects/sendfile/usr.sbin/bsdinstall/scripts/jail projects/sendfile/usr.sbin/bsdinstall/scripts/keymap projects/sendfile/usr.sbin/bsdinstall/scripts/netconfig_ipv4 projects/sendfile/usr.sbin/bsdinstall/scripts/netconfig_ipv6 projects/sendfile/usr.sbin/bsdinstall/scripts/rootpass projects/sendfile/usr.sbin/bsdinstall/scripts/script projects/sendfile/usr.sbin/bsdinstall/scripts/wlanconfig projects/sendfile/usr.sbin/bsdinstall/scripts/zfsboot projects/sendfile/usr.sbin/config/main.c projects/sendfile/usr.sbin/ctladm/ctladm.8 projects/sendfile/usr.sbin/ctladm/ctladm.c projects/sendfile/usr.sbin/ctld/ctl.conf.5 projects/sendfile/usr.sbin/ctld/ctld.8 projects/sendfile/usr.sbin/ctld/ctld.c projects/sendfile/usr.sbin/ctld/ctld.h projects/sendfile/usr.sbin/ctld/kernel.c projects/sendfile/usr.sbin/ctld/login.c projects/sendfile/usr.sbin/ctld/parse.y projects/sendfile/usr.sbin/ctld/token.l projects/sendfile/usr.sbin/fstyp/Makefile projects/sendfile/usr.sbin/gstat/gstat.c projects/sendfile/usr.sbin/hyperv/Makefile.inc projects/sendfile/usr.sbin/i2c/i2c.c projects/sendfile/usr.sbin/iscsid/iscsid.8 projects/sendfile/usr.sbin/makefs/mtree.c projects/sendfile/usr.sbin/ndp/ndp.c projects/sendfile/usr.sbin/ntp/Makefile projects/sendfile/usr.sbin/ntp/config.h projects/sendfile/usr.sbin/pciconf/pathnames.h projects/sendfile/usr.sbin/pciconf/pciconf.8 projects/sendfile/usr.sbin/pciconf/pciconf.c projects/sendfile/usr.sbin/pkg/Makefile projects/sendfile/usr.sbin/pkg/config.c projects/sendfile/usr.sbin/pkg/config.h projects/sendfile/usr.sbin/pkg/dns_utils.c projects/sendfile/usr.sbin/pkg/pkg.c projects/sendfile/usr.sbin/pmcstat/pmcstat.c projects/sendfile/usr.sbin/pw/pw_user.c projects/sendfile/usr.sbin/pw/strtounum.c projects/sendfile/usr.sbin/pw/tests/pw_useradd.sh projects/sendfile/usr.sbin/rtsold/Makefile projects/sendfile/usr.sbin/rtsold/if.c projects/sendfile/usr.sbin/rtsold/rtsold.c projects/sendfile/usr.sbin/service/service.sh projects/sendfile/usr.sbin/syslogd/syslogd.c projects/sendfile/usr.sbin/sysrc/sysrc projects/sendfile/usr.sbin/sysrc/sysrc.8 projects/sendfile/usr.sbin/trpt/trpt.c projects/sendfile/usr.sbin/watchdogd/watchdogd.8 projects/sendfile/usr.sbin/watchdogd/watchdogd.c projects/sendfile/usr.sbin/wpa/hostapd/Makefile projects/sendfile/usr.sbin/wpa/wpa_supplicant/Makefile projects/sendfile/usr.sbin/yppoll/yppoll.8 projects/sendfile/usr.sbin/yppoll/yppoll.c projects/sendfile/usr.sbin/ypserv/Makefile projects/sendfile/usr.sbin/ypserv/Makefile.yp projects/sendfile/usr.sbin/ypserv/ypinit.8 projects/sendfile/usr.sbin/ypserv/ypinit.sh projects/sendfile/usr.sbin/ypset/ypset.8 Directory Properties: projects/sendfile/ (props changed) projects/sendfile/cddl/ (props changed) projects/sendfile/cddl/contrib/opensolaris/ (props changed) projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/ (props changed) projects/sendfile/contrib/compiler-rt/ (props changed) projects/sendfile/contrib/expat/ (props changed) projects/sendfile/contrib/file/ (props changed) projects/sendfile/contrib/llvm/ (props changed) projects/sendfile/contrib/llvm/tools/lldb/ (props changed) projects/sendfile/contrib/ncurses/ (props changed) projects/sendfile/contrib/subversion/ (props changed) projects/sendfile/contrib/tzdata/ (props changed) projects/sendfile/crypto/openssh/ (props changed) projects/sendfile/etc/ (props changed) projects/sendfile/gnu/usr.bin/binutils/ (props changed) projects/sendfile/include/ (props changed) projects/sendfile/lib/libc/ (props changed) projects/sendfile/lib/libutil/ (props changed) projects/sendfile/lib/libz/ (props changed) projects/sendfile/sbin/ (props changed) projects/sendfile/sbin/ipfw/ (props changed) projects/sendfile/share/ (props changed) projects/sendfile/share/man/man4/ (props changed) projects/sendfile/share/zoneinfo/ (props changed) projects/sendfile/sys/ (props changed) projects/sendfile/sys/boot/ (props changed) projects/sendfile/sys/cddl/contrib/opensolaris/ (props changed) projects/sendfile/sys/conf/ (props changed) projects/sendfile/sys/contrib/dev/acpica/ (props changed) projects/sendfile/sys/contrib/ipfilter/ (props changed) projects/sendfile/usr.bin/calendar/ (props changed) projects/sendfile/usr.bin/procstat/ (props changed) projects/sendfile/usr.sbin/rtsold/ (props changed) Modified: projects/sendfile/Makefile.inc1 ============================================================================== --- projects/sendfile/Makefile.inc1 Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/Makefile.inc1 Tue Sep 15 22:59:55 2015 (r287834) @@ -449,7 +449,6 @@ LIB32WMAKEENV+= MAKEOBJDIRPREFIX=${LIB32 PATH=${TMPPATH} \ LIBDIR=/usr/lib32 \ SHLIBDIR=/usr/lib32 \ - LIBPRIVATEDIR=/usr/lib32/private \ DTRACE="${DTRACE} -32" LIB32WMAKEFLAGS+= CC="${XCC} ${LIB32FLAGS}" \ CXX="${XCXX} ${LIB32FLAGS}" \ @@ -1128,6 +1127,16 @@ reinstallkernel reinstallkernel.debug: _ cd ${KRNLOBJDIR}/${INSTALLKERNEL}; \ ${CROSSENV} PATH=${TMPPATH} \ ${MAKE} ${IMAKE_INSTALL} KERNEL=${INSTKERNNAME} ${.TARGET:S/kernel//} +.if ${BUILDKERNELS:[#]} > 1 +.for _kernel in ${BUILDKERNELS:[2..-1]} + @echo "--------------------------------------------------------------" + @echo ">>> Installing kernel ${_kernel}" + @echo "--------------------------------------------------------------" + cd ${KRNLOBJDIR}/${_kernel}; \ + ${CROSSENV} PATH=${TMPPATH} \ + ${MAKE} ${IMAKE_INSTALL} KERNEL=${INSTKERNNAME}.${_kernel} ${.TARGET:S/kernel//} +.endfor +.endif distributekernel distributekernel.debug: .if empty(INSTALLKERNEL) @@ -1147,7 +1156,8 @@ distributekernel distributekernel.debug: sed -e 's|^./kernel|.|' ${DESTDIR}/${DISTDIR}/kernel.premeta > \ ${DESTDIR}/${DISTDIR}/kernel.meta .endif -.for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//} +.if ${BUILDKERNELS:[#]} > 1 +.for _kernel in ${BUILDKERNELS:[2..-1]} .if defined(NO_ROOT) echo "#${MTREE_MAGIC}" > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.premeta .endif @@ -1163,27 +1173,32 @@ distributekernel distributekernel.debug: ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta .endif .endfor +.endif packagekernel: .if defined(NO_ROOT) cd ${DESTDIR}/${DISTDIR}/kernel; \ tar cvf - @${DESTDIR}/${DISTDIR}/kernel.meta | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.txz -.for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//} +.if ${BUILDKERNELS:[#]} > 1 +.for _kernel in ${BUILDKERNELS:[2..-1]} cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - @${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz .endfor +.endif .else cd ${DESTDIR}/${DISTDIR}/kernel; \ tar cvf - . | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.txz -.for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//} +.if ${BUILDKERNELS:[#]} > 1 +.for _kernel in ${BUILDKERNELS:[2..-1]} cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - . | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.txz .endfor .endif +.endif # # doxygen @@ -1243,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw legacy: .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 - @echo "ERROR: Source upgrades from versions prior to 8.0 not supported."; \ + @echo "ERROR: Source upgrades from versions prior to 8.0 are not supported."; \ false .endif .for _tool in tools/build ${_elftoolchain_libs} @@ -1340,11 +1355,8 @@ ${_bt}-usr.bin/clang/clang-tblgen: ${_bt ${_bt}-usr.bin/clang/tblgen: ${_bt}-lib/clang/libllvmtablegen ${_bt}-lib/clang/libllvmsupport .endif -# ELF Tool Chain libraries are needed for ELF tools and dtrace tools. -# dtrace tools are required for older bootstrap env and cross-build -# pre libdwarf -.if ${BOOTSTRAPPING} < 1100006 || (${MACHINE} != ${TARGET} || \ - ${MACHINE_ARCH} != ${TARGET_ARCH}) +# Rebuild ctfconvert and ctfmerge to avoid difficult-to-diagnose failures +# resulting from missing bug fixes or ELF Toolchain updates. .if ${MK_CDDL} != "no" _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf cddl/usr.bin/ctfconvert \ cddl/usr.bin/ctfmerge @@ -1352,7 +1364,6 @@ _dtrace_tools= cddl/usr.bin/sgsmsg cddl/ ${_bt}-cddl/usr.bin/ctfconvert: ${_bt}-cddl/lib/libctf ${_bt}-cddl/usr.bin/ctfmerge: ${_bt}-cddl/lib/libctf .endif -.endif # Default to building the GPL DTC, but build the BSDL one if users explicitly # request it. @@ -1778,9 +1789,7 @@ cddl/lib/libctf__L: lib/libz__L .endif # cddl/lib/libdtrace requires lib/libproc and lib/librtld_db; it's only built # on select architectures though (see cddl/lib/Makefile) -.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_ARCH} == "amd64" || \ - ${MACHINE_CPUARCH} == "arm" || ${MACHINE_ARCH} == "i386" || \ - ${MACHINE_CPUARCH} == "mips" || ${MACHINE_CPUARCH} == "powerpc" +.if ${MACHINE_CPUARCH} != "sparc64" _prebuild_libs+= lib/libproc lib/librtld_db .endif Modified: projects/sendfile/ObsoleteFiles.inc ============================================================================== --- projects/sendfile/ObsoleteFiles.inc Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/ObsoleteFiles.inc Tue Sep 15 22:59:55 2015 (r287834) @@ -38,6 +38,12 @@ # xargs -n1 | sort | uniq -d; # done +# 20150818: *allocm() are gone in jemalloc 4.0.0 +OLD_FILES+=usr/share/man/man3/allocm.3.gz +OLD_FILES+=usr/share/man/man3/dallocm.3.gz +OLD_FILES+=usr/share/man/man3/nallocm.3.gz +OLD_FILES+=usr/share/man/man3/rallocm.3.gz +OLD_FILES+=usr/share/man/man3/sallocm.3.gz # 20150802: Remove netbsd's test on pw(8) OLD_FILES+=usr/tests/usr.sbin/pw/pw_test # 20150719: Remove libarchive.pc @@ -49,6 +55,9 @@ OLD_FILES+=usr/share/man/man4/dtrace-pro OLD_FILES+=usr/share/man/man4/dtrace-sched.4.gz OLD_FILES+=usr/share/man/man4/dtrace-tcp.4.gz OLD_FILES+=usr/share/man/man4/dtrace-udp.4.gz +# 20150624 +OLD_LIBS+=usr/lib/libugidfw.so.4 +OLD_LIBS+=usr/lib32/libugidfw.so.4 # 20150604: Move nvlist man pages to section 9. OLD_FILES+=usr/share/man/man3/libnv.3.gz OLD_FILES+=usr/share/man/man3/nvlist.3.gz Modified: projects/sendfile/UPDATING ============================================================================== --- projects/sendfile/UPDATING Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/UPDATING Tue Sep 15 22:59:55 2015 (r287834) @@ -31,6 +31,19 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20150827: + The wireless drivers had undergone changes that remove the 'parent + interface' from the ifconfig -l output. The rc.d network scripts + used to check presence of a parent interface in the list, so old + scripts would fail to start wireless networking. Thus, etcupdate(3) + or mergemaster(8) run is required after kernel update, to update your + rc.d scripts in /etc. + +20150827: + pf no longer supports 'scrub fragment crop' or 'scrub fragment drop-ovl' + These configurations are now automatically interpreted as + 'scrub fragment reassemble'. + 20150817: Kernel-loadable modules for the random(4) device are back. To use them, the kernel must have Modified: projects/sendfile/bin/df/df.c ============================================================================== --- projects/sendfile/bin/df/df.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/df/df.c Tue Sep 15 22:59:55 2015 (r287834) @@ -311,7 +311,7 @@ main(int argc, char *argv[]) xo_close_container("storage-system-information"); xo_finish(); - return (rv); + exit(rv); } static char * Modified: projects/sendfile/bin/ls/Makefile ============================================================================== --- projects/sendfile/bin/ls/Makefile Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/ls/Makefile Tue Sep 15 22:59:55 2015 (r287834) @@ -5,7 +5,7 @@ PROG= ls SRCS= cmp.c ls.c print.c util.c -LIBADD= util xo +LIBADD= xo util .if !defined(RELEASE_CRUNCH) && \ ${MK_LS_COLORS} != no Modified: projects/sendfile/bin/pkill/Makefile ============================================================================== --- projects/sendfile/bin/pkill/Makefile Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/Makefile Tue Sep 15 22:59:55 2015 (r287834) @@ -5,7 +5,7 @@ PROG= pkill -LIBADD= kvm +LIBADD= kvm jail LINKS= ${BINDIR}/pkill ${BINDIR}/pgrep MLINKS= pkill.1 pgrep.1 Modified: projects/sendfile/bin/pkill/Makefile.depend ============================================================================== --- projects/sendfile/bin/pkill/Makefile.depend Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/Makefile.depend Tue Sep 15 22:59:55 2015 (r287834) @@ -9,6 +9,7 @@ DIRDEPS = \ lib/${CSU_DIR} \ lib/libc \ lib/libcompiler_rt \ + lib/libjail \ lib/libkvm \ Modified: projects/sendfile/bin/pkill/pkill.1 ============================================================================== --- projects/sendfile/bin/pkill/pkill.1 Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/pkill.1 Tue Sep 15 22:59:55 2015 (r287834) @@ -29,7 +29,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd August 9, 2013 +.Dd August 21, 2015 .Dt PKILL 1 .Os .Sh NAME @@ -47,7 +47,7 @@ .Op Fl c Ar class .Op Fl d Ar delim .Op Fl g Ar pgrp -.Op Fl j Ar jid +.Op Fl j Ar jail .Op Fl s Ar sid .Op Fl t Ar tty .Op Fl u Ar euid @@ -63,7 +63,7 @@ .Op Fl U Ar uid .Op Fl c Ar class .Op Fl g Ar pgrp -.Op Fl j Ar jid +.Op Fl j Ar jail .Op Fl s Ar sid .Op Fl t Ar tty .Op Fl u Ar euid @@ -149,16 +149,16 @@ or command. .It Fl i Ignore case distinctions in both the process table and the supplied pattern. -.It Fl j Ar jid -Restrict matches to processes inside jails with a jail ID in the comma-separated -list -.Ar jid . -The value +.It Fl j Ar jail +Restrict matches to processes inside the specified jails. +The argument +.Ar jail +may be .Dq Li any -matches processes in any jail. -The value +to match processes in any jail, .Dq Li none -matches processes not in jail. +to match processes not in jail, +or a comma-separated list of jail IDs or names. .It Fl l Long output. For Modified: projects/sendfile/bin/pkill/pkill.c ============================================================================== --- projects/sendfile/bin/pkill/pkill.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/pkill.c Tue Sep 15 22:59:55 2015 (r287834) @@ -59,6 +59,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #define STATUS_MATCH 0 #define STATUS_NOMATCH 1 @@ -78,7 +79,7 @@ enum listtype { LT_GROUP, LT_TTY, LT_PGRP, - LT_JID, + LT_JAIL, LT_SID, LT_CLASS }; @@ -245,7 +246,7 @@ main(int argc, char **argv) cflags |= REG_ICASE; break; case 'j': - makelist(&jidlist, LT_JID, optarg); + makelist(&jidlist, LT_JAIL, optarg); criteria = 1; break; case 'l': @@ -585,7 +586,7 @@ usage(void) fprintf(stderr, "usage: %s %s [-F pidfile] [-G gid] [-M core] [-N system]\n" - " [-P ppid] [-U uid] [-c class] [-g pgrp] [-j jid]\n" + " [-P ppid] [-U uid] [-c class] [-g pgrp] [-j jail]\n" " [-s sid] [-t tty] [-u euid] pattern ...\n", getprogname(), ustr); @@ -700,7 +701,7 @@ makelist(struct listhead *head, enum lis if (li->li_number == 0) li->li_number = getsid(mypid); break; - case LT_JID: + case LT_JAIL: if (li->li_number < 0) errx(STATUS_BADUSAGE, "Negative jail ID `%s'", sp); @@ -766,15 +767,20 @@ foundtty: if ((st.st_mode & S_IFCHR) == li->li_number = st.st_rdev; break; - case LT_JID: + case LT_JAIL: { + int jid; + if (strcmp(sp, "none") == 0) li->li_number = 0; else if (strcmp(sp, "any") == 0) li->li_number = -1; + else if ((jid = jail_getid(sp)) != -1) + li->li_number = jid; else if (*ep != '\0') errx(STATUS_BADUSAGE, - "Invalid jail ID `%s'", sp); + "Invalid jail ID or name `%s'", sp); break; + } case LT_CLASS: li->li_number = -1; li->li_name = strdup(sp); Modified: projects/sendfile/bin/pkill/tests/pgrep-j_test.sh ============================================================================== --- projects/sendfile/bin/pkill/tests/pgrep-j_test.sh Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/tests/pgrep-j_test.sh Tue Sep 15 22:59:55 2015 (r287834) @@ -14,7 +14,7 @@ if [ `id -u` -ne 0 ]; then exit 0 fi -echo "1..3" +echo "1..4" sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep @@ -87,5 +87,30 @@ else fi [ -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) +wait + +# test 4 is like test 1 except with jname instead of jid. +name="pgrep -j " +sleep_amount=8 +jail -c path=/ name=${base}_4_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_4_1.pid $sleep $sleep_amount & + +jail -c path=/ name=${base}_4_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_4_2.pid $sleep $sleep_amount & + +sleep 0.5 + +jname="${base}_4_1,${base}_4_2" +pid1="$(pgrep -f -x -j "$jname" "$sleep $sleep_amount" | sort)" +pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_4_1.pid)" \ + $(cat ${PWD}/${base}_4_2.pid) | sort) +if [ "$pid1" = "$pid2" ]; then + echo "ok 4 - $name" +else + echo "not ok 4 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'" +fi +[ -f ${PWD}/${base}_4_1.pid ] && kill $(cat ${PWD}/${base}_4_1.pid) +[ -f ${PWD}/${base}_4_2.pid ] && kill $(cat ${PWD}/${base}_4_2.pid) +wait rm -f $sleep Modified: projects/sendfile/bin/pkill/tests/pkill-j_test.sh ============================================================================== --- projects/sendfile/bin/pkill/tests/pkill-j_test.sh Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/pkill/tests/pkill-j_test.sh Tue Sep 15 22:59:55 2015 (r287834) @@ -14,7 +14,7 @@ if [ `id -u` -ne 0 ]; then exit 0 fi -echo "1..3" +echo "1..4" sleep=$(pwd)/sleep.txt ln -sf /bin/sleep $sleep @@ -90,5 +90,31 @@ else fi 2>/dev/null [ -f ${PWD}/${base}_3_1.pid ] && kill $(cat ${base}_3_1.pid) [ -f ${PWD}/${base}_3_2.pid ] && kill $(cat ${base}_3_2.pid) +wait + +# test 4 is like test 1 except with jname instead of jid. +name="pkill -j " +sleep_amount=8 +jail -c path=/ name=${base}_4_1 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_4_1.pid $sleep $sleep_amount & + +jail -c path=/ name=${base}_4_2 ip4.addr=127.0.0.1 \ + command=daemon -p ${PWD}/${base}_4_2.pid $sleep $sleep_amount & + +$sleep $sleep_amount & + +sleep 0.5 + +jname="${base}_4_1,${base}_4_2" +if pkill -f -j "$jname" $sleep && sleep 0.5 && + ! -f ${PWD}/${base}_4_1.pid && + ! -f ${PWD}/${base}_4_2.pid ; then + echo "ok 4 - $name" +else + echo "not ok 4 - $name" +fi 2>/dev/null +[ -f ${PWD}/${base}_4_1.pid ] && kill $(cat ${PWD}/${base}_4_1.pid) +[ -f ${PWD}/${base}_4_2.pid ] && kill $(cat ${PWD}/${base}_4_2.pid) +wait rm -f $sleep Modified: projects/sendfile/bin/ps/Makefile ============================================================================== --- projects/sendfile/bin/ps/Makefile Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/ps/Makefile Tue Sep 15 22:59:55 2015 (r287834) @@ -11,6 +11,6 @@ SRCS= fmt.c keyword.c nlist.c print.c ps # on large systems. # CFLAGS+=-DLAZY_PS -LIBADD= m kvm jail xo +LIBADD= m kvm jail xo util .include Modified: projects/sendfile/bin/rm/rm.c ============================================================================== --- projects/sendfile/bin/rm/rm.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/rm/rm.c Tue Sep 15 22:59:55 2015 (r287834) @@ -50,6 +50,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -86,6 +87,8 @@ main(int argc, char *argv[]) int ch; char *p; + (void)setlocale(LC_ALL, ""); + /* * Test for the special case where the utility is called as * "unlink", for which the functionality provided is greatly Modified: projects/sendfile/bin/setfacl/setfacl.1 ============================================================================== --- projects/sendfile/bin/setfacl/setfacl.1 Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/setfacl/setfacl.1 Tue Sep 15 22:59:55 2015 (r287834) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 1, 2013 +.Dd September 4, 2015 .Dt SETFACL 1 .Os .Sh NAME @@ -378,9 +378,11 @@ dir_inherit inherit_only .It n no_propagate +.It I +inherited .El .Pp -Inheritance flags may be only set on directories. +Other than the "inherited" flag, inheritance flags may be only set on directories. .It Ar "ACL type" The ACL type field is either .Dq Li allow Modified: projects/sendfile/bin/sh/expand.c ============================================================================== --- projects/sendfile/bin/sh/expand.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/expand.c Tue Sep 15 22:59:55 2015 (r287834) @@ -886,7 +886,7 @@ varvalue(const char *name, int quoted, i num = backgndpidval(); break; case '-': - for (i = 0 ; i < NOPTS ; i++) { + for (i = 0 ; i < NSHORTOPTS ; i++) { if (optlist[i].val) STPUTC(optlist[i].letter, expdest); } @@ -1464,21 +1464,11 @@ patmatch(const char *pattern, const char bt_q = q; break; case '[': { - const char *endp; + const char *savep, *saveq; int invert, found; wchar_t chr; - endp = p; - if (*endp == '!' || *endp == '^') - endp++; - do { - while (*endp == CTLQUOTEMARK) - endp++; - if (*endp == 0) - goto dft; /* no matching ] */ - if (*endp == CTLESC) - endp++; - } while (*++endp != ']'); + savep = p, saveq = q; invert = 0; if (*p == '!' || *p == '^') { invert++; @@ -1497,6 +1487,11 @@ patmatch(const char *pattern, const char chr = (unsigned char)*q++; c = *p++; do { + if (c == '\0') { + p = savep, q = saveq; + c = '['; + goto dft; + } if (c == CTLQUOTEMARK) continue; if (c == '[' && *p == ':') { Modified: projects/sendfile/bin/sh/miscbltin.c ============================================================================== --- projects/sendfile/bin/sh/miscbltin.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/miscbltin.c Tue Sep 15 22:59:55 2015 (r287834) @@ -100,6 +100,7 @@ readcmd(int argc __unused, char **argv _ int i; int is_ifs; int saveall = 0; + ptrdiff_t lastnonifs, lastnonifsws; struct timeval tv; char *tvptr; fd_set ifds; @@ -169,6 +170,7 @@ readcmd(int argc __unused, char **argv _ startword = 2; backslash = 0; STARTSTACKSTR(p); + lastnonifs = lastnonifsws = -1; for (;;) { nread = read(STDIN_FILENO, &c, 1); if (nread == -1) { @@ -193,6 +195,7 @@ readcmd(int argc __unused, char **argv _ backslash = 0; if (c != '\n') { startword = 0; + lastnonifs = lastnonifsws = p - stackblock(); USTPUTC(c, p); } continue; @@ -218,8 +221,10 @@ readcmd(int argc __unused, char **argv _ if (is_ifs == 2 && startword == 1) { /* Only one non-whitespace IFS per word */ startword = 2; - if (saveall) + if (saveall) { + lastnonifsws = p - stackblock(); USTPUTC(c, p); + } continue; } } @@ -230,6 +235,7 @@ readcmd(int argc __unused, char **argv _ if (saveall) /* Not just a spare terminator */ saveall++; + lastnonifs = lastnonifsws = p - stackblock(); USTPUTC(c, p); continue; } @@ -240,6 +246,8 @@ readcmd(int argc __unused, char **argv _ if (ap[1] == NULL) { /* Last variable needs all IFS chars */ saveall++; + if (is_ifs == 2) + lastnonifsws = p - stackblock(); USTPUTC(c, p); continue; } @@ -248,20 +256,17 @@ readcmd(int argc __unused, char **argv _ setvar(*ap, stackblock(), 0); ap++; STARTSTACKSTR(p); + lastnonifs = lastnonifsws = -1; } STACKSTRNUL(p); - /* Remove trailing IFS chars */ - for (; stackblock() <= --p; *p = 0) { - if (!strchr(ifs, *p)) - break; - if (strchr(" \t\n", *p)) - /* Always remove whitespace */ - continue; - if (saveall > 1) - /* Don't remove non-whitespace unless it was naked */ - break; - } + /* + * Remove trailing IFS chars: always remove whitespace, don't remove + * non-whitespace unless it was naked + */ + if (saveall <= 1) + lastnonifsws = lastnonifs; + stackblock()[lastnonifsws + 1] = '\0'; setvar(*ap, stackblock(), 0); /* Set any remaining args to "" */ Modified: projects/sendfile/bin/sh/options.c ============================================================================== --- projects/sendfile/bin/sh/options.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/options.c Tue Sep 15 22:59:55 2015 (r287834) @@ -302,7 +302,7 @@ setoption(int flag, int val) { int i; - for (i = 0; i < NOPTS; i++) + for (i = 0; i < NSHORTOPTS; i++) if (optlist[i].letter == flag) { setoptionbyindex(i, val); return; Modified: projects/sendfile/bin/sh/options.h ============================================================================== --- projects/sendfile/bin/sh/options.h Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/options.h Tue Sep 15 22:59:55 2015 (r287834) @@ -64,8 +64,10 @@ struct shparam { #define Tflag optlist[16].val #define Pflag optlist[17].val #define hflag optlist[18].val +#define nologflag optlist[19].val -#define NOPTS 19 +#define NSHORTOPTS 19 +#define NOPTS 20 struct optent { const char *name; @@ -95,6 +97,7 @@ struct optent optlist[NOPTS] = { { "trapsasync", 'T', 0 }, { "physical", 'P', 0 }, { "trackall", 'h', 0 }, + { "nolog", '\0', 0 }, }; #endif Modified: projects/sendfile/bin/sh/parser.c ============================================================================== --- projects/sendfile/bin/sh/parser.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/parser.c Tue Sep 15 22:59:55 2015 (r287834) @@ -106,6 +106,8 @@ static int startlinno; /* line # where static int funclinno; /* line # where the current function started */ static struct parser_temp *parser_temp; +#define NOEOFMARK ((const char *)&heredoclist) + static union node *list(int); static union node *andor(void); @@ -972,6 +974,10 @@ checkend(int c, const char *eofmark, int pungetc(); pushstring(eofmark + 1, q - (eofmark + 1), NULL); } + } else if (c == '\n' && *eofmark == '\0') { + c = PEOF; + plinno++; + needprompt = doprompt; } return (c); } @@ -1195,7 +1201,8 @@ parsebackq(char *out, struct nodelist ** static char * readcstyleesc(char *out) { - int c, v, i, n; + int c, vc, i, n; + unsigned int v; c = pgetc(); switch (c) { @@ -1310,12 +1317,12 @@ readcstyleesc(char *out) default: synerror("Bad escape sequence"); } - v = (char)v; + vc = (char)v; /* * We can't handle NUL bytes. * POSIX says we should skip till the closing quote. */ - if (v == '\0') { + if (vc == '\0') { while ((c = pgetc()) != '\'') { if (c == '\\') c = pgetc(); @@ -1332,9 +1339,9 @@ readcstyleesc(char *out) pungetc(); return out; } - if (SQSYNTAX[v] == CCTL) + if (SQSYNTAX[vc] == CCTL) USTPUTC(CTLESC, out); - USTPUTC(v, out); + USTPUTC(vc, out); return out; } @@ -1382,7 +1389,7 @@ readtoken1(int firstc, char const *initi STARTSTACKSTR(out); loop: { /* for each line, until end of word */ - if (eofmark) + if (eofmark && eofmark != NOEOFMARK) /* set c to PEOF if at end of here document */ c = checkend(c, eofmark, striptabs); for (;;) { /* until end of line or end of word */ @@ -1661,7 +1668,7 @@ varname: pungetc(); else if (c == '\n' || c == PEOF) synerror("Unexpected end of line in substitution"); - else + else if (BASESYNTAX[c] != CCTL) USTPUTC(c, out); } if (subtype == 0) { @@ -1677,7 +1684,8 @@ varname: synerror("Unexpected end of line in substitution"); if (flags == VSNUL) STPUTC(':', out); - STPUTC(c, out); + if (BASESYNTAX[c] != CCTL) + STPUTC(c, out); subtype = VSERROR; } else subtype = p - types + VSNORMAL; @@ -2044,7 +2052,7 @@ expandstr(const char *ps) parser_temp = NULL; setinputstring(ps, 1); doprompt = 0; - readtoken1(pgetc(), DQSYNTAX, "", 0); + readtoken1(pgetc(), DQSYNTAX, NOEOFMARK, 0); if (backquotelist != NULL) error("Command substitution not allowed here"); Modified: projects/sendfile/bin/sh/sh.1 ============================================================================== --- projects/sendfile/bin/sh/sh.1 Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/sh.1 Tue Sep 15 22:59:55 2015 (r287834) @@ -32,7 +32,7 @@ .\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95 .\" $FreeBSD$ .\" -.Dd July 11, 2015 +.Dd August 29, 2015 .Dt SH 1 .Os .Sh NAME @@ -343,6 +343,11 @@ Write each command variable subjected to parameter expansion and arithmetic expansion) to standard error before it is executed. Useful for debugging. +.It nolog +Another do-nothing option for +.Tn POSIX +compliance. +It only has a long name. .El .Pp The @@ -1173,7 +1178,9 @@ The only special parameter that can be m .Ql - . Making .Ql - -local causes any shell options that are +local causes any shell options +(including those that only have long names) +that are changed via the .Ic set command inside the function to be Modified: projects/sendfile/bin/sh/tests/builtins/Makefile ============================================================================== --- projects/sendfile/bin/sh/tests/builtins/Makefile Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/bin/sh/tests/builtins/Makefile Tue Sep 15 22:59:55 2015 (r287834) @@ -39,6 +39,7 @@ FILES+= case16.0 FILES+= case17.0 FILES+= case18.0 FILES+= case19.0 +FILES+= case20.0 FILES+= cd1.0 FILES+= cd2.0 FILES+= cd3.0 @@ -122,6 +123,7 @@ FILES+= read5.0 FILES+= read6.0 FILES+= read7.0 FILES+= read8.0 +FILES+= read9.0 FILES+= return1.0 FILES+= return2.1 FILES+= return3.1 Copied: projects/sendfile/bin/sh/tests/builtins/case20.0 (from r287832, head/bin/sh/tests/builtins/case20.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/bin/sh/tests/builtins/case20.0 Tue Sep 15 22:59:55 2015 (r287834, copy of r287832, head/bin/sh/tests/builtins/case20.0) @@ -0,0 +1,9 @@ +# $FreeBSD$ + +# Shells do not agree about what this pattern should match, but it is +# certain that it must not crash and the missing close bracket must not +# be simply ignored. + +case B in +[[:alpha:]) echo bad ;; +esac Copied: projects/sendfile/bin/sh/tests/builtins/read9.0 (from r287832, head/bin/sh/tests/builtins/read9.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/bin/sh/tests/builtins/read9.0 Tue Sep 15 22:59:55 2015 (r287834, copy of r287832, head/bin/sh/tests/builtins/read9.0) @@ -0,0 +1,10 @@ +# $FreeBSD$ + +empty='' +read a b c <&1 >/dev/null) +[ $? -ne 0 ] && [ -n "$v" ] Copied: projects/sendfile/bin/sh/tests/parser/dollar-quote13.0 (from r287832, head/bin/sh/tests/parser/dollar-quote13.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/bin/sh/tests/parser/dollar-quote13.0 Tue Sep 15 22:59:55 2015 (r287834, copy of r287832, head/bin/sh/tests/parser/dollar-quote13.0) @@ -0,0 +1,8 @@ +# $FreeBSD$ + +# This Unicode escape sequence that has never been in range should either +# fail to expand or expand to a fallback. + +c=$(eval printf %s \$\'\\Uffffff41\' 2>/dev/null) +r=$(($? != 0)) +[ "$r.$c" = '1.' ] || [ "$r.$c" = '0.?' ] || [ "$r.$c" = $'0.\u2222' ] Copied: projects/sendfile/bin/sh/tests/parser/heredoc13.0 (from r287832, head/bin/sh/tests/parser/heredoc13.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/bin/sh/tests/parser/heredoc13.0 Tue Sep 15 22:59:55 2015 (r287834, copy of r287832, head/bin/sh/tests/parser/heredoc13.0) @@ -0,0 +1,21 @@ +# $FreeBSD$ + +failures=0 + +check() { + if ! eval "[ $* ]"; then + echo "Failed: $*" + : $((failures += 1)) + fi +} + +check '"$(cat <<"" + +echo yes)" = "yes"' + +check '"$(cat <<"" +yes + +)" = "yes"' + +exit $((failures != 0)) Modified: projects/sendfile/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c Tue Sep 15 22:59:55 2015 (r287834) @@ -132,6 +132,8 @@ typedef struct msg_string { static msg_string *msg_head; static msg_string *msg_tail; +int aok; + /* * message_append() is responsible for both inserting strings into * the master Str_tbl as well as maintaining a list of the Modified: projects/sendfile/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/cmd/zdb/zdb.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/cmd/zdb/zdb.c Tue Sep 15 22:59:55 2015 (r287834) @@ -1205,7 +1205,9 @@ snprintf_blkptr_compact(char *blkbuf, si if (BP_IS_HOLE(bp)) { (void) snprintf(blkbuf + strlen(blkbuf), - buflen - strlen(blkbuf), "B=%llu", + buflen - strlen(blkbuf), + "%llxL B=%llu", + (u_longlong_t)BP_GET_LSIZE(bp), (u_longlong_t)bp->blk_birth); } else { (void) snprintf(blkbuf + strlen(blkbuf), Modified: projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs.8 ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Tue Sep 15 22:59:55 2015 (r287834) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 30, 2015 +.Dd September 14, 2015 .Dt ZFS 8 .Os .Sh NAME @@ -2144,7 +2144,8 @@ Property name .It value Property value .It source -Property source. Can either be local, default, temporary, inherited, or none +Property source. Can either be local, default, temporary, inherited, received, +or none (\&-). .El .Pp @@ -2210,8 +2211,11 @@ The default value is all sources. .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Xc .Pp -Clears the specified property, causing it to be inherited from an ancestor. If -no ancestor has the property set, then the default value is used. See the +Clears the specified property, causing it to be inherited from an ancestor, +restored to default if no ancestor has the property set, or with the +.Fl S +option reverted to the received value if one exists. +See the .Qq Sx Properties section for a listing of default values, and details on which properties can be inherited. @@ -2219,8 +2223,10 @@ inherited. .It Fl r Recursively inherit the given property for all children. .It Fl S -For properties with a received value, revert to this value. This flag has no -effect on properties that do not have a received value. +Revert the property to the received value if one exists; otherwise operate as +if the +.Fl S +option was not specified. .El .It Xo .Nm Modified: projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Tue Sep 15 22:59:55 2015 (r287834) @@ -1928,9 +1928,13 @@ zfs_do_inherit(int argc, char **argv) if (prop == ZFS_PROP_QUOTA || prop == ZFS_PROP_RESERVATION || prop == ZFS_PROP_REFQUOTA || - prop == ZFS_PROP_REFRESERVATION) + prop == ZFS_PROP_REFRESERVATION) { (void) fprintf(stderr, gettext("use 'zfs set " "%s=none' to clear\n"), propname); + (void) fprintf(stderr, gettext("use 'zfs " + "inherit -S %s' to revert to received " + "value\n"), propname); + } return (1); } if (received && (prop == ZFS_PROP_VOLSIZE || Modified: projects/sendfile/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h Tue Sep 15 22:59:55 2015 (r287834) @@ -655,13 +655,6 @@ extern int zfs_secpolicy_rename_perms(co extern int zfs_secpolicy_destroy_perms(const char *name, cred_t *cr); extern zoneid_t getzoneid(void); /* Random compatibility stuff. */ -#define lbolt (gethrtime() >> 23) -#define lbolt64 (gethrtime() >> 23) - -extern uint64_t physmem; - -#define gethrestime_sec() time(NULL) - #define pwrite64(d, p, n, o) pwrite(d, p, n, o) #define readdir64(d) readdir(d) #define SIGPENDING(td) (0) Modified: projects/sendfile/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c ============================================================================== --- projects/sendfile/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Tue Sep 15 22:16:21 2015 (r287833) +++ projects/sendfile/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Tue Sep 15 22:59:55 2015 (r287834) @@ -349,7 +349,7 @@ equiv_node(tdesc_t *ctdp, tdesc_t *mtdp, int (*equiv)(tdesc_t *, tdesc_t *, equiv_data_t *); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Wed Sep 16 16:11:46 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3B7389CDF3E for ; Wed, 16 Sep 2015 16:11:46 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.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 2C65E1231; Wed, 16 Sep 2015 16:11:46 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8GGBkO9072870; Wed, 16 Sep 2015 16:11:46 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8GGBkxB072869; Wed, 16 Sep 2015 16:11:46 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201509161611.t8GGBkxB072869@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Wed, 16 Sep 2015 16:11:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287863 - projects/sendfile/sys/kern 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.20 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: Wed, 16 Sep 2015 16:11:46 -0000 Author: glebius Date: Wed Sep 16 16:11:45 2015 New Revision: 287863 URL: https://svnweb.freebsd.org/changeset/base/287863 Log: When I/O fails run full protocol abort routine, instead of flushing socket only. The previous behavior lead to inconsistency between TCP state and socket state. Together with: rrs Sponsored by: Netflix Sponsored by: Nginx, Inc. Modified: projects/sendfile/sys/kern/uipc_syscalls.c Modified: projects/sendfile/sys/kern/uipc_syscalls.c ============================================================================== --- projects/sendfile/sys/kern/uipc_syscalls.c Wed Sep 16 15:40:08 2015 (r287862) +++ projects/sendfile/sys/kern/uipc_syscalls.c Wed Sep 16 16:11:45 2015 (r287863) @@ -2114,8 +2114,8 @@ sf_iodone(void *arg, vm_page_t *pg, int * for read, so that application receives EIO on next * syscall and eventually closes the socket. */ + so->so_proto->pr_usrreqs->pru_abort(so); so->so_error = EIO; - soisdisconnected(so); m = sfio->m; for (int i = 0; i < sfio->npages; i++) From owner-svn-src-projects@freebsd.org Wed Sep 16 22:15:51 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7B3129CE67C for ; Wed, 16 Sep 2015 22:15:51 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org (repo.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 6A3D5175F; Wed, 16 Sep 2015 22:15:51 +0000 (UTC) (envelope-from imp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8GMFp3P023709; Wed, 16 Sep 2015 22:15:51 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8GMFp1b023705; Wed, 16 Sep 2015 22:15:51 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201509162215.t8GMFp1b023705@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Wed, 16 Sep 2015 22:15:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287876 - in projects/iosched/sys/cam: . ata scsi 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.20 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: Wed, 16 Sep 2015 22:15:51 -0000 Author: imp Date: Wed Sep 16 22:15:50 2015 New Revision: 287876 URL: https://svnweb.freebsd.org/changeset/base/287876 Log: Commit the post-BSDcan level (and a little more) iosched work. This work is described in the paper that I presented at BSDcan http://people.freebsd.org/~imp/bsdcan2015/iosched-v3.pdf section XII. Recent Changes. Modified: projects/iosched/sys/cam/ata/ata_da.c projects/iosched/sys/cam/cam_iosched.c projects/iosched/sys/cam/cam_iosched.h projects/iosched/sys/cam/scsi/scsi_da.c Modified: projects/iosched/sys/cam/ata/ata_da.c ============================================================================== --- projects/iosched/sys/cam/ata/ata_da.c Wed Sep 16 21:43:51 2015 (r287875) +++ projects/iosched/sys/cam/ata/ata_da.c Wed Sep 16 22:15:50 2015 (r287876) @@ -98,11 +98,13 @@ typedef enum { typedef enum { ADA_Q_NONE = 0x00, ADA_Q_4K = 0x01, + ADA_Q_NCQ_TRIM_BROKEN = 0x02, } ada_quirks; #define ADA_Q_BIT_STRING \ "\020" \ - "\0014K" + "\0014K" \ + "\002NCQ_TRIM_BROKEN" typedef enum { ADA_CCB_RAHEAD = 0x01, @@ -160,6 +162,8 @@ struct ada_softc { int trim_max_ranges; int read_ahead; int write_cache; + int unmappedio; + int rotating; #ifdef ADA_TEST_FAILURE int force_read_error; int force_write_error; @@ -173,6 +177,13 @@ struct ada_softc { struct sysctl_oid *sysctl_tree; struct callout sendordered_c; struct trim_request trim_req; +#ifdef CAM_IO_STATS + struct sysctl_ctx_list sysctl_stats_ctx; + struct sysctl_oid *sysctl_stats_tree; + u_int timeouts; + u_int errors; + u_int invalidations; +#endif }; struct ada_quirk_entry { @@ -350,6 +361,38 @@ static struct ada_quirk_entry ada_quirk_ }, { /* + * Crucial M500 SSDs EU07 firmware + * NCQ Trim works ? + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*M500*", "EU07" }, + /*quirks*/0 + }, + { + /* + * Crucial M500 SSDs all other firmware + * NCQ Trim doesn't work + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*M500*", "*" }, + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* + * Crucial M550 SSDs + * NCQ Trim doesn't work, but only on MU01 firmware + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*M550*", "MU01" }, + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* + * Crucial MX100 SSDs + * NCQ Trim doesn't work, but only on MU01 firmware + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*MX100*", "MU01" }, + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* * Crucial RealSSD C300 SSDs * 4k optimised */ @@ -422,6 +465,30 @@ static struct ada_quirk_entry ada_quirk_ }, { /* + * Micron M500 SSDs firmware EU07 + * NCQ Trim works? + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Micron M500*", "EU07" }, + /*quirks*/0 + }, + { + /* + * Micron M500 SSDs all other firmware + * NCQ Trim doesn't work + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Micron M500*", "*" }, + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* + * Micron M5[15]0 SSDs + * NCQ Trim doesn't work, but only MU01 firmware + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Micron M5[15]0*", "MU01" }, + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* * OCZ Agility 2 SSDs * 4k optimised & trim only works in 4k requests + 4k aligned */ @@ -471,22 +538,22 @@ static struct ada_quirk_entry ada_quirk_ { /* * Samsung 830 Series SSDs - * 4k optimised + * 4k optimised, NCQ TRIM broken (normal TRIM fine) */ { T_DIRECT, SIP_MEDIA_FIXED, "*", "SAMSUNG SSD 830 Series*", "*" }, - /*quirks*/ADA_Q_4K + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, { /* * Samsung 840 SSDs - * 4k optimised + * 4k optimised, NCQ TRIM broken (normal TRIM fine) */ { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 840*", "*" }, - /*quirks*/ADA_Q_4K + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, { /* - * Samsung 843T Series SSDs + * Samsung PM843T Series SSDs * 4k optimised */ { T_DIRECT, SIP_MEDIA_FIXED, "*", "SAMSUNG MZ7WD*", "*" }, @@ -495,10 +562,10 @@ static struct ada_quirk_entry ada_quirk_ { /* * Samsung 850 SSDs - * 4k optimised + * 4k optimised, NCQ TRIM broken (normal TRIM fine) */ { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 850*", "*" }, - /*quirks*/ADA_Q_4K + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, { /* @@ -782,8 +849,6 @@ adastrategy(struct bio *bp) /* * Place it in the queue of disk activities for this disk */ - if (bp->bio_cmd == BIO_DELETE) { - } cam_iosched_queue_work(softc->cam_iosched, bp); /* @@ -865,7 +930,7 @@ adadump(void *arg, void *virtual, vm_off 0, NULL, 0, - ada_default_timeout*1000); + 5*1000); if (softc->flags & ADA_FLAG_CAN_48BIT) ata_48bit_cmd(&ccb.ataio, ATA_FLUSHCACHE48, 0, 0, 0); @@ -939,6 +1004,9 @@ adaoninvalidate(struct cam_periph *perip * De-register any async callbacks. */ xpt_register_async(0, adaasync, periph, periph->path); +#ifdef CAM_IO_STATS + softc->invalidations++; +#endif /* * Return all queued I/O with ENXIO. @@ -959,12 +1027,20 @@ adacleanup(struct cam_periph *periph) cam_periph_unlock(periph); + cam_iosched_fini(softc->cam_iosched); + /* * If we can't free the sysctl tree, oh well... */ - if ((softc->flags & ADA_FLAG_SCTX_INIT) != 0 - && sysctl_ctx_free(&softc->sysctl_ctx) != 0) { - xpt_print(periph->path, "can't remove sysctl context\n"); + if ((softc->flags & ADA_FLAG_SCTX_INIT) != 0) { +#ifdef CAM_IO_STATS + if (sysctl_ctx_free(&softc->sysctl_stats_ctx) != 0) + xpt_print(periph->path, + "can't remove sysctl stats context\n"); +#endif + if (sysctl_ctx_free(&softc->sysctl_ctx) != 0) + xpt_print(periph->path, + "can't remove sysctl context\n"); } disk_destroy(softc->disk); @@ -977,16 +1053,9 @@ static void adasetdeletemethod(struct ada_softc *softc) { -#if 0 - /* - * Don't set NCQ_DSM_TRIM method by default. It is currently - * a "feature of interest" implicated in some data corruption. - */ if (softc->flags & ADA_FLAG_CAN_NCQ_TRIM) softc->delete_method = ADA_DELETE_NCQ_DSM_TRIM; - else -#endif - if (softc->flags & ADA_FLAG_CAN_TRIM) + else if (softc->flags & ADA_FLAG_CAN_TRIM) softc->delete_method = ADA_DELETE_DSM_TRIM; else if ((softc->flags & ADA_FLAG_CAN_CFA) && !(softc->flags & ADA_FLAG_CAN_48BIT)) softc->delete_method = ADA_DELETE_CFA_ERASE; @@ -1069,7 +1138,8 @@ adaasync(void *callback_arg, u_int32_t c * the sim do do things properly. Perhaps we should look at log 13 * dword 0 bit 0 and dword 1 bit 0 are set too... */ - if ((softc->flags & ADA_FLAG_PIM_CAN_NCQ_TRIM) != 0 && + if ((softc->quirks & ADA_Q_NCQ_TRIM_BROKEN) == 0 && + (softc->flags & ADA_FLAG_PIM_CAN_NCQ_TRIM) != 0 && (cgd.ident_data.satacapabilities2 & ATA_SUPPORT_RCVSND_FPDMA_QUEUED) != 0 && (softc->flags & ADA_FLAG_CAN_TRIM) != 0) softc->flags |= ADA_FLAG_CAN_NCQ_TRIM; @@ -1165,6 +1235,12 @@ adasysctlinit(void *context, int pending SYSCTL_ADD_INT(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree), OID_AUTO, "write_cache", CTLFLAG_RW | CTLFLAG_MPSAFE, &softc->write_cache, 0, "Enable disk write cache."); + SYSCTL_ADD_INT(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree), + OID_AUTO, "unmapped_io", CTLFLAG_RD | CTLFLAG_MPSAFE, + &softc->unmappedio, 0, "Unmapped I/O leaf"); + SYSCTL_ADD_INT(&softc->sysctl_ctx, SYSCTL_CHILDREN(softc->sysctl_tree), + OID_AUTO, "rotating", CTLFLAG_RD | CTLFLAG_MPSAFE, + &softc->rotating, 0, "Rotating media"); #ifdef ADA_TEST_FAILURE /* * Add a 'door bell' sysctl which allows one to set it from userland @@ -1184,6 +1260,28 @@ adasysctlinit(void *context, int pending &softc->periodic_read_error, 0, "Force a read error every N reads (don't set too low)."); #endif + +#ifdef CAM_IO_STATS + softc->sysctl_stats_tree = SYSCTL_ADD_NODE(&softc->sysctl_stats_ctx, + SYSCTL_CHILDREN(softc->sysctl_tree), OID_AUTO, "stats", + CTLFLAG_RD, 0, "Statistics"); + SYSCTL_ADD_INT(&softc->sysctl_stats_ctx, + SYSCTL_CHILDREN(softc->sysctl_stats_tree), + OID_AUTO, "timeouts", CTLFLAG_RD | CTLFLAG_MPSAFE, + &softc->timeouts, 0, + "Device timeouts reported by the SIM"); + SYSCTL_ADD_INT(&softc->sysctl_stats_ctx, + SYSCTL_CHILDREN(softc->sysctl_stats_tree), + OID_AUTO, "errors", CTLFLAG_RD | CTLFLAG_MPSAFE, + &softc->errors, 0, + "Transport errors reported by the SIM."); + SYSCTL_ADD_INT(&softc->sysctl_stats_ctx, + SYSCTL_CHILDREN(softc->sysctl_stats_tree), + OID_AUTO, "pack_invalidations", CTLFLAG_RD | CTLFLAG_MPSAFE, + &softc->invalidations, 0, + "Device pack invalidations."); +#endif + cam_iosched_sysctl_init(softc->cam_iosched, &softc->sysctl_ctx, softc->sysctl_tree); @@ -1270,7 +1368,7 @@ adaregister(struct cam_periph *periph, v return(CAM_REQ_CMP_ERR); } - if (cam_iosched_init(&softc->cam_iosched) != 0) { + if (cam_iosched_init(&softc->cam_iosched, periph) != 0) { printf("adaregister: Unable to probe new device. " "Unable to allocate iosched memory\n"); return(CAM_REQ_CMP_ERR); @@ -1346,8 +1444,12 @@ adaregister(struct cam_periph *periph, v "kern.cam.ada.%d.write_cache", periph->unit_number); TUNABLE_INT_FETCH(announce_buf, &softc->write_cache); /* Disable queue sorting for non-rotational media by default. */ - cam_iosched_set_sort_queue(softc->cam_iosched, - cgd->ident_data.media_rotation_rate == ATA_RATE_NON_ROTATING); + if (cgd->ident_data.media_rotation_rate == ATA_RATE_NON_ROTATING) { + softc->rotating = 0; + } else { + softc->rotating = 1; + } + cam_iosched_set_sort_queue(softc->cam_iosched, softc->rotating ? -1 : 0); adagetparams(periph, cgd); softc->disk = disk_alloc(); softc->disk->d_rotation_rate = cgd->ident_data.media_rotation_rate; @@ -1390,8 +1492,10 @@ adaregister(struct cam_periph *periph, v softc->disk->d_delmaxsize = 256 * softc->params.secsize; } else softc->disk->d_delmaxsize = maxio; - if ((cpi.hba_misc & PIM_UNMAPPED) != 0) + if ((cpi.hba_misc & PIM_UNMAPPED) != 0) { softc->disk->d_flags |= DISKFLAG_UNMAPPED_BIO; + softc->unmappedio = 1; + } /* * If we can do RCVSND_FPDMA_QUEUED commands, we may be able to do * NCQ trims, if we support trims at all. We also need support from @@ -1400,9 +1504,9 @@ adaregister(struct cam_periph *periph, v */ if (cpi.hba_misc & PIM_NCQ_KLUDGE) softc->flags |= ADA_FLAG_PIM_CAN_NCQ_TRIM; - if ((softc->flags & ADA_FLAG_PIM_CAN_NCQ_TRIM) != 0 && - (cgd->ident_data.satacapabilities2 & - ATA_SUPPORT_RCVSND_FPDMA_QUEUED) != 0 && + if ((softc->quirks & ADA_Q_NCQ_TRIM_BROKEN) == 0 && + (softc->flags & ADA_FLAG_PIM_CAN_NCQ_TRIM) != 0 && + (cgd->ident_data.satacapabilities2 & ATA_SUPPORT_RCVSND_FPDMA_QUEUED) != 0 && (softc->flags & ADA_FLAG_CAN_TRIM) != 0) softc->flags |= ADA_FLAG_CAN_NCQ_TRIM; strlcpy(softc->disk->d_descr, cgd->ident_data.model, @@ -1675,8 +1779,7 @@ adastart(struct cam_periph *periph, unio } if ((bp->bio_flags & BIO_ORDERED) != 0 || - (bp->bio_cmd != BIO_DELETE && - (softc->flags & ADA_FLAG_NEED_OTAG) != 0)) { + (bp->bio_cmd != BIO_DELETE && (softc->flags & ADA_FLAG_NEED_OTAG) != 0)) { softc->flags &= ~ADA_FLAG_NEED_OTAG; softc->flags |= ADA_FLAG_WAS_OTAG; tag_code = 0; @@ -1807,7 +1910,10 @@ adastart(struct cam_periph *periph, unio ada_cfaerase(softc, bp, ataio); break; default: - panic("adastart: BIO_DELETE without method, not possible."); + biofinish(bp, NULL, EOPNOTSUPP); + xpt_release_ccb(start_ccb); + adaschedule(periph); + return; } start_ccb->ccb_h.ccb_state = ADA_CCB_TRIM; start_ccb->ccb_h.flags |= CAM_UNLOCKED; @@ -1893,7 +1999,7 @@ adadone(struct cam_periph *periph, union case ADA_CCB_TRIM: { struct bio *bp; - int error, need_sched; + int error; cam_periph_lock(periph); bp = (struct bio *)done_ccb->ccb_h.ccb_bp; @@ -1945,7 +2051,7 @@ adadone(struct cam_periph *periph, union if (softc->outstanding_cmds == 0) softc->flags |= ADA_FLAG_WAS_OTAG; - need_sched = cam_iosched_bio_complete(softc->cam_iosched, bp, done_ccb); + cam_iosched_bio_complete(softc->cam_iosched, bp, done_ccb); xpt_release_ccb(done_ccb); if (state == ADA_CCB_TRIM) { TAILQ_HEAD(, bio) queue; @@ -1957,9 +2063,9 @@ adadone(struct cam_periph *periph, union * Normally, the xpt_release_ccb() above would make sure * that when we have more work to do, that work would * get kicked off. However, we specifically keep - * trim running set to 0 before the call above to allow + * trim_running set to 0 before the call above to allow * other I/O to progress when many BIO_DELETE requests - * are pushed down. We set trim running to 0 and call + * are pushed down. We set trim_running to 0 and call * daschedule again so that we don't stall if there are * no other I/Os pending apart from BIO_DELETEs. */ @@ -1977,8 +2083,7 @@ adadone(struct cam_periph *periph, union biodone(bp1); } } else { - if (need_sched) - adaschedule(periph); + adaschedule(periph); cam_periph_unlock(periph); biodone(bp); } @@ -2070,6 +2175,31 @@ out: static int adaerror(union ccb *ccb, u_int32_t cam_flags, u_int32_t sense_flags) { + struct ada_softc *softc; + struct cam_periph *periph; + + periph = xpt_path_periph(ccb->ccb_h.path); + softc = (struct ada_softc *)periph->softc; + + switch (ccb->ccb_h.status & CAM_STATUS_MASK) { + case CAM_CMD_TIMEOUT: +#ifdef CAM_IO_STATS + softc->timeouts++; +#endif + break; + case CAM_REQ_ABORTED: + case CAM_REQ_CMP_ERR: + case CAM_REQ_TERMIO: + case CAM_UNREC_HBA_ERROR: + case CAM_DATA_RUN_ERR: + case CAM_ATA_STATUS_ERROR: +#ifdef CAM_IO_STATS + softc->errors++; +#endif + break; + default: + break; + } return(cam_periph_error(ccb, cam_flags, sense_flags, NULL)); } Modified: projects/iosched/sys/cam/cam_iosched.c ============================================================================== --- projects/iosched/sys/cam/cam_iosched.c Wed Sep 16 21:43:51 2015 (r287875) +++ projects/iosched/sys/cam/cam_iosched.c Wed Sep 16 22:15:50 2015 (r287876) @@ -63,9 +63,6 @@ static MALLOC_DEFINE(M_CAMSCHED, "CAM I/ */ #ifdef CAM_NETFLIX_IOSCHED -#define IOP_MAX_SKIP 50 -#define IOP_MAX_TRAINING 500 -#define ALPHA_BITS 14 /* ~32k events or about the last minute */ SYSCTL_DECL(_kern_cam); static int do_netflix_iosched = 1; @@ -74,20 +71,178 @@ SYSCTL_INT(_kern_cam, OID_AUTO, do_netfl &do_netflix_iosched, 1, "Enable Netflix I/O scheduler optimizations."); +static int alpha_bits = 9; +TUNABLE_INT("kern.cam.iosched_alpha_bits", &alpha_bits); +SYSCTL_INT(_kern_cam, OID_AUTO, iosched_alpha_bits, CTLFLAG_RW, + &alpha_bits, 1, + "Bits in EMA's alpha."); + + + +struct iop_stats; +struct cam_iosched_softc; + int iosched_debug = 0; +typedef enum { + none = 0, /* No limits */ + queue_depth, /* Limit how many ops we queue to SIM */ + iops, /* Limit # of IOPS to the drive */ + bandwidth, /* Limit bandwidth to the drive */ + limiter_max +} io_limiter; + +static const char *cam_iosched_limiter_names[] = + { "none", "queue_depth", "iops", "bandwidth" }; + +/* + * Called to initialize the bits of the iop_stats structure relevant to the + * limiter. Called just after the limiter is set. + */ +typedef int l_init_t(struct iop_stats *); + +/* + * Called every tick. + */ +typedef int l_tick_t(struct iop_stats *); + +/* + * Called to see if the limiter thinks this IOP can be allowed to + * proceed. If so, the limiter assumes that the while IOP proceeded + * and makes any accounting of it that's needed. + */ +typedef int l_iop_t(struct iop_stats *, struct bio *); + +/* + * Called when an I/O completes so the limiter can updates its + * accounting. Pending I/Os may complete in any order (even when + * sent to the hardware at the same time), so the limiter may not + * make any assumptions other than this I/O has completed. If it + * returns 1, then xpt_schedule() needs to be called again. + */ +typedef int l_iodone_t(struct iop_stats *, struct bio *); + +static l_iop_t cam_iosched_qd_iop; +static l_iop_t cam_iosched_qd_caniop; +static l_iodone_t cam_iosched_qd_iodone; + +static l_init_t cam_iosched_iops_init; +static l_tick_t cam_iosched_iops_tick; +static l_iop_t cam_iosched_iops_caniop; +static l_iop_t cam_iosched_iops_iop; + +static l_init_t cam_iosched_bw_init; +static l_tick_t cam_iosched_bw_tick; +static l_iop_t cam_iosched_bw_caniop; +static l_iop_t cam_iosched_bw_iop; + +struct limswitch +{ + l_init_t *l_init; + l_tick_t *l_tick; + l_iop_t *l_iop; + l_iop_t *l_caniop; + l_iodone_t *l_iodone; +} limsw[] = +{ + { /* none */ + .l_init = NULL, + .l_tick = NULL, + .l_iop = NULL, + .l_iodone= NULL, + }, + { /* queue_depth */ + .l_init = NULL, + .l_tick = NULL, + .l_caniop = cam_iosched_qd_caniop, + .l_iop = cam_iosched_qd_iop, + .l_iodone= cam_iosched_qd_iodone, + }, + { /* iops */ + .l_init = cam_iosched_iops_init, + .l_tick = cam_iosched_iops_tick, + .l_caniop = cam_iosched_iops_caniop, + .l_iop = cam_iosched_iops_iop, + .l_iodone= NULL, + }, + { /* bandwidth */ + .l_init = cam_iosched_bw_init, + .l_tick = cam_iosched_bw_tick, + .l_caniop = cam_iosched_bw_caniop, + .l_iop = cam_iosched_bw_iop, + .l_iodone= NULL, + }, +}; + struct iop_stats { - sbintime_t data[IOP_MAX_TRAINING]; /* Data for training period */ - sbintime_t worst; /* estimate of worst case latency */ - int outliers; /* Number of outlier latency I/Os */ - int skipping; /* Skipping I/Os when < IOP_MAX_SKIP */ - int training; /* Training when < IOP_MAX_TRAINING */ + /* + * sysctl state for this subnode. + */ + struct sysctl_ctx_list sysctl_ctx; + struct sysctl_oid *sysctl_tree; + + /* + * Information about the current rate limiters, if any + */ + io_limiter limiter; /* How are I/Os being limited */ + int min; /* Low range of limit */ + int max; /* High range of limit */ + int current; /* Current rate limiter */ + int l_value1; /* per-limiter scratch value 1. */ + int l_value2; /* per-limiter scratch value 2. */ + + + /* + * Debug information about counts of I/Os that have gone through the + * scheduler. + */ + int pending; /* I/Os pending in the hardware */ + int queued; /* number currently in the queue */ + int total; /* Total for all time -- wraps */ + int in; /* number queued all time -- wraps */ + int out; /* number completed all time -- wraps */ + + /* + * Statistics on different bits of the process. + */ /* Exp Moving Average, alpha = 1 / (1 << alpha_bits) */ sbintime_t ema; sbintime_t emss; /* Exp Moving sum of the squares */ sbintime_t sd; /* Last computed sd */ + + struct cam_iosched_softc *softc; }; + + +typedef enum { + set_max = 0, /* current = max */ + read_latency, /* Steer read latency by throttling writes */ + cl_max /* Keep last */ +} control_type; + +static const char *cam_iosched_control_type_names[] = + { "set_max", "read_latency" }; + +struct control_loop +{ + /* + * sysctl state for this subnode. + */ + struct sysctl_ctx_list sysctl_ctx; + struct sysctl_oid *sysctl_tree; + + sbintime_t next_steer; /* Time of next steer */ + sbintime_t steer_interval; /* How often do we steer? */ + sbintime_t lolat; + sbintime_t hilat; + int alpha; + control_type type; /* What type of control? */ + int last_count; /* Last I/O count */ + + struct cam_iosched_softc *softc; +}; + #endif struct cam_iosched_softc @@ -98,36 +253,375 @@ struct cam_iosched_softc uint32_t flags; int sort_io_queue; #ifdef CAM_NETFLIX_IOSCHED - /* Number of pending transactions */ - int pending_reads; - int pending_writes; - /* Have at least this many transactions in progress, if possible */ - int min_reads; - int min_writes; - /* Maximum number of each type of transaction in progress */ - int max_reads; - int max_writes; - - int trims; - int reads; - int writes; - int queued_reads; - int queued_writes; - int in_reads; - int in_writes; - int out_reads; - int out_writes; - - int read_bias; - int current_read_bias; + int read_bias; /* Read bias setting */ + int current_read_bias; /* Current read bias state */ + int total_ticks; struct bio_queue_head write_queue; struct iop_stats read_stats, write_stats, trim_stats; + struct sysctl_ctx_list sysctl_ctx; + struct sysctl_oid *sysctl_tree; + + int quanta; /* Number of quanta per second */ + struct callout ticker; /* Callout for our quota system */ + struct cam_periph *periph; /* cam periph associated with this device */ + uint32_t this_frac; /* Fraction of a second (1024ths) for this tick */ + sbintime_t last_time; /* Last time we ticked */ + struct control_loop cl; #endif }; +#ifdef CAM_NETFLIX_IOSCHED +/* + * helper functions to call the limsw functions. + */ +static int +cam_iosched_limiter_init(struct iop_stats *ios) +{ + int lim = ios->limiter; + + /* maybe this should be a kassert */ + if (lim < none || lim >= limiter_max) + return EINVAL; + + if (limsw[lim].l_init) + return limsw[lim].l_init(ios); + + return 0; +} + +static int +cam_iosched_limiter_tick(struct iop_stats *ios) +{ + int lim = ios->limiter; + + /* maybe this should be a kassert */ + if (lim < none || lim >= limiter_max) + return EINVAL; + + if (limsw[lim].l_tick) + return limsw[lim].l_tick(ios); + + return 0; +} + +static int +cam_iosched_limiter_iop(struct iop_stats *ios, struct bio *bp) +{ + int lim = ios->limiter; + + /* maybe this should be a kassert */ + if (lim < none || lim >= limiter_max) + return EINVAL; + + if (limsw[lim].l_iop) + return limsw[lim].l_iop(ios, bp); + + return 0; +} + +static int +cam_iosched_limiter_caniop(struct iop_stats *ios, struct bio *bp) +{ + int lim = ios->limiter; + + /* maybe this should be a kassert */ + if (lim < none || lim >= limiter_max) + return EINVAL; + + if (limsw[lim].l_caniop) + return limsw[lim].l_caniop(ios, bp); + + return 0; +} + +static int +cam_iosched_limiter_iodone(struct iop_stats *ios, struct bio *bp) +{ + int lim = ios->limiter; + + /* maybe this should be a kassert */ + if (lim < none || lim >= limiter_max) + return 0; + + if (limsw[lim].l_iodone) + return limsw[lim].l_iodone(ios, bp); + + return 0; +} + +/* + * Functions to implement the different kinds of limiters + */ + +static int +cam_iosched_qd_iop(struct iop_stats *ios, struct bio *bp) +{ + + if (ios->current <= 0 || ios->pending < ios->current) + return 0; + + return EAGAIN; +} + +static int +cam_iosched_qd_caniop(struct iop_stats *ios, struct bio *bp) +{ + + if (ios->current <= 0 || ios->pending < ios->current) + return 0; + + return EAGAIN; +} + +static int +cam_iosched_qd_iodone(struct iop_stats *ios, struct bio *bp) +{ + + if (ios->current <= 0 || ios->pending != ios->current) + return 0; + + return 1; +} + +static int +cam_iosched_iops_init(struct iop_stats *ios) +{ + + ios->l_value1 = ios->current / ios->softc->quanta; + if (ios->l_value1 <= 0) + ios->l_value1 = 1; + + return 0; +} + +static int +cam_iosched_iops_tick(struct iop_stats *ios) +{ + + ios->l_value1 = (int)((ios->current * (uint64_t)ios->softc->this_frac) >> 16); + if (ios->l_value1 <= 0) + ios->l_value1 = 1; + + return 0; +} + +static int +cam_iosched_iops_caniop(struct iop_stats *ios, struct bio *bp) +{ + + /* + * So if we have any more IOPs left, allow it, + * otherwise wait. + */ + if (ios->l_value1 <= 0) + return EAGAIN; + return 0; +} + +static int +cam_iosched_iops_iop(struct iop_stats *ios, struct bio *bp) +{ + int rv; + + rv = cam_iosched_limiter_caniop(ios, bp); + if (rv == 0) + ios->l_value1--; + + return rv; +} + +static int +cam_iosched_bw_init(struct iop_stats *ios) +{ + + /* ios->current is in kB/s, so scale to bytes */ + ios->l_value1 = ios->current * 1000 / ios->softc->quanta; + + return 0; +} + +static int +cam_iosched_bw_tick(struct iop_stats *ios) +{ + int bw; + + /* + * If we're in the hole for available quota from + * the last time, then add the quantum for this. + * If we have any left over from last quantum, + * then too bad, that's lost. Also, ios->current + * is in kB/s, so scale. + * + * We also allow up to 4 quanta of credits to + * accumulate to deal with burstiness. 4 is extremely + * arbitrary. + */ + bw = (int)((ios->current * 1000ull * (uint64_t)ios->softc->this_frac) >> 16); + if (ios->l_value1 < bw * 4) + ios->l_value1 += bw; + + return 0; +} + +static int +cam_iosched_bw_caniop(struct iop_stats *ios, struct bio *bp) +{ + /* + * So if we have any more bw quota left, allow it, + * otherwise wait. Not, we'll go negative and that's + * OK. We'll just get a lettle less next quota. + * + * Note on going negative: that allows us to process + * requests in order better, since we won't allow + * shorter reads to get around the long one that we + * don't have the quota to do just yet. It also prevents + * starvation by being a little more permissive about + * what we let through this quantum (to prevent the + * starvation), at the cost of getting a little less + * next quantum. + */ + if (ios->l_value1 <= 0) + return EAGAIN; + + + return 0; +} + +static int +cam_iosched_bw_iop(struct iop_stats *ios, struct bio *bp) +{ + int rv; + + rv = cam_iosched_limiter_caniop(ios, bp); + if (rv == 0) + ios->l_value1 -= bp->bio_length; + + return rv; +} + +static void cam_iosched_cl_maybe_steer(struct control_loop *clp); + +static void +cam_iosched_ticker(void *arg) +{ + struct cam_iosched_softc *isc = arg; + sbintime_t now, delta; + + callout_reset(&isc->ticker, hz / isc->quanta - 1, cam_iosched_ticker, isc); + + now = sbinuptime(); + delta = now - isc->last_time; + isc->this_frac = (uint32_t)delta >> 16; /* Note: discards seconds -- should be 0 harmless if not */ + isc->last_time = now; + + cam_iosched_cl_maybe_steer(&isc->cl); + + cam_iosched_limiter_tick(&isc->read_stats); + cam_iosched_limiter_tick(&isc->write_stats); + cam_iosched_limiter_tick(&isc->trim_stats); + + cam_iosched_schedule(isc, isc->periph); + + isc->total_ticks++; +} + + +static void +cam_iosched_cl_init(struct control_loop *clp, struct cam_iosched_softc *isc) +{ + + clp->next_steer = sbinuptime(); + clp->softc = isc; + clp->steer_interval = SBT_1S * 5; /* Let's start out steering every 5s */ + clp->lolat = 5 * SBT_1MS; + clp->hilat = 15 * SBT_1MS; + clp->alpha = 20; /* Alpha == gain. 20 = .2 */ + clp->type = set_max; +} + +static void +cam_iosched_cl_maybe_steer(struct control_loop *clp) +{ + struct cam_iosched_softc *isc; + sbintime_t now, lat; + int old; + + isc = clp->softc; + now = isc->last_time; + if (now < clp->next_steer) + return; + + clp->next_steer = now + clp->steer_interval; + switch (clp->type) { + case set_max: + if (isc->write_stats.current != isc->write_stats.max) + printf("Steering write from %d kBps to %d kBps\n", + isc->write_stats.current, isc->write_stats.max); + isc->read_stats.current = isc->read_stats.max; + isc->write_stats.current = isc->write_stats.max; + isc->trim_stats.current = isc->trim_stats.max; + break; + case read_latency: + old = isc->write_stats.current; + lat = isc->read_stats.ema; + /* + * Simple PLL-like engine. Since we're steering to a range for + * the SP (set point) that makes things a little more + * complicated. In addition, we're not directly controlling our + * PV (process variable), the read latency, but instead are + * manipulating the write bandwidth limit for our MV + * (manipulation variable), analysis of this code gets a bit + * messy. Also, the MV is a very noisy control surface for read + * latency since it is affected by many hidden processes inside + * the device which change how responsive read latency will be + * in reaction to changes in write bandwidth. Unlike the classic + * boiler control PLL. this may result in over-steering while + * the SSD takes its time to react to the new, lower load. This + * is why we use a relatively low alpha of between .1 and .25 to + * compensate for this effect. At .1, it takes ~22 steering + * intervals to back off by a factor of 10. At .2 it only takes + * ~10. At .25 it only takes ~8. However some preliminary data + * from the SSD drives suggests a reasponse time in 10's of + * seconds before latency drops regardless of the new write + * rate. Careful observation will be reqiured to tune this + * effectively. + * + * Also, when there's no read traffic, we jack up the write + * limit too regardless of the last read latency. 10 is + * somewhat arbitrary. + */ + if (lat < clp->lolat || isc->read_stats.total - clp->last_count < 10) + isc->write_stats.current = isc->write_stats.current * + (100 + clp->alpha) / 100; /* Scale up */ + else if (lat > clp->hilat) + isc->write_stats.current = isc->write_stats.current * + (100 - clp->alpha) / 100; /* Scale down */ + clp->last_count = isc->read_stats.total; + + /* + * Even if we don't steer, per se, enforce the min/max limits as + * those may have changed. + */ + if (isc->write_stats.current < isc->write_stats.min) + isc->write_stats.current = isc->write_stats.min; + if (isc->write_stats.current > isc->write_stats.max) + isc->write_stats.current = isc->write_stats.max; + if (old != isc->write_stats.current) + printf("Steering write from %d kBps to %d kBps due to latency of %ldus\n", + old, isc->write_stats.current, + ((uint64_t)1000000 * (uint32_t)lat) >> 32); + break; + case cl_max: + break; + } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Wed Sep 16 22:26:56 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08E0A9CEB73 for ; Wed, 16 Sep 2015 22:26:56 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.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 EB12D1C5A; Wed, 16 Sep 2015 22:26:55 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8GMQtKL028178; Wed, 16 Sep 2015 22:26:55 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8GMQrOQ028160; Wed, 16 Sep 2015 22:26:53 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201509162226.t8GMQrOQ028160@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 16 Sep 2015 22:26:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287877 - in projects/clang370-import: . contrib/libc++ contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/suppo... 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.20 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: Wed, 16 Sep 2015 22:26:56 -0000 Author: dim Date: Wed Sep 16 22:26:52 2015 New Revision: 287877 URL: https://svnweb.freebsd.org/changeset/base/287877 Log: Update libc++ to 3.7.0 release. Added: projects/clang370-import/contrib/libc++/include/__undef___deallocate - copied unchanged from r287682, vendor/libc++/dist/include/__undef___deallocate projects/clang370-import/contrib/libc++/include/experimental/algorithm - copied unchanged from r287682, vendor/libc++/dist/include/experimental/algorithm projects/clang370-import/contrib/libc++/include/experimental/chrono - copied unchanged from r287682, vendor/libc++/dist/include/experimental/chrono projects/clang370-import/contrib/libc++/include/experimental/ratio - copied unchanged from r287682, vendor/libc++/dist/include/experimental/ratio projects/clang370-import/contrib/libc++/include/experimental/system_error - copied unchanged from r287682, vendor/libc++/dist/include/experimental/system_error projects/clang370-import/contrib/libc++/include/experimental/tuple - copied unchanged from r287682, vendor/libc++/dist/include/experimental/tuple projects/clang370-import/contrib/libc++/src/config_elast.h - copied unchanged from r287682, vendor/libc++/dist/src/config_elast.h projects/clang370-import/contrib/libc++/src/support/ - copied from r287682, vendor/libc++/dist/src/support/ Deleted: projects/clang370-import/contrib/libc++/include/__tuple_03 projects/clang370-import/contrib/libc++/src/support/newlib/ projects/clang370-import/contrib/libc++/src/support/solaris/ projects/clang370-import/contrib/libc++/src/support/win32/ Modified: projects/clang370-import/ObsoleteFiles.inc projects/clang370-import/contrib/libc++/CREDITS.TXT projects/clang370-import/contrib/libc++/LICENSE.TXT projects/clang370-import/contrib/libc++/include/__config projects/clang370-import/contrib/libc++/include/__debug projects/clang370-import/contrib/libc++/include/__functional_03 projects/clang370-import/contrib/libc++/include/__functional_base projects/clang370-import/contrib/libc++/include/__functional_base_03 projects/clang370-import/contrib/libc++/include/__hash_table projects/clang370-import/contrib/libc++/include/__locale projects/clang370-import/contrib/libc++/include/__refstring projects/clang370-import/contrib/libc++/include/__split_buffer projects/clang370-import/contrib/libc++/include/__sso_allocator projects/clang370-import/contrib/libc++/include/__tree projects/clang370-import/contrib/libc++/include/__tuple projects/clang370-import/contrib/libc++/include/algorithm projects/clang370-import/contrib/libc++/include/array projects/clang370-import/contrib/libc++/include/atomic projects/clang370-import/contrib/libc++/include/cctype projects/clang370-import/contrib/libc++/include/cinttypes projects/clang370-import/contrib/libc++/include/clocale projects/clang370-import/contrib/libc++/include/cmath projects/clang370-import/contrib/libc++/include/cstdio projects/clang370-import/contrib/libc++/include/cstdlib projects/clang370-import/contrib/libc++/include/cstring projects/clang370-import/contrib/libc++/include/ctime projects/clang370-import/contrib/libc++/include/cwchar projects/clang370-import/contrib/libc++/include/deque projects/clang370-import/contrib/libc++/include/exception projects/clang370-import/contrib/libc++/include/experimental/__config projects/clang370-import/contrib/libc++/include/experimental/dynarray projects/clang370-import/contrib/libc++/include/experimental/string_view projects/clang370-import/contrib/libc++/include/experimental/type_traits projects/clang370-import/contrib/libc++/include/experimental/utility projects/clang370-import/contrib/libc++/include/ext/hash_map projects/clang370-import/contrib/libc++/include/forward_list projects/clang370-import/contrib/libc++/include/fstream projects/clang370-import/contrib/libc++/include/functional projects/clang370-import/contrib/libc++/include/future projects/clang370-import/contrib/libc++/include/iosfwd projects/clang370-import/contrib/libc++/include/iostream projects/clang370-import/contrib/libc++/include/iterator projects/clang370-import/contrib/libc++/include/list projects/clang370-import/contrib/libc++/include/locale projects/clang370-import/contrib/libc++/include/map projects/clang370-import/contrib/libc++/include/memory projects/clang370-import/contrib/libc++/include/module.modulemap projects/clang370-import/contrib/libc++/include/mutex projects/clang370-import/contrib/libc++/include/new projects/clang370-import/contrib/libc++/include/ostream projects/clang370-import/contrib/libc++/include/queue projects/clang370-import/contrib/libc++/include/random projects/clang370-import/contrib/libc++/include/ratio projects/clang370-import/contrib/libc++/include/regex projects/clang370-import/contrib/libc++/include/scoped_allocator projects/clang370-import/contrib/libc++/include/set projects/clang370-import/contrib/libc++/include/shared_mutex projects/clang370-import/contrib/libc++/include/stack projects/clang370-import/contrib/libc++/include/streambuf projects/clang370-import/contrib/libc++/include/string projects/clang370-import/contrib/libc++/include/tuple projects/clang370-import/contrib/libc++/include/type_traits projects/clang370-import/contrib/libc++/include/unordered_map projects/clang370-import/contrib/libc++/include/unordered_set projects/clang370-import/contrib/libc++/include/utility projects/clang370-import/contrib/libc++/include/valarray projects/clang370-import/contrib/libc++/include/vector projects/clang370-import/contrib/libc++/src/chrono.cpp projects/clang370-import/contrib/libc++/src/debug.cpp projects/clang370-import/contrib/libc++/src/exception.cpp projects/clang370-import/contrib/libc++/src/future.cpp projects/clang370-import/contrib/libc++/src/ios.cpp projects/clang370-import/contrib/libc++/src/iostream.cpp projects/clang370-import/contrib/libc++/src/locale.cpp projects/clang370-import/contrib/libc++/src/memory.cpp projects/clang370-import/contrib/libc++/src/mutex.cpp projects/clang370-import/contrib/libc++/src/new.cpp projects/clang370-import/contrib/libc++/src/random.cpp projects/clang370-import/contrib/libc++/src/shared_mutex.cpp projects/clang370-import/contrib/libc++/src/string.cpp projects/clang370-import/contrib/libc++/src/system_error.cpp projects/clang370-import/contrib/libc++/src/thread.cpp projects/clang370-import/lib/libc++/Makefile projects/clang370-import/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: projects/clang370-import/contrib/libc++/ (props changed) Modified: projects/clang370-import/ObsoleteFiles.inc ============================================================================== --- projects/clang370-import/ObsoleteFiles.inc Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/ObsoleteFiles.inc Wed Sep 16 22:26:52 2015 (r287877) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 2015mmdd: new libc++ import +OLD_FILES+=usr/include/c++/__tuple_03 # 2015mmdd: new clang import which bumps version from 3.6.1 to 3.7.0. OLD_FILES+=usr/lib/clang/3.6.1/include/__stddef_max_align_t.h OLD_FILES+=usr/lib/clang/3.6.1/include/__wmmintrin_aes.h Modified: projects/clang370-import/contrib/libc++/CREDITS.TXT ============================================================================== --- projects/clang370-import/contrib/libc++/CREDITS.TXT Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/CREDITS.TXT Wed Sep 16 22:26:52 2015 (r287877) @@ -12,6 +12,10 @@ N: Saleem Abdulrasool E: compnerd@compnerd.org D: Minor patches and Linux fixes. +N: Dan Albert +E: danalbert@google.com +D: Android support and test runner improvements. + N: Dimitry Andric E: dimitry@andric.com D: Visibility fixes, minor FreeBSD portability patches. @@ -84,6 +88,10 @@ N: Nico Rieck E: nico.rieck@gmail.com D: Windows fixes +N: Jon Roelofs +E: jonathan@codesourcery.com +D: Remote testing, Newlib port, baremetal/single-threaded support. + N: Jonathan Sauer D: Minor patches, mostly related to constexpr @@ -105,6 +113,9 @@ D: Minor fix N: Michael van der Westhuizen E: r1mikey at gmail dot com +N: Larisse Voufo +D: Minor patches. + N: Klaas de Vries E: klaas at klaasgaaf dot nl D: Minor bug fix. Modified: projects/clang370-import/contrib/libc++/LICENSE.TXT ============================================================================== --- projects/clang370-import/contrib/libc++/LICENSE.TXT Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/LICENSE.TXT Wed Sep 16 22:26:52 2015 (r287877) @@ -14,7 +14,7 @@ Full text of the relevant licenses is in University of Illinois/NCSA Open Source License -Copyright (c) 2009-2014 by the contributors listed in CREDITS.TXT +Copyright (c) 2009-2015 by the contributors listed in CREDITS.TXT All rights reserved. Modified: projects/clang370-import/contrib/libc++/include/__config ============================================================================== --- projects/clang370-import/contrib/libc++/include/__config Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__config Wed Sep 16 22:26:52 2015 (r287877) @@ -17,14 +17,11 @@ #ifdef __GNUC__ #define _GNUC_VER (__GNUC__ * 100 + __GNUC_MINOR__) +#else +#define _GNUC_VER 0 #endif -#if !_WIN32 -#include -#include // for ELAST on FreeBSD -#endif - -#define _LIBCPP_VERSION 1101 +#define _LIBCPP_VERSION 3700 #define _LIBCPP_ABI_VERSION 1 @@ -33,6 +30,23 @@ #define _LIBCPP_NAMESPACE _LIBCPP_CONCAT(__,_LIBCPP_ABI_VERSION) + +#ifndef __has_attribute +#define __has_attribute(__x) 0 +#endif +#ifndef __has_builtin +#define __has_builtin(__x) 0 +#endif +#ifndef __has_feature +#define __has_feature(__x) 0 +#endif +// '__is_identifier' returns '0' if '__x' is a reserved identifier provided by +// the compiler and '1' otherwise. +#ifndef __is_identifier +#define __is_identifier(__x) 1 +#endif + + #ifdef __LITTLE_ENDIAN__ #if __LITTLE_ENDIAN__ #define _LIBCPP_LITTLE_ENDIAN 1 @@ -76,10 +90,8 @@ #ifdef _WIN32 # define _LIBCPP_LITTLE_ENDIAN 1 # define _LIBCPP_BIG_ENDIAN 0 -// Compiler intrinsics (GCC or MSVC) -# if defined(__clang__) \ - || (defined(_MSC_VER) && _MSC_VER >= 1400) \ - || (defined(__GNUC__) && _GNUC_VER > 403) +// Compiler intrinsics (MSVC) +#if defined(_MSC_VER) && _MSC_VER >= 1400 # define _LIBCPP_HAS_IS_BASE_OF # endif # if defined(_MSC_VER) && !defined(__clang__) @@ -94,12 +106,6 @@ # endif #endif // _WIN32 -#ifdef __linux__ -# if defined(__GNUC__) && _GNUC_VER >= 403 -# define _LIBCPP_HAS_IS_BASE_OF -# endif -#endif - #ifdef __sun__ # include # ifdef _LITTLE_ENDIAN @@ -111,12 +117,22 @@ # endif #endif // __sun__ -#if defined(__native_client__) +#if defined(__CloudABI__) + // Certain architectures provide arc4random(). Prefer using + // arc4random() over /dev/{u,}random to make it possible to obtain + // random data even when using sandboxing mechanisms such as chroots, + // Capsicum, etc. +# define _LIBCPP_USING_ARC4_RANDOM +#elif defined(__native_client__) // NaCl's sandbox (which PNaCl also runs in) doesn't allow filesystem access, // including accesses to the special files under /dev. C++11's // std::random_device is instead exposed through a NaCl syscall. # define _LIBCPP_USING_NACL_RANDOM -#endif // defined(__native_client__) +#elif defined(_WIN32) +# define _LIBCPP_USING_WIN32_RANDOM +#else +# define _LIBCPP_USING_DEV_RANDOM +#endif #if !defined(_LIBCPP_LITTLE_ENDIAN) || !defined(_LIBCPP_BIG_ENDIAN) # include @@ -173,10 +189,6 @@ #endif // _WIN32 -#ifndef __has_attribute -#define __has_attribute(__x) 0 -#endif - #ifndef _LIBCPP_HIDDEN #define _LIBCPP_HIDDEN __attribute__ ((__visibility__("hidden"))) #endif @@ -309,6 +321,10 @@ typedef __char32_t char32_t; # define _LIBCPP_HAS_IS_BASE_OF #endif +#if __has_feature(is_final) +# define _LIBCPP_HAS_IS_FINAL +#endif + // Objective-C++ features (opt-in) #if __has_feature(objc_arc) #define _LIBCPP_HAS_OBJC_ARC @@ -327,6 +343,10 @@ typedef __char32_t char32_t; #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR #endif +#if !(__has_feature(cxx_variable_templates)) +#define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES +#endif + #if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L #if defined(__FreeBSD__) #define _LIBCPP_HAS_QUICK_EXIT @@ -388,6 +408,11 @@ namespace std { #if _GNUC_VER >= 407 #define _LIBCPP_UNDERLYING_TYPE(T) __underlying_type(T) #define _LIBCPP_IS_LITERAL(T) __is_literal_type(T) +#define _LIBCPP_HAS_IS_FINAL +#endif + +#if defined(__GNUC__) && _GNUC_VER >= 403 +# define _LIBCPP_HAS_IS_BASE_OF #endif #if !__EXCEPTIONS @@ -406,6 +431,8 @@ namespace std { // No version of GCC supports relaxed constexpr rules #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR +// GCC 5 will support variable templates +#define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES #define _NOEXCEPT throw() #define _NOEXCEPT_(x) @@ -477,6 +504,7 @@ using namespace _LIBCPP_NAMESPACE __attr #define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER #define _LIBCPP_HAS_NO_CONSTEXPR #define _LIBCPP_HAS_NO_CXX14_CONSTEXPR +#define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES #define _LIBCPP_HAS_NO_UNICODE_CHARS #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS #define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS @@ -519,6 +547,8 @@ namespace std { #define _LIBCPP_HAS_NO_NULLPTR #define _LIBCPP_HAS_NO_UNICODE_CHARS #define _LIBCPP_HAS_IS_BASE_OF +#define _LIBCPP_HAS_IS_FINAL +#define _LIBCPP_HAS_NO_VARIABLE_TEMPLATES #if defined(_AIX) #define __MULTILOCALE_API @@ -558,7 +588,12 @@ template struct __static_asse #endif // _LIBCPP_HAS_NO_STATIC_ASSERT #ifdef _LIBCPP_HAS_NO_DECLTYPE -#define decltype(x) __typeof__(x) +// GCC 4.6 provides __decltype in all standard modes. +#if !__is_identifier(__decltype) || _GNUC_VER >= 406 +# define decltype(__x) __decltype(__x) +#else +# define decltype(__x) __typeof__(__x) +#endif #endif #ifdef _LIBCPP_HAS_NO_CONSTEXPR @@ -579,14 +614,6 @@ template struct __static_asse #define _NOALIAS #endif -#ifndef __has_feature -#define __has_feature(__x) 0 -#endif - -#ifndef __has_builtin -#define __has_builtin(__x) 0 -#endif - #if __has_feature(cxx_explicit_conversions) || defined(__IBMCPP__) # define _LIBCPP_EXPLICIT explicit #else @@ -633,10 +660,16 @@ template struct __static_asse #define _LIBCPP_NONUNIQUE_RTTI_BIT (1ULL << 63) #endif -#if defined(__APPLE__) || defined(__FreeBSD__) || defined(_WIN32) || defined(__sun__) || defined(__NetBSD__) +#if defined(__APPLE__) || defined(__FreeBSD__) || defined(_WIN32) || \ + defined(__sun__) || defined(__NetBSD__) || defined(__CloudABI__) #define _LIBCPP_LOCALE__L_EXTENSIONS 1 #endif +#if !defined(_WIN32) && !defined(__ANDROID__) && !defined(_NEWLIB_VERSION) && \ + !defined(__CloudABI__) +#define _LIBCPP_HAS_CATOPEN 1 +#endif + #ifdef __FreeBSD__ #define _DECLARE_C99_LDBL_MATH 1 #endif @@ -649,21 +682,6 @@ template struct __static_asse #define _LIBCPP_WCTYPE_IS_MASK #endif -#if defined(ELAST) -#define _LIBCPP_ELAST ELAST -#elif defined(__linux__) -#define _LIBCPP_ELAST 4095 -#elif defined(_NEWLIB_VERSION) -#define _LIBCPP_ELAST __ELASTERROR -#elif defined(__APPLE__) -// Not _LIBCPP_ELAST needed on Apple -#elif defined(__sun__) -#define _LIBCPP_ELAST ESTALE -#else -// Warn here so that the person doing the libcxx port has an easier time: -#warning This platform's ELAST hasn't been ported yet -#endif - #ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR # if defined(__FreeBSD__) // Making the std::pair copy constructor trivial breaks ABI compatibility with @@ -731,4 +749,29 @@ extern "C" void __sanitizer_annotate_con _LIBCPP_HAS_NO_THREADS is defined. #endif +// Systems that use capability-based security (FreeBSD with Capsicum, +// Nuxi CloudABI) may only provide local filesystem access (using *at()). +// Functions like open(), rename(), unlink() and stat() should not be +// used, as they attempt to access the global filesystem namespace. +#ifdef __CloudABI__ +#define _LIBCPP_HAS_NO_GLOBAL_FILESYSTEM_NAMESPACE +#endif + +// CloudABI is intended for running networked services. Processes do not +// have standard input and output channels. +#ifdef __CloudABI__ +#define _LIBCPP_HAS_NO_STDIN +#define _LIBCPP_HAS_NO_STDOUT +#endif + +#if defined(__ANDROID__) || defined(__CloudABI__) +#define _LIBCPP_PROVIDES_DEFAULT_RUNE_TABLE +#endif + +// Thread-unsafe functions such as strtok(), mbtowc() and localtime() +// are not available. +#ifdef __CloudABI__ +#define _LIBCPP_HAS_NO_THREAD_UNSAFE_C_FUNCTIONS +#endif + #endif // _LIBCPP_CONFIG Modified: projects/clang370-import/contrib/libc++/include/__debug ============================================================================== --- projects/clang370-import/contrib/libc++/include/__debug Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__debug Wed Sep 16 22:26:52 2015 (r287877) @@ -22,7 +22,7 @@ # include # include # ifndef _LIBCPP_ASSERT -# define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : (_VSTD::printf("%s\n", m), _VSTD::abort())) +# define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : (_VSTD::fprintf(stderr, "%s\n", m), _VSTD::abort())) # endif #endif Modified: projects/clang370-import/contrib/libc++/include/__functional_03 ============================================================================== --- projects/clang370-import/contrib/libc++/include/__functional_03 Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__functional_03 Wed Sep 16 22:26:52 2015 (r287877) @@ -333,7 +333,8 @@ template* __func<_Fp, _Alloc, _Rp()>::__clone() const { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__func, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -359,7 +360,8 @@ template::destroy_deallocate() { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); __f_.~__compressed_pair<_Fp, _Alloc>(); __a.deallocate(this, 1); @@ -369,7 +371,8 @@ template::operator()() { - return __invoke(__f_.first()); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(__f_.first()); } #ifndef _LIBCPP_NO_RTTI @@ -416,7 +419,8 @@ template* __func<_Fp, _Alloc, _Rp(_A0)>::__clone() const { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__func, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -442,7 +446,8 @@ template::destroy_deallocate() { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); __f_.~__compressed_pair<_Fp, _Alloc>(); __a.deallocate(this, 1); @@ -452,7 +457,8 @@ template::operator()(_A0 __a0) { - return __invoke(__f_.first(), __a0); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(__f_.first(), __a0); } #ifndef _LIBCPP_NO_RTTI @@ -499,7 +505,8 @@ template* __func<_Fp, _Alloc, _Rp(_A0, _A1)>::__clone() const { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__func, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -525,7 +532,8 @@ template::destroy_deallocate() { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); __f_.~__compressed_pair<_Fp, _Alloc>(); __a.deallocate(this, 1); @@ -535,7 +543,8 @@ template::operator()(_A0 __a0, _A1 __a1) { - return __invoke(__f_.first(), __a0, __a1); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(__f_.first(), __a0, __a1); } #ifndef _LIBCPP_NO_RTTI @@ -582,7 +591,8 @@ template* __func<_Fp, _Alloc, _Rp(_A0, _A1, _A2)>::__clone() const { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__func, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -608,7 +618,8 @@ template::destroy_deallocate() { - typedef typename _Alloc::template rebind<__func>::other _Ap; + typedef allocator_traits<_Alloc> __alloc_traits; + typedef typename __rebind_alloc_helper<__alloc_traits, __func>::type _Ap; _Ap __a(__f_.second()); __f_.~__compressed_pair<_Fp, _Alloc>(); __a.deallocate(this, 1); @@ -618,7 +629,8 @@ template::operator()(_A0 __a0, _A1 __a1, _A2 __a2) { - return __invoke(__f_.first(), __a0, __a1, __a2); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(__f_.first(), __a0, __a1, __a2); } #ifndef _LIBCPP_NO_RTTI @@ -790,17 +802,11 @@ function<_Rp()>::function(allocator_arg_ if (sizeof(_FF) <= sizeof(__buf_)) { __f_ = (__base*)&__buf_; - ::new (__f_) _FF(__f); + ::new (__f_) _FF(__f, __a0); } else { - typedef typename __alloc_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<_FF> -#else - rebind_alloc<_FF>::other -#endif - _Ap; + typedef typename __rebind_alloc_helper<__alloc_traits, _FF>::type _Ap; _Ap __a(__a0); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__base, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -827,6 +833,7 @@ function<_Rp()>::operator=(nullptr_t) else if (__f_) __f_->destroy_deallocate(); __f_ = 0; + return *this; } template @@ -1092,17 +1099,11 @@ function<_Rp(_A0)>::function(allocator_a if (sizeof(_FF) <= sizeof(__buf_)) { __f_ = (__base*)&__buf_; - ::new (__f_) _FF(__f); + ::new (__f_) _FF(__f, __a0); } else { - typedef typename __alloc_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<_FF> -#else - rebind_alloc<_FF>::other -#endif - _Ap; + typedef typename __rebind_alloc_helper<__alloc_traits, _FF>::type _Ap; _Ap __a(__a0); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__base, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -1129,6 +1130,7 @@ function<_Rp(_A0)>::operator=(nullptr_t) else if (__f_) __f_->destroy_deallocate(); __f_ = 0; + return *this; } template @@ -1394,17 +1396,11 @@ function<_Rp(_A0, _A1)>::function(alloca if (sizeof(_FF) <= sizeof(__buf_)) { __f_ = (__base*)&__buf_; - ::new (__f_) _FF(__f); + ::new (__f_) _FF(__f, __a0); } else { - typedef typename __alloc_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<_FF> -#else - rebind_alloc<_FF>::other -#endif - _Ap; + typedef typename __rebind_alloc_helper<__alloc_traits, _FF>::type _Ap; _Ap __a(__a0); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__base, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -1431,6 +1427,7 @@ function<_Rp(_A0, _A1)>::operator=(nullp else if (__f_) __f_->destroy_deallocate(); __f_ = 0; + return *this; } template @@ -1696,17 +1693,11 @@ function<_Rp(_A0, _A1, _A2)>::function(a if (sizeof(_FF) <= sizeof(__buf_)) { __f_ = (__base*)&__buf_; - ::new (__f_) _FF(__f); + ::new (__f_) _FF(__f, __a0); } else { - typedef typename __alloc_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<_FF> -#else - rebind_alloc<_FF>::other -#endif - _Ap; + typedef typename __rebind_alloc_helper<__alloc_traits, _FF>::type _Ap; _Ap __a(__a0); typedef __allocator_destructor<_Ap> _Dp; unique_ptr<__base, _Dp> __hold(__a.allocate(1), _Dp(__a, 1)); @@ -1733,6 +1724,7 @@ function<_Rp(_A0, _A1, _A2)>::operator=( else if (__f_) __f_->destroy_deallocate(); __f_ = 0; + return *this; } template @@ -2099,14 +2091,16 @@ public: result_type operator()(_Args&& ...__args) { - return base::operator()(_VSTD::forward<_Args>(__args)...); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(static_cast(*this), _VSTD::forward<_Args>(__args)...); } template result_type operator()(_Args&& ...__args) const { - return base::operator()(_VSTD::forward<_Args>(__args)...); + typedef __invoke_void_return_wrapper<_Rp> _Invoker; + return _Invoker::__call(static_cast(*this), _VSTD::forward<_Args>(__args)...); } }; Modified: projects/clang370-import/contrib/libc++/include/__functional_base ============================================================================== --- projects/clang370-import/contrib/libc++/include/__functional_base Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__functional_base Wed Sep 16 22:26:52 2015 (r287877) @@ -70,7 +70,9 @@ struct _LIBCPP_TYPE_VIS_ONLY less template _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY auto operator()(_T1&& __t, _T2&& __u) const - { return _VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u); } + _NOEXCEPT_(noexcept(_VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u))) + -> decltype (_VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u)) + { return _VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u); } typedef void is_transparent; }; #endif @@ -419,6 +421,26 @@ struct __invoke_return typedef decltype(__invoke(_VSTD::declval<_Tp>(), _VSTD::declval<_Args>()...)) type; }; +template +struct __invoke_void_return_wrapper +{ + template + static _Ret __call(_Args&&... __args) + { + return __invoke(_VSTD::forward<_Args>(__args)...); + } +}; + +template <> +struct __invoke_void_return_wrapper +{ + template + static void __call(_Args&&... __args) + { + __invoke(_VSTD::forward<_Args>(__args)...); + } +}; + template class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> Modified: projects/clang370-import/contrib/libc++/include/__functional_base_03 ============================================================================== --- projects/clang370-import/contrib/libc++/include/__functional_base_03 Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__functional_base_03 Wed Sep 16 22:26:52 2015 (r287877) @@ -995,6 +995,63 @@ struct __invoke_return2 _VSTD::declval<_A2>())) type; }; +template +struct __invoke_void_return_wrapper +{ + template + static _Ret __call(_Fn __f) + { + return __invoke(__f); + } + + template + static _Ret __call(_Fn __f, _A0& __a0) + { + return __invoke(__f, __a0); + } + + template + static _Ret __call(_Fn __f, _A0& __a0, _A1& __a1) + { + return __invoke(__f, __a0, __a1); + } + + template + static _Ret __call(_Fn __f, _A0& __a0, _A1& __a1, _A2& __a2) + { + return __invoke(__f, __a0, __a1, __a2); + } +}; + + +template <> +struct __invoke_void_return_wrapper +{ + template + static void __call(_Fn __f) + { + __invoke(__f); + } + + template + static void __call(_Fn __f, _A0& __a0) + { + __invoke(__f, __a0); + } + + template + static void __call(_Fn __f, _A0& __a0, _A1& __a1) + { + __invoke(__f, __a0, __a1); + } + + template + static void __call(_Fn __f, _A0& __a0, _A1& __a1, _A2& __a2) + { + __invoke(__f, __a0, __a1, __a2); + } +}; + template class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> Modified: projects/clang370-import/contrib/libc++/include/__hash_table ============================================================================== --- projects/clang370-import/contrib/libc++/include/__hash_table Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__hash_table Wed Sep 16 22:26:52 2015 (r287877) @@ -19,6 +19,7 @@ #include #include <__undef_min_max> +#include <__undef___deallocate> #include <__debug> @@ -61,7 +62,7 @@ struct __hash_node inline _LIBCPP_INLINE_VISIBILITY bool -__is_power2(size_t __bc) +__is_hash_power2(size_t __bc) { return __bc > 2 && !(__bc & (__bc - 1)); } @@ -75,7 +76,7 @@ __constrain_hash(size_t __h, size_t __bc inline _LIBCPP_INLINE_VISIBILITY size_t -__next_pow2(size_t __n) +__next_hash_pow2(size_t __n) { return size_t(1) << (std::numeric_limits::digits - __clz(__n-1)); } @@ -84,8 +85,6 @@ template class _LIBCPP_TYPE_VIS_ONLY __hash_const_iterator; template class _LIBCPP_TYPE_VIS_ONLY __hash_map_iterator; template class _LIBCPP_TYPE_VIS_ONLY __hash_map_const_iterator; -template - class _LIBCPP_TYPE_VIS_ONLY unordered_map; template class _LIBCPP_TYPE_VIS_ONLY __hash_iterator @@ -776,13 +775,7 @@ public: public: // Create __node typedef __hash_node __node; - typedef typename __alloc_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<__node> -#else - rebind_alloc<__node>::other -#endif - __node_allocator; + typedef typename __rebind_alloc_helper<__alloc_traits, __node>::type __node_allocator; typedef allocator_traits<__node_allocator> __node_traits; typedef typename __node_traits::pointer __node_pointer; typedef typename __node_traits::pointer __node_const_pointer; @@ -797,13 +790,7 @@ public: private: - typedef typename __node_traits::template -#ifndef _LIBCPP_HAS_NO_TEMPLATE_ALIASES - rebind_alloc<__node_pointer> -#else - rebind_alloc<__node_pointer>::other -#endif - __pointer_allocator; + typedef typename __rebind_alloc_helper<__node_traits, __node_pointer>::type __pointer_allocator; typedef __bucket_list_deallocator<__pointer_allocator> __bucket_list_deleter; typedef unique_ptr<__node_pointer[], __bucket_list_deleter> __bucket_list; typedef allocator_traits<__pointer_allocator> __pointer_alloc_traits; @@ -909,11 +896,21 @@ public: iterator __emplace_hint_multi(const_iterator __p, _Args&&... __args); #endif // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS) +#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES + template + _LIBCPP_INLINE_VISIBILITY + pair __insert_unique_value(_ValueTp&& __x); +#else + _LIBCPP_INLINE_VISIBILITY + pair __insert_unique_value(const value_type& __x); +#endif + pair __insert_unique(const value_type& __x); #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES + pair __insert_unique(value_type&& __x); template - pair __insert_unique(_Pp&& __x); + pair __insert_unique(_Pp&& __x); #endif // _LIBCPP_HAS_NO_RVALUE_REFERENCES #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES @@ -988,12 +985,14 @@ public: void swap(__hash_table& __u) _NOEXCEPT_( - (!allocator_traits<__pointer_allocator>::propagate_on_container_swap::value || - __is_nothrow_swappable<__pointer_allocator>::value) && - (!__node_traits::propagate_on_container_swap::value || - __is_nothrow_swappable<__node_allocator>::value) && - __is_nothrow_swappable::value && - __is_nothrow_swappable::value); + __is_nothrow_swappable::value && __is_nothrow_swappable::value +#if _LIBCPP_STD_VER <= 11 + && (!allocator_traits<__pointer_allocator>::propagate_on_container_swap::value + || __is_nothrow_swappable<__pointer_allocator>::value) + && (!__node_traits::propagate_on_container_swap::value + || __is_nothrow_swappable<__node_allocator>::value) +#endif + ); _LIBCPP_INLINE_VISIBILITY size_type max_bucket_count() const _NOEXCEPT @@ -1121,38 +1120,6 @@ private: _LIBCPP_INLINE_VISIBILITY void __move_assign_alloc(__hash_table&, false_type) _NOEXCEPT {} - template - _LIBCPP_INLINE_VISIBILITY - static - void - __swap_alloc(_Ap& __x, _Ap& __y) - _NOEXCEPT_( - !allocator_traits<_Ap>::propagate_on_container_swap::value || - __is_nothrow_swappable<_Ap>::value) - { - __swap_alloc(__x, __y, - integral_constant::propagate_on_container_swap::value - >()); - } - - template - _LIBCPP_INLINE_VISIBILITY - static - void - __swap_alloc(_Ap& __x, _Ap& __y, true_type) - _NOEXCEPT_(__is_nothrow_swappable<_Ap>::value) - { - using _VSTD::swap; - swap(__x, __y); - } - - template - _LIBCPP_INLINE_VISIBILITY - static - void - __swap_alloc(_Ap&, _Ap&, false_type) _NOEXCEPT {} - void __deallocate(__node_pointer __np) _NOEXCEPT; __node_pointer __detach() _NOEXCEPT; @@ -1615,7 +1582,7 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> { if (size()+1 > __bc * max_load_factor() || __bc == 0) { - rehash(_VSTD::max(2 * __bc + !__is_power2(__bc), + rehash(_VSTD::max(2 * __bc + !__is_hash_power2(__bc), size_type(ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); __chash = __constrain_hash(__nd->__hash_, __bc); @@ -1658,7 +1625,7 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> size_type __bc = bucket_count(); if (size()+1 > __bc * max_load_factor() || __bc == 0) { - rehash(_VSTD::max(2 * __bc + !__is_power2(__bc), + rehash(_VSTD::max(2 * __bc + !__is_hash_power2(__bc), size_type(ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); } @@ -1728,7 +1695,7 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> size_type __bc = bucket_count(); if (size()+1 > __bc * max_load_factor() || __bc == 0) { - rehash(_VSTD::max(2 * __bc + !__is_power2(__bc), + rehash(_VSTD::max(2 * __bc + !__is_hash_power2(__bc), size_type(ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); } @@ -1752,6 +1719,26 @@ template ::iterator, bool> __hash_table<_Tp, _Hash, _Equal, _Alloc>::__insert_unique(const value_type& __x) { + return __insert_unique_value(__x); +} + + +#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES +template +template +_LIBCPP_INLINE_VISIBILITY +pair::iterator, bool> +__hash_table<_Tp, _Hash, _Equal, _Alloc>::__insert_unique_value(_ValueTp&& __x) +#else +template +_LIBCPP_INLINE_VISIBILITY +pair::iterator, bool> +__hash_table<_Tp, _Hash, _Equal, _Alloc>::__insert_unique_value(const value_type& __x) +#endif +{ +#if defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) + typedef const value_type& _ValueTp; +#endif size_t __hash = hash_function()(__x); size_type __bc = bucket_count(); bool __inserted = false; @@ -1773,10 +1760,10 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> } } { - __node_holder __h = __construct_node(__x, __hash); + __node_holder __h = __construct_node(_VSTD::forward<_ValueTp>(__x), __hash); if (size()+1 > __bc * max_load_factor() || __bc == 0) { - rehash(_VSTD::max(2 * __bc + !__is_power2(__bc), + rehash(_VSTD::max(2 * __bc + !__is_hash_power2(__bc), size_type(ceil(float(size() + 1) / max_load_factor())))); __bc = bucket_count(); __chash = __constrain_hash(__hash, __bc); @@ -1857,6 +1844,13 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> #endif // _LIBCPP_HAS_NO_VARIADICS template +pair::iterator, bool> +__hash_table<_Tp, _Hash, _Equal, _Alloc>::__insert_unique(value_type&& __x) +{ + return __insert_unique_value(_VSTD::move(__x)); +} + +template template pair::iterator, bool> __hash_table<_Tp, _Hash, _Equal, _Alloc>::__insert_unique(_Pp&& __x) @@ -1946,8 +1940,8 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> __n = _VSTD::max ( __n, - __is_power2(__bc) ? __next_pow2(size_t(ceil(float(size()) / max_load_factor()))) : - __next_prime(size_t(ceil(float(size()) / max_load_factor()))) + __is_hash_power2(__bc) ? __next_hash_pow2(size_t(ceil(float(size()) / max_load_factor()))) : + __next_prime(size_t(ceil(float(size()) / max_load_factor()))) ); if (__n < __bc) __rehash(__n); @@ -2358,12 +2352,14 @@ template ::swap(__hash_table& __u) _NOEXCEPT_( - (!allocator_traits<__pointer_allocator>::propagate_on_container_swap::value || - __is_nothrow_swappable<__pointer_allocator>::value) && - (!__node_traits::propagate_on_container_swap::value || - __is_nothrow_swappable<__node_allocator>::value) && - __is_nothrow_swappable::value && - __is_nothrow_swappable::value) + __is_nothrow_swappable::value && __is_nothrow_swappable::value +#if _LIBCPP_STD_VER <= 11 + && (!allocator_traits<__pointer_allocator>::propagate_on_container_swap::value + || __is_nothrow_swappable<__pointer_allocator>::value) + && (!__node_traits::propagate_on_container_swap::value + || __is_nothrow_swappable<__node_allocator>::value) +#endif + ) { { __node_pointer_pointer __npp = __bucket_list_.release(); @@ -2371,9 +2367,9 @@ __hash_table<_Tp, _Hash, _Equal, _Alloc> __u.__bucket_list_.reset(__npp); } _VSTD::swap(__bucket_list_.get_deleter().size(), __u.__bucket_list_.get_deleter().size()); - __swap_alloc(__bucket_list_.get_deleter().__alloc(), + __swap_allocator(__bucket_list_.get_deleter().__alloc(), __u.__bucket_list_.get_deleter().__alloc()); - __swap_alloc(__node_alloc(), __u.__node_alloc()); + __swap_allocator(__node_alloc(), __u.__node_alloc()); _VSTD::swap(__p1_.first().__next_, __u.__p1_.first().__next_); __p2_.swap(__u.__p2_); __p3_.swap(__u.__p3_); Modified: projects/clang370-import/contrib/libc++/include/__locale ============================================================================== --- projects/clang370-import/contrib/libc++/include/__locale Wed Sep 16 22:15:50 2015 (r287876) +++ projects/clang370-import/contrib/libc++/include/__locale Wed Sep 16 22:26:52 2015 (r287877) @@ -30,6 +30,7 @@ # include # endif #elif defined(__sun__) +# include # include #elif defined(_NEWLIB_VERSION) # include @@ -352,16 +353,15 @@ public: static const mask punct = _PUNCT; static const mask xdigit = _HEX; static const mask blank = _BLANK; -#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__) || defined(__ANDROID__) -#ifdef __APPLE__ +# define _LIBCPP_CTYPE_MASK_IS_COMPOSITE_PRINT +#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__) +# ifdef __APPLE__ typedef __uint32_t mask; -#elif defined(__FreeBSD__) +# elif defined(__FreeBSD__) typedef unsigned long mask; -#elif defined(__EMSCRIPTEN__) || defined(__NetBSD__) +# elif defined(__EMSCRIPTEN__) || defined(__NetBSD__) typedef unsigned short mask; -#elif defined(__ANDROID__) - typedef unsigned char mask; -#endif +# endif static const mask space = _CTYPE_S; static const mask print = _CTYPE_R; static const mask cntrl = _CTYPE_C; @@ -370,11 +370,7 @@ public: *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Wed Sep 16 22:36:08 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0ED029CEF03 for ; Wed, 16 Sep 2015 22:36:08 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.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 EF24410BB; Wed, 16 Sep 2015 22:36:07 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8GMa75A032334; Wed, 16 Sep 2015 22:36:07 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8GMa0HY032305; Wed, 16 Sep 2015 22:36:00 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201509162236.t8GMa0HY032305@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 16 Sep 2015 22:36:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287878 - in projects/clang370-import: . cddl/contrib/opensolaris/cmd/sgs/tools/common cddl/contrib/opensolaris/cmd/zdb cddl/contrib/opensolaris/cmd/zfs cddl/lib/libdtrace include lib/l... 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.20 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: Wed, 16 Sep 2015 22:36:08 -0000 Author: dim Date: Wed Sep 16 22:35:59 2015 New Revision: 287878 URL: https://svnweb.freebsd.org/changeset/base/287878 Log: Merge ^/head r287680 through r287877. Added: projects/clang370-import/share/dtrace/tcpdebug - copied unchanged from r287877, head/share/dtrace/tcpdebug projects/clang370-import/sys/sparc64/pci/ofw_pci.c - copied unchanged from r287877, head/sys/sparc64/pci/ofw_pci.c Modified: projects/clang370-import/Makefile.inc1 projects/clang370-import/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c projects/clang370-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs.8 projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c projects/clang370-import/cddl/lib/libdtrace/ip.d projects/clang370-import/cddl/lib/libdtrace/tcp.d projects/clang370-import/include/Makefile projects/clang370-import/lib/libc/db/recno/rec_open.c projects/clang370-import/lib/libc/gen/fts-compat.c projects/clang370-import/lib/libc/gen/getgrent.c projects/clang370-import/lib/libc/gen/getloadavg.c projects/clang370-import/lib/libc/gen/getmntinfo.c projects/clang370-import/lib/libc/gen/getpwent.c projects/clang370-import/lib/libc/gen/nlist.c projects/clang370-import/lib/libc/gen/strtofflags.c projects/clang370-import/lib/libc/gmon/gmon.c projects/clang370-import/lib/libc/stdlib/heapsort.c projects/clang370-import/lib/libc/stdlib/merge.c projects/clang370-import/lib/libc/stdlib/radixsort.c projects/clang370-import/lib/libc/sys/setuid.2 projects/clang370-import/release/Makefile projects/clang370-import/sbin/geom/class/nop/geom_nop.c projects/clang370-import/sbin/geom/class/nop/gnop.8 projects/clang370-import/sbin/ifconfig/ifconfig.c projects/clang370-import/share/man/man4/ctl.4 projects/clang370-import/share/man/man4/dtrace_ip.4 projects/clang370-import/share/man/man4/geom_fox.4 projects/clang370-import/share/man/man4/ng_pppoe.4 projects/clang370-import/share/man/man9/Makefile projects/clang370-import/share/man/man9/timeout.9 projects/clang370-import/share/mk/local.meta.sys.mk projects/clang370-import/sys/arm64/conf/GENERIC projects/clang370-import/sys/boot/usb/usbcore.mk projects/clang370-import/sys/cam/ctl/README.ctl.txt projects/clang370-import/sys/cam/ctl/ctl.c projects/clang370-import/sys/cam/ctl/ctl.h projects/clang370-import/sys/cam/ctl/ctl_backend_block.c projects/clang370-import/sys/cam/ctl/ctl_cmd_table.c projects/clang370-import/sys/cam/ctl/ctl_error.c projects/clang370-import/sys/cam/ctl/ctl_error.h projects/clang370-import/sys/cam/ctl/ctl_frontend.c projects/clang370-import/sys/cam/ctl/ctl_frontend_cam_sim.c projects/clang370-import/sys/cam/ctl/ctl_frontend_ioctl.c projects/clang370-import/sys/cam/ctl/ctl_frontend_iscsi.c projects/clang370-import/sys/cam/ctl/ctl_ha.c projects/clang370-import/sys/cam/ctl/ctl_io.h projects/clang370-import/sys/cam/ctl/ctl_tpc.c projects/clang370-import/sys/cam/ctl/ctl_tpc_local.c projects/clang370-import/sys/cam/ctl/ctl_util.c projects/clang370-import/sys/cam/scsi/scsi_all.c projects/clang370-import/sys/cam/scsi/scsi_all.h projects/clang370-import/sys/cam/scsi/scsi_ch.c projects/clang370-import/sys/cddl/contrib/opensolaris/common/avl/avl.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_zfetch.h projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/clang370-import/sys/cddl/contrib/opensolaris/uts/common/sys/sysevent/eventdefs.h projects/clang370-import/sys/conf/files.arm64 projects/clang370-import/sys/conf/files.sparc64 projects/clang370-import/sys/dev/dwc/if_dwc.c projects/clang370-import/sys/dev/e1000/e1000_80003es2lan.c projects/clang370-import/sys/dev/e1000/e1000_82540.c projects/clang370-import/sys/dev/e1000/e1000_82541.c projects/clang370-import/sys/dev/e1000/e1000_82542.c projects/clang370-import/sys/dev/e1000/e1000_82543.c projects/clang370-import/sys/dev/e1000/e1000_82571.h projects/clang370-import/sys/dev/e1000/e1000_82575.c projects/clang370-import/sys/dev/e1000/e1000_82575.h projects/clang370-import/sys/dev/e1000/e1000_api.c projects/clang370-import/sys/dev/e1000/e1000_api.h projects/clang370-import/sys/dev/e1000/e1000_defines.h projects/clang370-import/sys/dev/e1000/e1000_hw.h projects/clang370-import/sys/dev/e1000/e1000_i210.c projects/clang370-import/sys/dev/e1000/e1000_i210.h projects/clang370-import/sys/dev/e1000/e1000_ich8lan.c projects/clang370-import/sys/dev/e1000/e1000_ich8lan.h projects/clang370-import/sys/dev/e1000/e1000_mac.c projects/clang370-import/sys/dev/e1000/e1000_mac.h projects/clang370-import/sys/dev/e1000/e1000_nvm.c projects/clang370-import/sys/dev/e1000/e1000_nvm.h projects/clang370-import/sys/dev/e1000/e1000_osdep.h projects/clang370-import/sys/dev/e1000/e1000_phy.c projects/clang370-import/sys/dev/e1000/e1000_regs.h projects/clang370-import/sys/dev/e1000/if_igb.c projects/clang370-import/sys/dev/ral/rt2860.c projects/clang370-import/sys/dev/re/if_re.c projects/clang370-import/sys/dev/rl/if_rlreg.h projects/clang370-import/sys/dev/uart/uart_bus_pci.c projects/clang370-import/sys/dev/usb/controller/uhci_pci.c projects/clang370-import/sys/dev/usb/controller/xhci_pci.c projects/clang370-import/sys/dev/usb/serial/u3g.c projects/clang370-import/sys/dev/usb/usbdevs projects/clang370-import/sys/dev/usb/wlan/if_rsu.c projects/clang370-import/sys/dev/usb/wlan/if_run.c projects/clang370-import/sys/dev/usb/wlan/if_ural.c projects/clang370-import/sys/geom/nop/g_nop.c projects/clang370-import/sys/geom/nop/g_nop.h projects/clang370-import/sys/gnu/fs/reiserfs/reiserfs_vfsops.c projects/clang370-import/sys/kern/kern_linker.c projects/clang370-import/sys/kern/kern_proc.c projects/clang370-import/sys/kern/kern_rmlock.c projects/clang370-import/sys/kern/kern_sysctl.c projects/clang370-import/sys/kern/kern_timeout.c projects/clang370-import/sys/kern/subr_syscall.c projects/clang370-import/sys/kern/vfs_init.c projects/clang370-import/sys/kern/vfs_subr.c projects/clang370-import/sys/kern/vnode_if.src projects/clang370-import/sys/net/if.c projects/clang370-import/sys/net/if_arcsubr.c projects/clang370-import/sys/net/if_ethersubr.c projects/clang370-import/sys/net/if_fddisubr.c projects/clang370-import/sys/net/if_fwsubr.c projects/clang370-import/sys/net/if_iso88025subr.c projects/clang370-import/sys/net/if_llatbl.c projects/clang370-import/sys/net/if_llatbl.h projects/clang370-import/sys/net/if_var.h projects/clang370-import/sys/net/route.c projects/clang370-import/sys/netinet/if_ether.c projects/clang370-import/sys/netinet/if_ether.h projects/clang370-import/sys/netinet/in.c projects/clang370-import/sys/netinet/in_kdtrace.c projects/clang370-import/sys/netinet/in_kdtrace.h projects/clang370-import/sys/netinet/ip_carp.c projects/clang370-import/sys/netinet/sctp.h projects/clang370-import/sys/netinet/sctp_auth.c projects/clang370-import/sys/netinet/sctp_header.h projects/clang370-import/sys/netinet/sctp_indata.c projects/clang370-import/sys/netinet/sctp_input.c projects/clang370-import/sys/netinet/sctp_sysctl.h projects/clang370-import/sys/netinet/tcp_input.c projects/clang370-import/sys/netinet/tcp_output.c projects/clang370-import/sys/netinet/tcp_subr.c projects/clang370-import/sys/netinet/tcp_timer.c projects/clang370-import/sys/netinet/tcp_usrreq.c projects/clang370-import/sys/netinet6/icmp6.c projects/clang370-import/sys/netinet6/in6.c projects/clang370-import/sys/netinet6/ip6_forward.c projects/clang370-import/sys/netinet6/ip6_output.c projects/clang370-import/sys/netinet6/nd6.c projects/clang370-import/sys/netinet6/nd6.h projects/clang370-import/sys/netinet6/nd6_rtr.c projects/clang370-import/sys/netpfil/pf/pf.c projects/clang370-import/sys/ofed/drivers/infiniband/core/addr.c projects/clang370-import/sys/ofed/drivers/infiniband/core/mad.c projects/clang370-import/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_main.c projects/clang370-import/sys/sparc64/ebus/ebus.c projects/clang370-import/sys/sparc64/include/smp.h projects/clang370-import/sys/sparc64/pci/fire.c projects/clang370-import/sys/sparc64/pci/firereg.h projects/clang370-import/sys/sparc64/pci/firevar.h projects/clang370-import/sys/sparc64/pci/ofw_pci.h projects/clang370-import/sys/sparc64/pci/psycho.c projects/clang370-import/sys/sparc64/pci/psychoreg.h projects/clang370-import/sys/sparc64/pci/psychovar.h projects/clang370-import/sys/sparc64/pci/schizo.c projects/clang370-import/sys/sparc64/pci/schizoreg.h projects/clang370-import/sys/sparc64/pci/schizovar.h projects/clang370-import/sys/sys/_callout.h projects/clang370-import/sys/sys/callout.h projects/clang370-import/sys/sys/sysctl.h projects/clang370-import/sys/sys/vnode.h projects/clang370-import/sys/x86/acpica/madt.c projects/clang370-import/tools/tools/usbtest/Makefile projects/clang370-import/usr.bin/rctl/rctl.8 projects/clang370-import/usr.sbin/bsdconfig/share/common.subr projects/clang370-import/usr.sbin/bsdinstall/scripts/auto projects/clang370-import/usr.sbin/bsdinstall/scripts/config projects/clang370-import/usr.sbin/bsdinstall/scripts/docsinstall projects/clang370-import/usr.sbin/bsdinstall/scripts/hostname projects/clang370-import/usr.sbin/bsdinstall/scripts/jail projects/clang370-import/usr.sbin/bsdinstall/scripts/keymap projects/clang370-import/usr.sbin/bsdinstall/scripts/netconfig_ipv4 projects/clang370-import/usr.sbin/bsdinstall/scripts/netconfig_ipv6 projects/clang370-import/usr.sbin/bsdinstall/scripts/rootpass projects/clang370-import/usr.sbin/bsdinstall/scripts/script projects/clang370-import/usr.sbin/bsdinstall/scripts/wlanconfig projects/clang370-import/usr.sbin/bsdinstall/scripts/zfsboot projects/clang370-import/usr.sbin/ctladm/ctladm.8 projects/clang370-import/usr.sbin/ctld/ctl.conf.5 projects/clang370-import/usr.sbin/ctld/ctld.c projects/clang370-import/usr.sbin/ctld/ctld.h projects/clang370-import/usr.sbin/ctld/kernel.c projects/clang370-import/usr.sbin/ctld/login.c projects/clang370-import/usr.sbin/ctld/parse.y projects/clang370-import/usr.sbin/ctld/token.l projects/clang370-import/usr.sbin/i2c/i2c.c projects/clang370-import/usr.sbin/pw/pw_user.c Directory Properties: projects/clang370-import/ (props changed) projects/clang370-import/cddl/ (props changed) projects/clang370-import/cddl/contrib/opensolaris/ (props changed) projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/ (props changed) projects/clang370-import/include/ (props changed) projects/clang370-import/lib/libc/ (props changed) projects/clang370-import/sbin/ (props changed) projects/clang370-import/share/ (props changed) projects/clang370-import/share/man/man4/ (props changed) projects/clang370-import/sys/ (props changed) projects/clang370-import/sys/boot/ (props changed) projects/clang370-import/sys/cddl/contrib/opensolaris/ (props changed) projects/clang370-import/sys/conf/ (props changed) Modified: projects/clang370-import/Makefile.inc1 ============================================================================== --- projects/clang370-import/Makefile.inc1 Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/Makefile.inc1 Wed Sep 16 22:35:59 2015 (r287878) @@ -1258,7 +1258,7 @@ _elftoolchain_libs= lib/libelf lib/libdw legacy: .if ${BOOTSTRAPPING} < 800107 && ${BOOTSTRAPPING} != 0 - @echo "ERROR: Source upgrades from versions prior to 8.0 not supported."; \ + @echo "ERROR: Source upgrades from versions prior to 8.0 are not supported."; \ false .endif .for _tool in tools/build ${_elftoolchain_libs} @@ -1355,11 +1355,8 @@ ${_bt}-usr.bin/clang/clang-tblgen: ${_bt ${_bt}-usr.bin/clang/tblgen: ${_bt}-lib/clang/libllvmtablegen ${_bt}-lib/clang/libllvmsupport .endif -# ELF Tool Chain libraries are needed for ELF tools and dtrace tools. -# dtrace tools are required for older bootstrap env and cross-build -# pre libdwarf -.if ${BOOTSTRAPPING} < 1100006 || (${MACHINE} != ${TARGET} || \ - ${MACHINE_ARCH} != ${TARGET_ARCH}) +# Rebuild ctfconvert and ctfmerge to avoid difficult-to-diagnose failures +# resulting from missing bug fixes or ELF Toolchain updates. .if ${MK_CDDL} != "no" _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf cddl/usr.bin/ctfconvert \ cddl/usr.bin/ctfmerge @@ -1367,7 +1364,6 @@ _dtrace_tools= cddl/usr.bin/sgsmsg cddl/ ${_bt}-cddl/usr.bin/ctfconvert: ${_bt}-cddl/lib/libctf ${_bt}-cddl/usr.bin/ctfmerge: ${_bt}-cddl/lib/libctf .endif -.endif # Default to building the GPL DTC, but build the BSDL one if users explicitly # request it. Modified: projects/clang370-import/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c ============================================================================== --- projects/clang370-import/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/contrib/opensolaris/cmd/sgs/tools/common/sgsmsg.c Wed Sep 16 22:35:59 2015 (r287878) @@ -132,6 +132,8 @@ typedef struct msg_string { static msg_string *msg_head; static msg_string *msg_tail; +int aok; + /* * message_append() is responsible for both inserting strings into * the master Str_tbl as well as maintaining a list of the Modified: projects/clang370-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/clang370-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c Wed Sep 16 22:35:59 2015 (r287878) @@ -1205,7 +1205,9 @@ snprintf_blkptr_compact(char *blkbuf, si if (BP_IS_HOLE(bp)) { (void) snprintf(blkbuf + strlen(blkbuf), - buflen - strlen(blkbuf), "B=%llu", + buflen - strlen(blkbuf), + "%llxL B=%llu", + (u_longlong_t)BP_GET_LSIZE(bp), (u_longlong_t)bp->blk_birth); } else { (void) snprintf(blkbuf + strlen(blkbuf), Modified: projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs.8 ============================================================================== --- projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Wed Sep 16 22:35:59 2015 (r287878) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 30, 2015 +.Dd September 14, 2015 .Dt ZFS 8 .Os .Sh NAME @@ -2144,7 +2144,8 @@ Property name .It value Property value .It source -Property source. Can either be local, default, temporary, inherited, or none +Property source. Can either be local, default, temporary, inherited, received, +or none (\&-). .El .Pp @@ -2210,8 +2211,11 @@ The default value is all sources. .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Xc .Pp -Clears the specified property, causing it to be inherited from an ancestor. If -no ancestor has the property set, then the default value is used. See the +Clears the specified property, causing it to be inherited from an ancestor, +restored to default if no ancestor has the property set, or with the +.Fl S +option reverted to the received value if one exists. +See the .Qq Sx Properties section for a listing of default values, and details on which properties can be inherited. @@ -2219,8 +2223,10 @@ inherited. .It Fl r Recursively inherit the given property for all children. .It Fl S -For properties with a received value, revert to this value. This flag has no -effect on properties that do not have a received value. +Revert the property to the received value if one exists; otherwise operate as +if the +.Fl S +option was not specified. .El .It Xo .Nm Modified: projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Wed Sep 16 22:35:59 2015 (r287878) @@ -1928,9 +1928,13 @@ zfs_do_inherit(int argc, char **argv) if (prop == ZFS_PROP_QUOTA || prop == ZFS_PROP_RESERVATION || prop == ZFS_PROP_REFQUOTA || - prop == ZFS_PROP_REFRESERVATION) + prop == ZFS_PROP_REFRESERVATION) { (void) fprintf(stderr, gettext("use 'zfs set " "%s=none' to clear\n"), propname); + (void) fprintf(stderr, gettext("use 'zfs " + "inherit -S %s' to revert to received " + "value\n"), propname); + } return (1); } if (received && (prop == ZFS_PROP_VOLSIZE || Modified: projects/clang370-import/cddl/lib/libdtrace/ip.d ============================================================================== --- projects/clang370-import/cddl/lib/libdtrace/ip.d Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/lib/libdtrace/ip.d Wed Sep 16 22:35:59 2015 (r287878) @@ -110,7 +110,6 @@ typedef struct ipv4info { * These values are NULL if the packet is not IPv6. */ typedef struct in6_addr in6_addr_t; -typedef struct ip6_hdr ip6_t; typedef struct ipv6info { uint8_t ipv6_ver; /* IP version (6) */ uint8_t ipv6_tclass; /* traffic class */ @@ -123,7 +122,7 @@ typedef struct ipv6info { in6_addr_t *ipv6_dst; /* destination address */ string ipv6_saddr; /* source address, string */ string ipv6_daddr; /* destination address, string */ - ip6_t *ipv6_hdr; /* pointer to raw header */ + struct ip6_hdr *ipv6_hdr; /* pointer to raw header */ } ipv6info_t; #pragma D binding "1.5" IPPROTO_IP @@ -282,5 +281,5 @@ translator ipv6info_t < struct ip6_hdr * ipv6_dst = p == NULL ? 0 : (in6_addr_t *)&p->ip6_dst; ipv6_saddr = p == NULL ? 0 : inet_ntoa6(&p->ip6_src); ipv6_daddr = p == NULL ? 0 : inet_ntoa6(&p->ip6_dst); - ipv6_hdr = (ip6_t *)p; + ipv6_hdr = p; }; Modified: projects/clang370-import/cddl/lib/libdtrace/tcp.d ============================================================================== --- projects/clang370-import/cddl/lib/libdtrace/tcp.d Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/cddl/lib/libdtrace/tcp.d Wed Sep 16 22:35:59 2015 (r287878) @@ -103,11 +103,15 @@ typedef struct tcpsinfo { int32_t tcps_state; /* TCP state */ uint32_t tcps_iss; /* Initial sequence # sent */ uint32_t tcps_suna; /* sequence # sent but unacked */ + uint32_t tcps_smax; /* highest sequence number sent */ uint32_t tcps_snxt; /* next sequence # to send */ uint32_t tcps_rack; /* sequence # we have acked */ uint32_t tcps_rnxt; /* next sequence # expected */ uint32_t tcps_swnd; /* send window size */ int32_t tcps_snd_ws; /* send window scaling */ + uint32_t tcps_swl1; /* window update seg seq number */ + uint32_t tcps_swl2; /* window update seg ack number */ + uint32_t tcps_rup; /* receive urgent pointer */ uint32_t tcps_rwnd; /* receive window size */ int32_t tcps_rcv_ws; /* receive window scaling */ uint32_t tcps_cwnd; /* congestion window */ @@ -117,7 +121,8 @@ typedef struct tcpsinfo { uint32_t tcps_rto; /* round-trip timeout, msec */ uint32_t tcps_mss; /* max segment size */ int tcps_retransmit; /* retransmit send event, boolean */ - int tcps_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */ + int tcps_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */ + int tcps_debug; /* socket has SO_DEBUG set */ } tcpsinfo_t; /* @@ -188,12 +193,16 @@ translator tcpsinfo_t < struct tcpcb *p tcps_state = p == NULL ? -1 : p->t_state; tcps_iss = p == NULL ? 0 : p->iss; tcps_suna = p == NULL ? 0 : p->snd_una; + tcps_smax = p == NULL ? 0 : p->snd_max; tcps_snxt = p == NULL ? 0 : p->snd_nxt; tcps_rack = p == NULL ? 0 : p->last_ack_sent; tcps_rnxt = p == NULL ? 0 : p->rcv_nxt; tcps_swnd = p == NULL ? -1 : p->snd_wnd; tcps_snd_ws = p == NULL ? -1 : p->snd_scale; + tcps_swl1 = p == NULL ? -1 : p->snd_wl1; + tcps_swl2 = p == NULL ? -1 : p->snd_wl2; tcps_rwnd = p == NULL ? -1 : p->rcv_wnd; + tcps_rup = p == NULL ? -1 : p->rcv_up; tcps_rcv_ws = p == NULL ? -1 : p->rcv_scale; tcps_cwnd = p == NULL ? -1 : p->snd_cwnd; tcps_cwnd_ssthresh = p == NULL ? -1 : p->snd_ssthresh; @@ -203,6 +212,8 @@ translator tcpsinfo_t < struct tcpcb *p tcps_mss = p == NULL ? -1 : p->t_maxseg; tcps_retransmit = p == NULL ? -1 : p->t_rxtshift > 0 ? 1 : 0; tcps_srtt = p == NULL ? -1 : p->t_srtt; /* smoothed RTT in units of (TCP_RTT_SCALE*hz) */ + tcps_debug = p == NULL ? 0 : + p->t_inpcb->inp_socket->so_options & 1; }; #pragma D binding "1.6.3" translator @@ -242,3 +253,123 @@ translator tcpinfoh_t < struct tcphdr *p translator tcplsinfo_t < int s > { tcps_state = s; }; + + +/* Support for TCP debug */ + +#pragma D binding "1.12.1" TA_INPUT +inline int TA_INPUT = 0; +#pragma D binding "1.12.1" TA_OUTPUT +inline int TA_OUTPUT = 1; +#pragma D binding "1.12.1" TA_USER +inline int TA_USER = 2; +#pragma D binding "1.12.1" TA_RESPOND +inline int TA_RESPOND = 3; +#pragma D binding "1.12.1" TA_DROP +inline int TA_DROP = 4; + +/* direction strings. */ + +#pragma D binding "1.12.1" tcpdebug_dir_string +inline string tcpdebug_dir_string[uint8_t direction] = + direction == TA_INPUT ? "input" : + direction == TA_OUTPUT ? "output" : + direction == TA_USER ? "user" : + direction == TA_RESPOND ? "respond" : + direction == TA_OUTPUT ? "drop" : + "unknown" ; + +#pragma D binding "1.12.1" tcpflag_string +inline string tcpflag_string[uint8_t flags] = + flags & TH_FIN ? "FIN" : + flags & TH_SYN ? "SYN" : + flags & TH_RST ? "RST" : + flags & TH_PUSH ? "PUSH" : + flags & TH_ACK ? "ACK" : + flags & TH_URG ? "URG" : + flags & TH_ECE ? "ECE" : + flags & TH_CWR ? "CWR" : + "unknown" ; + +#pragma D binding "1.12.1" PRU_ATTACH +inline int PRU_ATTACH = 0; +#pragma D binding "1.12.1" PRU_DETACH +inline int PRU_DETACH = 1; +#pragma D binding "1.12.1" PRU_BIND +inline int PRU_BIND = 2; +#pragma D binding "1.12.1" PRU_LISTEN +inline int PRU_LISTEN = 3; +#pragma D binding "1.12.1" PRU_CONNECT +inline int PRU_CONNECT = 4; +#pragma D binding "1.12.1" PRU_ACCEPT +inline int PRU_ACCEPT = 5 ; +#pragma D binding "1.12.1" PRU_DISCONNECT +inline int PRU_DISCONNECT= 6; +#pragma D binding "1.12.1" PRU_SHUTDOWN +inline int PRU_SHUTDOWN = 7; +#pragma D binding "1.12.1" PRU_RCVD +inline int PRU_RCVD = 8; +#pragma D binding "1.12.1" PRU_SEND +inline int PRU_SEND = 9; +#pragma D binding "1.12.1" PRU_ABORT +inline int PRU_ABORT = 10; +#pragma D binding "1.12.1" PRU_CONTROL +inline int PRU_CONTROL = 11; +#pragma D binding "1.12.1" PRU_SENSE +inline int PRU_SENSE = 12; +#pragma D binding "1.12.1" PRU_RCVOOB +inline int PRU_RCVOOB = 13; +#pragma D binding "1.12.1" PRU_SENDOOB +inline int PRU_SENDOOB = 14; +#pragma D binding "1.12.1" PRU_SOCKADDR +inline int PRU_SOCKADDR = 15; +#pragma D binding "1.12.1" PRU_PEERADDR +inline int PRU_PEERADDR = 16; +#pragma D binding "1.12.1" PRU_CONNECT2 +inline int PRU_CONNECT2 = 17; +#pragma D binding "1.12.1" PRU_FASTTIMO +inline int PRU_FASTTIMO = 18; +#pragma D binding "1.12.1" PRU_SLOWTIMO +inline int PRU_SLOWTIMO = 19; +#pragma D binding "1.12.1" PRU_PROTORCV +inline int PRU_PROTORCV = 20; +#pragma D binding "1.12.1" PRU_PROTOSEND +inline int PRU_PROTOSEND = 21; +#pragma D binding "1.12.1" PRU_SEND_EOF +inline int PRU_SEND_EOF = 22; +#pragma D binding "1.12.1" PRU_SOSETLABEL +inline int PRU_SOSETLABEL = 23; +#pragma D binding "1.12.1" PRU_CLOSE +inline int PRU_CLOSE = 24; +#pragma D binding "1.12.1" PRU_FLUSH +inline int PRU_FLUSH = 25; + +#pragma D binding "1.12.1" prureq_string +inline string prureq_string[uint8_t req] = + req == PRU_ATTACH ? "ATTACH" : + req == PRU_DETACH ? "DETACH" : + req == PRU_BIND ? "BIND" : + req == PRU_LISTEN ? "LISTEN" : + req == PRU_CONNECT ? "CONNECT" : + req == PRU_ACCEPT ? "ACCEPT" : + req == PRU_DISCONNECT ? "DISCONNECT" : + req == PRU_SHUTDOWN ? "SHUTDOWN" : + req == PRU_RCVD ? "RCVD" : + req == PRU_SEND ? "SEND" : + req == PRU_ABORT ? "ABORT" : + req == PRU_CONTROL ? "CONTROL" : + req == PRU_SENSE ? "SENSE" : + req == PRU_RCVOOB ? "RCVOOB" : + req == PRU_SENDOOB ? "SENDOOB" : + req == PRU_SOCKADDR ? "SOCKADDR" : + req == PRU_PEERADDR ? "PEERADDR" : + req == PRU_CONNECT2 ? "CONNECT2" : + req == PRU_FASTTIMO ? "FASTTIMO" : + req == PRU_SLOWTIMO ? "SLOWTIMO" : + req == PRU_PROTORCV ? "PROTORCV" : + req == PRU_PROTOSEND ? "PROTOSEND" : + req == PRU_SEND ? "SEND_EOF" : + req == PRU_SOSETLABEL ? "SOSETLABEL" : + req == PRU_CLOSE ? "CLOSE" : + req == PRU_FLUSH ? "FLUSE" : + "unknown" ; Modified: projects/clang370-import/include/Makefile ============================================================================== --- projects/clang370-import/include/Makefile Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/include/Makefile Wed Sep 16 22:35:59 2015 (r287878) @@ -255,6 +255,7 @@ copies: ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 teken.h \ ${DESTDIR}${INCLUDEDIR}/teken .if ${MK_META_MODE} == "yes" + cd ${.OBJDIR} touch ${.TARGET} .endif @@ -372,6 +373,7 @@ symlinks: ${DESTDIR}${INCLUDEDIR}/rpc; \ done .if ${MK_META_MODE} == "yes" + cd ${.OBJDIR} touch ${.TARGET} .endif Modified: projects/clang370-import/lib/libc/db/recno/rec_open.c ============================================================================== --- projects/clang370-import/lib/libc/db/recno/rec_open.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/db/recno/rec_open.c Wed Sep 16 22:35:59 2015 (r287878) @@ -64,7 +64,7 @@ __rec_open(const char *fname, int flags, int rfd, sverrno; /* Open the user's file -- if this fails, we're done. */ - if (fname != NULL && (rfd = _open(fname, flags, mode)) < 0) + if (fname != NULL && (rfd = _open(fname, flags | O_CLOEXEC, mode)) < 0) return (NULL); /* Create a btree in memory (backed by disk). */ Modified: projects/clang370-import/lib/libc/gen/fts-compat.c ============================================================================== --- projects/clang370-import/lib/libc/gen/fts-compat.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/fts-compat.c Wed Sep 16 22:35:59 2015 (r287878) @@ -635,9 +635,7 @@ __fts_set_clientptr_44bsd(FTS *sp, void * been found, cutting the stat calls by about 2/3. */ static FTSENT * -fts_build(sp, type) - FTS *sp; - int type; +fts_build(FTS *sp, int type) { struct dirent *dp; FTSENT *p, *head; @@ -901,10 +899,7 @@ mem1: saved_errno = errno; } static u_short -fts_stat(sp, p, follow) - FTS *sp; - FTSENT *p; - int follow; +fts_stat(FTS *sp, FTSENT *p, int follow) { FTSENT *t; dev_t dev; @@ -999,10 +994,7 @@ fts_compar(const void *a, const void *b) } static FTSENT * -fts_sort(sp, head, nitems) - FTS *sp; - FTSENT *head; - int nitems; +fts_sort(FTS *sp, FTSENT *head, int nitems) { FTSENT **ap, *p; @@ -1031,10 +1023,7 @@ fts_sort(sp, head, nitems) } static FTSENT * -fts_alloc(sp, name, namelen) - FTS *sp; - char *name; - int namelen; +fts_alloc(FTS *sp, char *name, int namelen) { FTSENT *p; size_t len; @@ -1081,8 +1070,7 @@ fts_alloc(sp, name, namelen) } static void -fts_lfree(head) - FTSENT *head; +fts_lfree(FTSENT *head) { FTSENT *p; @@ -1100,9 +1088,7 @@ fts_lfree(head) * plus 256 bytes so don't realloc the path 2 bytes at a time. */ static int -fts_palloc(sp, more) - FTS *sp; - size_t more; +fts_palloc(FTS *sp, size_t more) { sp->fts_pathlen += more + 256; @@ -1127,9 +1113,7 @@ fts_palloc(sp, more) * already returned. */ static void -fts_padjust(sp, head) - FTS *sp; - FTSENT *head; +fts_padjust(FTS *sp, FTSENT *head) { FTSENT *p; char *addr = sp->fts_path; @@ -1153,8 +1137,7 @@ fts_padjust(sp, head) } static size_t -fts_maxarglen(argv) - char * const *argv; +fts_maxarglen(char * const *argv) { size_t len, max; @@ -1170,11 +1153,7 @@ fts_maxarglen(argv) * Assumes p->fts_dev and p->fts_ino are filled in. */ static int -fts_safe_changedir(sp, p, fd, path) - FTS *sp; - FTSENT *p; - int fd; - char *path; +fts_safe_changedir(FTS *sp, FTSENT *p, int fd, char *path) { int ret, oerrno, newfd; struct stat sb; Modified: projects/clang370-import/lib/libc/gen/getgrent.c ============================================================================== --- projects/clang370-import/lib/libc/gen/getgrent.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/getgrent.c Wed Sep 16 22:35:59 2015 (r287878) @@ -1238,7 +1238,7 @@ compat_setgrent(void *retval, void *mdat int rv, stayopen; #define set_setent(x, y) do { \ - int i; \ + unsigned int i; \ \ for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ x[i].mdata = (void *)y; \ @@ -1308,7 +1308,7 @@ compat_group(void *retval, void *mdata, int rv, stayopen, *errnop; #define set_lookup_type(x, y) do { \ - int i; \ + unsigned int i; \ \ for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ x[i].mdata = (void *)y; \ Modified: projects/clang370-import/lib/libc/gen/getloadavg.c ============================================================================== --- projects/clang370-import/lib/libc/gen/getloadavg.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/getloadavg.c Wed Sep 16 22:35:59 2015 (r287878) @@ -48,9 +48,7 @@ __FBSDID("$FreeBSD$"); * Return number of samples retrieved, or -1 on error. */ int -getloadavg(loadavg, nelem) - double loadavg[]; - int nelem; +getloadavg(double loadavg[], int nelem) { struct loadavg loadinfo; int i, mib[2]; Modified: projects/clang370-import/lib/libc/gen/getmntinfo.c ============================================================================== --- projects/clang370-import/lib/libc/gen/getmntinfo.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/getmntinfo.c Wed Sep 16 22:35:59 2015 (r287878) @@ -42,9 +42,7 @@ __FBSDID("$FreeBSD$"); * Return information about mounted filesystems. */ int -getmntinfo(mntbufp, flags) - struct statfs **mntbufp; - int flags; +getmntinfo(struct statfs **mntbufp, int flags) { static struct statfs *mntbuf; static int mntsize; Modified: projects/clang370-import/lib/libc/gen/getpwent.c ============================================================================== --- projects/clang370-import/lib/libc/gen/getpwent.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/getpwent.c Wed Sep 16 22:35:59 2015 (r287878) @@ -1607,7 +1607,8 @@ compat_redispatch(struct compat_state *s { NULL, NULL, NULL } }; void *discard; - int rv, e, i; + int rv, e; + unsigned int i; for (i = 0; i < sizeof(dtab)/sizeof(dtab[0]) - 1; i++) dtab[i].mdata = (void *)lookup_how; @@ -1702,7 +1703,7 @@ compat_setpwent(void *retval, void *mdat int rv, stayopen; #define set_setent(x, y) do { \ - int i; \ + unsigned int i; \ \ for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ x[i].mdata = (void *)y; \ Modified: projects/clang370-import/lib/libc/gen/nlist.c ============================================================================== --- projects/clang370-import/lib/libc/gen/nlist.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/nlist.c Wed Sep 16 22:35:59 2015 (r287878) @@ -63,9 +63,7 @@ int __aout_fdnlist(int, struct nlist *); int __elf_fdnlist(int, struct nlist *); int -nlist(name, list) - const char *name; - struct nlist *list; +nlist(const char *name, struct nlist *list) { int fd, n; @@ -89,11 +87,10 @@ static struct nlist_handlers { }; int -__fdnlist(fd, list) - int fd; - struct nlist *list; +__fdnlist(int fd, struct nlist *list) { - int n = -1, i; + int n = -1; + unsigned int i; for (i = 0; i < sizeof(nlist_fn) / sizeof(nlist_fn[0]); i++) { n = (nlist_fn[i].fn)(fd, list); @@ -107,9 +104,7 @@ __fdnlist(fd, list) #ifdef _NLIST_DO_AOUT int -__aout_fdnlist(fd, list) - int fd; - struct nlist *list; +__aout_fdnlist(int fd, struct nlist *list) { struct nlist *p, *symtab; caddr_t strtab, a_out_mmap; @@ -235,9 +230,7 @@ __elf_is_okay__(Elf_Ehdr *ehdr) } int -__elf_fdnlist(fd, list) - int fd; - struct nlist *list; +__elf_fdnlist(int fd, struct nlist *list) { struct nlist *p; Elf_Off symoff = 0, symstroff = 0; @@ -377,11 +370,7 @@ __elf_fdnlist(fd, list) * n_value and n_type members. */ static void -elf_sym_to_nlist(nl, s, shdr, shnum) - struct nlist *nl; - Elf_Sym *s; - Elf_Shdr *shdr; - int shnum; +elf_sym_to_nlist(struct nlist *nl, Elf_Sym *s, Elf_Shdr *shdr, int shnum) { nl->n_value = s->st_value; Modified: projects/clang370-import/lib/libc/gen/strtofflags.c ============================================================================== --- projects/clang370-import/lib/libc/gen/strtofflags.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gen/strtofflags.c Wed Sep 16 22:35:59 2015 (r287878) @@ -94,14 +94,13 @@ static struct { * are set, return the empty string. */ char * -fflagstostr(flags) - u_long flags; +fflagstostr(u_long flags) { char *string; const char *sp; char *dp; u_long setflags; - int i; + u_int i; if ((string = (char *)malloc(nmappings * (longestflaglen + 1))) == NULL) return (NULL); @@ -128,9 +127,7 @@ fflagstostr(flags) * to the offending token. */ int -strtofflags(stringp, setp, clrp) - char **stringp; - u_long *setp, *clrp; +strtofflags(char **stringp, u_long *setp, u_long *clrp) { char *string, *p; int i; Modified: projects/clang370-import/lib/libc/gmon/gmon.c ============================================================================== --- projects/clang370-import/lib/libc/gmon/gmon.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/gmon/gmon.c Wed Sep 16 22:35:59 2015 (r287878) @@ -70,9 +70,7 @@ void moncontrol(int); static int hertz(void); void -monstartup(lowpc, highpc) - u_long lowpc; - u_long highpc; +monstartup(u_long lowpc, u_long highpc) { int o; char *cp; @@ -218,8 +216,7 @@ _mcleanup(void) * all the data structures are ready. */ void -moncontrol(mode) - int mode; +moncontrol(int mode) { struct gmonparam *p = &_gmonparam; @@ -239,7 +236,7 @@ moncontrol(mode) * if something goes wrong, we return 0, an impossible hertz. */ static int -hertz() +hertz(void) { struct itimerval tim; Modified: projects/clang370-import/lib/libc/stdlib/heapsort.c ============================================================================== --- projects/clang370-import/lib/libc/stdlib/heapsort.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/stdlib/heapsort.c Wed Sep 16 22:35:59 2015 (r287878) @@ -147,16 +147,11 @@ typedef DECLARE_BLOCK(int, heapsort_bloc */ #ifdef I_AM_HEAPSORT_B int -heapsort_b(vbase, nmemb, size, compar) - void *vbase; - size_t nmemb, size; - heapsort_block compar; +heapsort_b(void *vbase, size_t nmemb, size_t size, heapsort_block compar) #else int -heapsort(vbase, nmemb, size, compar) - void *vbase; - size_t nmemb, size; - int (*compar)(const void *, const void *); +heapsort(void *vbase, size_t nmemb, size_t size, + int (*compar)(const void *, const void *)) #endif { size_t cnt, i, j, l; Modified: projects/clang370-import/lib/libc/stdlib/merge.c ============================================================================== --- projects/clang370-import/lib/libc/stdlib/merge.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/stdlib/merge.c Wed Sep 16 22:35:59 2015 (r287878) @@ -104,14 +104,10 @@ static void insertionsort(u_char *, size */ int #ifdef I_AM_MERGESORT_B -mergesort_b(base, nmemb, size, cmp) +mergesort_b(void *base, size_t nmemb, size_t size, cmp_t cmp) #else -mergesort(base, nmemb, size, cmp) +mergesort(void *base, size_t nmemb, size_t size, cmp_t cmp) #endif - void *base; - size_t nmemb; - size_t size; - cmp_t cmp; { size_t i; int sense; @@ -271,10 +267,7 @@ COPY: b = t; * is defined. Otherwise simple pairwise merging is used.) */ void -setup(list1, list2, n, size, cmp) - size_t n, size; - u_char *list1, *list2; - cmp_t cmp; +setup(u_char *list1, u_char *list2, size_t n, size_t size, cmp_t cmp) { int i, length, size2, tmp, sense; u_char *f1, *f2, *s, *l2, *last, *p2; @@ -345,10 +338,7 @@ setup(list1, list2, n, size, cmp) * last 4 elements. */ static void -insertionsort(a, n, size, cmp) - u_char *a; - size_t n, size; - cmp_t cmp; +insertionsort(u_char *a, size_t n, size_t size, cmp_t cmp) { u_char *ai, *s, *t, *u, tmp; int i; Modified: projects/clang370-import/lib/libc/stdlib/radixsort.c ============================================================================== --- projects/clang370-import/lib/libc/stdlib/radixsort.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/stdlib/radixsort.c Wed Sep 16 22:35:59 2015 (r287878) @@ -88,10 +88,7 @@ static void r_sort_b(const u_char **, co } int -radixsort(a, n, tab, endch) - const u_char **a, *tab; - int n; - u_int endch; +radixsort(const u_char **a, int n, const u_char *tab, u_int endch) { const u_char *tr; int c; @@ -103,10 +100,7 @@ radixsort(a, n, tab, endch) } int -sradixsort(a, n, tab, endch) - const u_char **a, *tab; - int n; - u_int endch; +sradixsort(const u_char **a, int n, const u_char *tab, u_int endch) { const u_char *tr, **ta; int c; @@ -131,11 +125,7 @@ sradixsort(a, n, tab, endch) /* Unstable, in-place sort. */ static void -r_sort_a(a, n, i, tr, endch) - const u_char **a; - int n, i; - const u_char *tr; - u_int endch; +r_sort_a(const u_char **a, int n, int i, const u_char *tr, u_int endch) { static int count[256], nc, bmin; int c; @@ -233,11 +223,8 @@ r_sort_a(a, n, i, tr, endch) /* Stable sort, requiring additional memory. */ static void -r_sort_b(a, ta, n, i, tr, endch) - const u_char **a, **ta; - int n, i; - const u_char *tr; - u_int endch; +r_sort_b(const u_char **a, const u_char **ta, int n, int i, const u_char *tr, + u_int endch) { static int count[256], nc, bmin; int c; @@ -304,12 +291,9 @@ r_sort_b(a, ta, n, i, tr, endch) } } +/* insertion sort */ static inline void -simplesort(a, n, b, tr, endch) /* insertion sort */ - const u_char **a; - int n, b; - const u_char *tr; - u_int endch; +simplesort(const u_char **a, int n, int b, const u_char *tr, u_int endch) { u_char ch; const u_char **ak, **ai, *s, *t; Modified: projects/clang370-import/lib/libc/sys/setuid.2 ============================================================================== --- projects/clang370-import/lib/libc/sys/setuid.2 Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/lib/libc/sys/setuid.2 Wed Sep 16 22:35:59 2015 (r287878) @@ -28,7 +28,7 @@ .\" @(#)setuid.2 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd June 4, 1993 +.Dd September 13, 2015 .Dt SETUID 2 .Os .Sh NAME @@ -178,15 +178,10 @@ pseudocode(void) int fd; /* ... */ - fd = open("/path/to/sensitive/data", O_RDWR); + fd = open("/path/to/sensitive/data", O_RDWR | O_CLOEXEC); if (fd == -1) err(1, "open"); - /* - * Set close-on-exec flag; see fcntl(2) for more information. - */ - if (fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) - err(1, "fcntl(F_SETFD)"); /* ... */ execve(path, argv, environ); } Modified: projects/clang370-import/release/Makefile ============================================================================== --- projects/clang370-import/release/Makefile Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/release/Makefile Wed Sep 16 22:35:59 2015 (r287878) @@ -21,6 +21,7 @@ # (by default, the directory above this one) # PORTSDIR: location of ports tree to distribute (default: /usr/ports) # DOCDIR: location of doc tree (default: /usr/doc) +# XTRADIR: xtra-bits-dir argument for /mkisoimages.sh # NOPKG: if set, do not distribute third-party packages # NOPORTS: if set, do not distribute ports tree # NOSRC: if set, do not distribute source tree @@ -242,13 +243,13 @@ dvd: packagesystem release.iso: disc1.iso disc1.iso: disc1 - sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_CD ${.TARGET} disc1 + sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_CD ${.TARGET} disc1 ${XTRADIR} dvd1.iso: dvd pkg-stage - sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_DVD ${.TARGET} dvd + sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_DVD ${.TARGET} dvd ${XTRADIR} bootonly.iso: bootonly - sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_BO ${.TARGET} bootonly + sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_BO ${.TARGET} bootonly ${XTRADIR} memstick: memstick.img memstick.img: disc1 Modified: projects/clang370-import/sbin/geom/class/nop/geom_nop.c ============================================================================== --- projects/clang370-import/sbin/geom/class/nop/geom_nop.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/sbin/geom/class/nop/geom_nop.c Wed Sep 16 22:35:59 2015 (r287878) @@ -43,14 +43,16 @@ struct g_command class_commands[] = { { { 'e', "error", "-1", G_TYPE_NUMBER }, { 'o', "offset", "0", G_TYPE_NUMBER }, + { 'p', "stripesize", "0", G_TYPE_NUMBER }, + { 'P', "stripeoffset", "0", G_TYPE_NUMBER }, { 'r', "rfailprob", "-1", G_TYPE_NUMBER }, { 's', "size", "0", G_TYPE_NUMBER }, { 'S', "secsize", "0", G_TYPE_NUMBER }, { 'w', "wfailprob", "-1", G_TYPE_NUMBER }, G_OPT_SENTINEL }, - "[-v] [-e error] [-o offset] [-r rfailprob] [-s size] " - "[-S secsize] [-w wfailprob] dev ..." + "[-v] [-e error] [-o offset] [-p stripesize] [-P stripeoffset] " + "[-r rfailprob] [-s size] [-S secsize] [-w wfailprob] dev ..." }, { "configure", G_FLAG_VERBOSE, NULL, { Modified: projects/clang370-import/sbin/geom/class/nop/gnop.8 ============================================================================== --- projects/clang370-import/sbin/geom/class/nop/gnop.8 Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/sbin/geom/class/nop/gnop.8 Wed Sep 16 22:35:59 2015 (r287878) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 14, 2013 +.Dd September 15, 2015 .Dt GNOP 8 .Os .Sh NAME @@ -36,6 +36,8 @@ .Op Fl v .Op Fl e Ar error .Op Fl o Ar offset +.Op Fl p Ar stripesize +.Op Fl P Ar stripeoffset .Op Fl r Ar rfailprob .Op Fl s Ar size .Op Fl S Ar secsize @@ -115,6 +117,10 @@ Specifies the error number to return on Force the removal of the specified provider. .It Fl o Ar offset Where to begin on the original provider. +.It Fl p Ar stripesize +Value of the stripesize property of the transparent provider. +.It Fl P Ar stripeoffset +Value of the stripeoffset property of the transparent provider. .It Fl r Ar rfailprob Specifies read failure probability in percent. .It Fl s Ar size Modified: projects/clang370-import/sbin/ifconfig/ifconfig.c ============================================================================== --- projects/clang370-import/sbin/ifconfig/ifconfig.c Wed Sep 16 22:26:52 2015 (r287877) +++ projects/clang370-import/sbin/ifconfig/ifconfig.c Wed Sep 16 22:35:59 2015 (r287878) @@ -995,7 +995,7 @@ setifmetric(const char *val, int dummy _ strncpy(ifr.ifr_name, name, sizeof (ifr.ifr_name)); ifr.ifr_metric = atoi(val); if (ioctl(s, SIOCSIFMETRIC, (caddr_t)&ifr) < 0) - warn("ioctl (set metric)"); + err(1, "ioctl SIOCSIFMETRIC (set metric)"); } static void @@ -1005,7 +1005,7 @@ setifmtu(const char *val, int dummy __un strncpy(ifr.ifr_name, name, sizeof (ifr.ifr_name)); ifr.ifr_mtu = atoi(val); if (ioctl(s, SIOCSIFMTU, (caddr_t)&ifr) < 0) - warn("ioctl (set mtu)"); + err(1, "ioctl SIOCSIFMTU (set mtu)"); } static void @@ -1015,15 +1015,12 @@ setifname(const char *val, int dummy __u char *newname; newname = strdup(val); - if (newname == NULL) { - warn("no memory to set ifname"); - return; - } + if (newname == NULL) + err(1, "no memory to set ifname"); ifr.ifr_data = newname; if (ioctl(s, SIOCSIFNAME, (caddr_t)&ifr) < 0) { - warn("ioctl (set name)"); free(newname); - return; + err(1, "ioctl SIOCSIFNAME (set name)"); } strlcpy(name, newname, sizeof(name)); free(newname); @@ -1050,7 +1047,7 @@ setifdescr(const char *val, int dummy __ } if (ioctl(s, SIOCSIFDESCR, (caddr_t)&ifr) < 0) - warn("ioctl (set descr)"); + err(1, "ioctl SIOCSIFDESCR (set descr)"); free(newdescr); } Copied: projects/clang370-import/share/dtrace/tcpdebug (from r287877, head/share/dtrace/tcpdebug) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang370-import/share/dtrace/tcpdebug Wed Sep 16 22:35:59 2015 (r287878, copy of r287877, head/share/dtrace/tcpdebug) @@ -0,0 +1,165 @@ +#!/usr/sbin/dtrace -s +/* + * Copyright (c) 2015 George V. Neville-Neil + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (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$ + * + * The tcpdebug D script uses the tcp:kernel::debug tracepoints + * to replicate the action of turning on TCPDEBUG in a kernel configuration. + * + * A TCP debug statement shows a connection's + * + * direction: input, output, user, drop + * state: CLOSED, LISTEN, SYN_SENT, SYN_RCVD, ESTABLISHED, + * CLOSE_WAIT, FIN_WAIT_1, CLOSING, LAST_ACK, FIN_WAIT_2,TIME_WAIT + * sequence: sequence space + * + * congestion: rcv_nxt, rcv_wnd, rcv_up, snd_una, snd_nxt, snx_max, + * snd_wl1, snd_wl2, snd_wnd + * + * NOTE: Only sockets with SO_DEBUG set will be shown. + * + * Usage: tcpdebug + */ + +#pragma D option quiet +tcp:kernel::debug-input +/args[0]->tcps_debug/ +{ + seq = args[1]->tcp_seq; + ack = args[1]->tcp_ack; + len = args[2]->ip_plength - sizeof(struct tcphdr); + flags = args[1]->tcp_flags; + + printf("%p %s: input [%xu..%xu]", arg0, + tcp_state_string[args[0]->tcps_state], seq, seq + len); + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Thu Sep 17 12:45:21 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 85C049CF526 for ; Thu, 17 Sep 2015 12:45:21 +0000 (UTC) (envelope-from bms@fastmail.net) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (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 582F41174 for ; Thu, 17 Sep 2015 12:45:20 +0000 (UTC) (envelope-from bms@fastmail.net) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id ED04F20A1D for ; Thu, 17 Sep 2015 08:45:19 -0400 (EDT) Received: from frontend2 ([10.202.2.161]) by compute1.internal (MEProxy); Thu, 17 Sep 2015 08:45:19 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=fastmail.net; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-sasl-enc :x-sasl-enc; s=mesmtp; bh=GrWUQyGhifsPpj7FWGsoSml1bG8=; b=AirZ2f NDwCajgyP3YrX4HhN6pVrfWWrCYGb0UdCEpOcVuwfTGI6TEX45cIklRD1iM8ZiZ7 hNlPc62WTRInhc6KrJkYl1f9ALScAod1TIXQxAq9RnmPkAwwQGYTuL2+eld5MZTi pTM3sOUvVjj9eHysy/9mXJFbo+mQ/P8iIY2w0= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=GrWUQyGhifsPpj7 FWGsoSml1bG8=; b=YTcFP5AOKrvVZIRmoQSTedfqfEwGldhOZ8UWW5YAvCTOaec 41Qb3180X5qWZ2rCCYNR2Q2y82ISNMdj1MeShEejmHeG76ezEf0IJXI9Ql2jdWEo A4c6sDxK5RiKYyg7YB4ElAi4oFP7zhrZ/+/LRnozhavSd+S0KCu0YQPZ/qW8= X-Sasl-enc: HGDxmzzcMBW3zPmKbqJ7uW928ayUE/HzkWenV/4ycgw0 1442493919 Received: from pion.local (host81-139-223-71.in-addr.btopenworld.com [81.139.223.71]) by mail.messagingengine.com (Postfix) with ESMTPA id 44096680133; Thu, 17 Sep 2015 08:45:19 -0400 (EDT) Subject: Re: svn commit: r287876 - in projects/iosched/sys/cam: . ata scsi To: Warner Losh , src-committers@freebsd.org, svn-src-projects@freebsd.org References: <201509162215.t8GMFp1b023705@repo.freebsd.org> From: Bruce Simpson Message-ID: <55FAB5DD.20609@fastmail.net> Date: Thu, 17 Sep 2015 13:45:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <201509162215.t8GMFp1b023705@repo.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 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, 17 Sep 2015 12:45:21 -0000 Warner, Is it going to be possible to MFC the NCQ trim fixes, or is this dependent on post 10.x work? It took a longgggg time for Linux to catch up with Crucial's firmware patch. [1] cheers Bruce [1] Which, by the way, is an excellent example of vendors doing the right thing for a change, as the patch was delivered as a Linux-based self-booting image (ISO/USB/etc). On 16/09/15 23:15, Warner Losh wrote: > Log: > Commit the post-BSDcan level (and a little more) iosched work. ... > + /* > + * Crucial Mxxx SSDs > + * NCQ Trim doesn't work, but only on MU01 firmware > + */ > + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*M550*", "MU01" }, > + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN > + }, From owner-svn-src-projects@freebsd.org Thu Sep 17 14:16:52 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 244499CE422 for ; Thu, 17 Sep 2015 14:16:52 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk0-f178.google.com (mail-qk0-f178.google.com [209.85.220.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DB7E013AF for ; Thu, 17 Sep 2015 14:16:51 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qkdw123 with SMTP id w123so6922850qkd.0 for ; Thu, 17 Sep 2015 07:16:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=/JAYT9ls2uaudmczLLggSj9xTlXJM/bJQnCBPyXUPew=; b=Vg4qeatkfcNnlrKvVox+inRzAnsaPnwnXRRghOP0oUUD/pl6F7V8Bgs0/xmPIUjB1v MNgMQeAE03ZL6vc3FLcmgf4DUuStiFsNCRZ4IwQkLrlR1BwAfo/GD1hI99xDPFVYfdDS 4nzEK8ctvIT3ECIyfNy4zSrZJlAoPqz/BvwD0UhhjZSZ/j5BrMNj1xNQYquRs49HUPC5 2zCp/quAi+MLpWYHbjQ+EFEP/F04paity9xec/Nd38kjrjGCsn6fY3ReejNI81k2r5JU CMw9ZpIWFlYCcYUT8IOwyr2LNPbrmdlOFTmob96T9agJhHTzPXPlFbIBnlH9S4Ao38Y3 spKw== X-Gm-Message-State: ALoCoQlFiCjeg9tYgVTujkQFxZMGiYJ4Kytl/kCwRf0ARydc4GcQAldfF3aA2JWj+pUmepAXtBHF MIME-Version: 1.0 X-Received: by 10.55.204.208 with SMTP id n77mr51440648qkl.46.1442499405238; Thu, 17 Sep 2015 07:16:45 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Thu, 17 Sep 2015 07:16:45 -0700 (PDT) X-Originating-IP: [50.253.99.174] In-Reply-To: <55FAB5DD.20609@fastmail.net> References: <201509162215.t8GMFp1b023705@repo.freebsd.org> <55FAB5DD.20609@fastmail.net> Date: Thu, 17 Sep 2015 08:16:45 -0600 X-Google-Sender-Auth: fak1N-DTtoKE3x-yKKB5gUyWgz8 Message-ID: Subject: Re: svn commit: r287876 - in projects/iosched/sys/cam: . ata scsi From: Warner Losh To: Bruce Simpson Cc: Warner Losh , src-committers , svn-src-projects@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 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, 17 Sep 2015 14:16:52 -0000 This isn't even in -current yet, but this will work in 10.x. It's dependent, at the moment, on the I/O scheduler work I've done in this project branch. There's nothing intrinsic about that. I'm not sure I understand your comment about Linux or the self-booting stuff. The new firmware for the M500's that has working NCQ trim has existed for less than a week... Warner On Thu, Sep 17, 2015 at 6:45 AM, Bruce Simpson wrote: > Warner, > > Is it going to be possible to MFC the NCQ trim fixes, or is this dependent > on post 10.x work? > > It took a longgggg time for Linux to catch up with Crucial's firmware > patch. [1] > > cheers > Bruce > > [1] Which, by the way, is an excellent example of vendors doing the right > thing for a change, as the patch was delivered as a Linux-based > self-booting image (ISO/USB/etc). > > On 16/09/15 23:15, Warner Losh wrote: > >> Log: >> Commit the post-BSDcan level (and a little more) iosched work. >> > ... > > + /* >> + * Crucial Mxxx SSDs >> + * NCQ Trim doesn't work, but only on MU01 firmware >> + */ >> + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Crucial CT*M550*", >> "MU01" }, >> + /*quirks*/ADA_Q_NCQ_TRIM_BROKEN >> + }, >> > > > From owner-svn-src-projects@freebsd.org Thu Sep 17 15:07:40 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8E42E9CFD98 for ; Thu, 17 Sep 2015 15:07:40 +0000 (UTC) (envelope-from bms@fastmail.net) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (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 5CE7A12CE for ; Thu, 17 Sep 2015 15:07:39 +0000 (UTC) (envelope-from bms@fastmail.net) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 0AFAC2020C for ; Thu, 17 Sep 2015 11:07:39 -0400 (EDT) Received: from frontend2 ([10.202.2.161]) by compute1.internal (MEProxy); Thu, 17 Sep 2015 11:07:39 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=fastmail.net; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-sasl-enc :x-sasl-enc; s=mesmtp; bh=HAjna0iziHOvR/7HsWD3T1It1U0=; b=KDnzAg cKhwXolbKnVzlMMnwHP3OAzUTVbPsyAARBUzjXhFopQ2Ah5S1nJ6rzHkg9GoV7gO sFETKqzboSF7bsOzAqCGG+2Z+fnZ4FrOjcoLVtKteOrUuktcqWaZUbh8hBeex8Xa R2WdQAxA32NiWIC1UKGCEYroSMEOjqJ/Weiqo= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=HAjna0iziHOvR/7 HsWD3T1It1U0=; b=VXgW2U267s9E3HqFfkZd10vlxJVtXp/5rRgTXOK7rCo5hRu JUo5pTBNxuEFyN5gB6vZrfnc7GjBJOsHt8OoForX2/X3keA2KvnU7PJTNVY+UeOC mcEg4Cm54tl/kn+yCQI0tyU/tGDrKUxfDsOGXQeyh8tvJ8WrRDB5rEbL1fOo= X-Sasl-enc: eTRLA9JGoNZ7RSOm/KExPKs5AF8hQeLm2lGSpNZ0+Xrb 1442502458 Received: from pion.local (host81-139-223-71.in-addr.btopenworld.com [81.139.223.71]) by mail.messagingengine.com (Postfix) with ESMTPA id 43D0A6800C3; Thu, 17 Sep 2015 11:07:38 -0400 (EDT) Subject: Re: svn commit: r287876 - in projects/iosched/sys/cam: . ata scsi To: Warner Losh References: <201509162215.t8GMFp1b023705@repo.freebsd.org> <55FAB5DD.20609@fastmail.net> Cc: Warner Losh , src-committers , svn-src-projects@freebsd.org From: Bruce Simpson Message-ID: <55FAD739.1050800@fastmail.net> Date: Thu, 17 Sep 2015 16:07:37 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 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, 17 Sep 2015 15:07:40 -0000 On 17/09/15 15:16, Warner Losh wrote: > This isn't even in -current yet, but this will work in 10.x. It's > dependent, at the moment, > on the I/O scheduler work I've done in this project branch. There's > nothing intrinsic about > that. That is good news; the bug specifically affected NCQ'd TRIM commands. Performing TRIM manually is an admin headache and gets old, fast. > I'm not sure I understand your comment about Linux or the self-booting > stuff. The new > firmware for the M500's that has working NCQ trim has existed for less > than a week... Crucial have had updates to fix the NCQ TRIM bug on other drives (e.g. MX100) for several months now. My point is that Crucial have done the right thing in how they delivered the patch for these drives; it "just works" out of the box, but might need to be adapted to e.g. PXE based provisioning environments for automated rollout. However, because it's a plain Linux based image, such mass updates are actually possible. From experience, updating firmware on e.g. HP gear is anything but straightforward. For example, I have had HP ROMPaqs fail to generate bootable USB media even when run natively under Windows. There are loose guides "out there" about how to extract ROMPaqs and set up the correct FreeDOS bootable USB media under Linux, but these need to be adapted for each ROMPaq. That's really for HP to fix, but they could do worse than follow Crucial's lead here. Bruce From owner-svn-src-projects@freebsd.org Thu Sep 17 16:30:14 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5FE59CEA59 for ; Thu, 17 Sep 2015 16:30:13 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-f43.google.com (mail-qg0-f43.google.com [209.85.192.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A63191337 for ; Thu, 17 Sep 2015 16:30:13 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by qgx61 with SMTP id 61so17142686qgx.3 for ; Thu, 17 Sep 2015 09:30:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=CCfG2rzxTgvJ8mKUod0Kh84yBJWH4bXz9dNvkgj3NBg=; b=lhLqbRVwFBXHT7kIxt+79uISWlkF8/EL6IafFy+5J/G5yNGGraMRWexnhc7d/ZojsY 0eqb4I01wNzUM5yluEzU/grnyww6iWMbDDKiE5zilpyBIsO2FRjsc3ly+6h5slMRJKmv DazAjcNgpUvXCX1Ub3JmmaWBtwSimLwrk6WdsPsV71+w5kjJo/tbln93DcN7Emq3m4ik x/2o4q1pefohzGlOrqBLao8py8xeYnA0c6jQZz7wl/jxIDmMDpWvLoKvyhgcXVtX8Rzk UZFrJ55/cJEV30eEezwxT0li9vF7if+WgsgwUzoH1B1O3cfggcqXhksMOhA2x+zUzAOo mOww== X-Gm-Message-State: ALoCoQkwfEo6JW+SMEXXxTnTy9uP+obl07q1/LfGql9xVN6QhlEcKjKBhlFXSA68smylKRQL6ayA MIME-Version: 1.0 X-Received: by 10.140.164.7 with SMTP id k7mr93427qhk.40.1442507412310; Thu, 17 Sep 2015 09:30:12 -0700 (PDT) Sender: wlosh@bsdimp.com Received: by 10.140.80.167 with HTTP; Thu, 17 Sep 2015 09:30:12 -0700 (PDT) X-Originating-IP: [50.253.99.174] In-Reply-To: <55FAD739.1050800@fastmail.net> References: <201509162215.t8GMFp1b023705@repo.freebsd.org> <55FAB5DD.20609@fastmail.net> <55FAD739.1050800@fastmail.net> Date: Thu, 17 Sep 2015 10:30:12 -0600 X-Google-Sender-Auth: 7Ay_6nCCOoLv8FbPnJtztswSS_o Message-ID: Subject: Re: svn commit: r287876 - in projects/iosched/sys/cam: . ata scsi From: Warner Losh To: Bruce Simpson Cc: Warner Losh , src-committers , svn-src-projects@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 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, 17 Sep 2015 16:30:14 -0000 On Thu, Sep 17, 2015 at 9:07 AM, Bruce Simpson wrote: > On 17/09/15 15:16, Warner Losh wrote: > >> This isn't even in -current yet, but this will work in 10.x. It's >> dependent, at the moment, >> on the I/O scheduler work I've done in this project branch. There's >> nothing intrinsic about >> that. >> > > That is good news; the bug specifically affected NCQ'd TRIM commands. > Performing TRIM manually is an admin headache and gets old, fast. We don't do NCQ Trims today. When I deployed, I had massive corruption on M500's that I developed for after a few hours to days. We do have non-NCQ Trims and those work just fine on these drives. However, they serialize other reads and writes. I hope to forward port this to -current soon. Warner From owner-svn-src-projects@freebsd.org Thu Sep 17 21:12:47 2015 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EB2049CFFFE for ; Thu, 17 Sep 2015 21:12:47 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.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 C27761AA3; Thu, 17 Sep 2015 21:12:47 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8HLClrW004471; Thu, 17 Sep 2015 21:12:47 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8HLClj8004470; Thu, 17 Sep 2015 21:12:47 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201509172112.t8HLClj8004470@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 17 Sep 2015 21:12:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r287938 - projects/clang370-import/lib/libz 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.20 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, 17 Sep 2015 21:12:48 -0000 Author: dim Date: Thu Sep 17 21:12:47 2015 New Revision: 287938 URL: https://svnweb.freebsd.org/changeset/base/287938 Log: Try to fix up bad mergeinfo for lib/libz. Modified: Directory Properties: projects/clang370-import/lib/libz/ (props changed)