Date: Fri, 12 Jan 2018 18:23:36 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r327886 - in projects/clang600-import: . bin/cat cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env cddl/contrib/opensolaris/lib/libdtrace/common cddl/usr.sbin/dtrace/tests/common/... Message-ID: <201801121823.w0CINabH071890@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Fri Jan 12 18:23:35 2018 New Revision: 327886 URL: https://svnweb.freebsd.org/changeset/base/327886 Log: Merge ^/head r327624 through r327885. Added: projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh - copied unchanged from r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out - copied unchanged from r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out projects/clang600-import/lib/libcasper/services/cap_dns/cap_dns.3 - copied unchanged from r327885, head/lib/libcasper/services/cap_dns/cap_dns.3 projects/clang600-import/sys/arm/arm/gic_acpi.c - copied unchanged from r327885, head/sys/arm/arm/gic_acpi.c projects/clang600-import/sys/arm64/arm64/cpu_errata.c - copied unchanged from r327885, head/sys/arm64/arm64/cpu_errata.c projects/clang600-import/sys/arm64/arm64/gic_v3_acpi.c - copied unchanged from r327885, head/sys/arm64/arm64/gic_v3_acpi.c projects/clang600-import/sys/contrib/zstd/lib/freebsd/ - copied from r327885, head/sys/contrib/zstd/lib/freebsd/ projects/clang600-import/sys/dev/acpica/acpi_bus_if.m - copied unchanged from r327885, head/sys/dev/acpica/acpi_bus_if.m projects/clang600-import/sys/i386/i386/prof_machdep.c - copied unchanged from r327885, head/sys/i386/i386/prof_machdep.c projects/clang600-import/sys/kern/subr_compressor.c - copied unchanged from r327885, head/sys/kern/subr_compressor.c projects/clang600-import/sys/powerpc/powernv/ - copied from r327885, head/sys/powerpc/powernv/ projects/clang600-import/sys/sys/compressor.h - copied unchanged from r327885, head/sys/sys/compressor.h projects/clang600-import/tests/sys/geom/class/eli/attach_test.sh - copied unchanged from r327885, head/tests/sys/geom/class/eli/attach_test.sh projects/clang600-import/tests/sys/geom/class/eli/configure_test.sh - copied unchanged from r327885, head/tests/sys/geom/class/eli/configure_test.sh projects/clang600-import/tests/sys/geom/class/eli/detach_test.sh - copied unchanged from r327885, head/tests/sys/geom/class/eli/detach_test.sh projects/clang600-import/tests/sys/geom/class/eli/integrity_test.sh - copied unchanged from r327885, head/tests/sys/geom/class/eli/integrity_test.sh projects/clang600-import/tests/sys/geom/class/mirror/sync_error.sh - copied unchanged from r327885, head/tests/sys/geom/class/mirror/sync_error.sh projects/clang600-import/usr.bin/awk/tests/ - copied from r327885, head/usr.bin/awk/tests/ projects/clang600-import/usr.bin/clang/lld/ld.lld.1 - copied unchanged from r327885, head/usr.bin/clang/lld/ld.lld.1 projects/clang600-import/usr.bin/vmstat/tests/ - copied from r327885, head/usr.bin/vmstat/tests/ Deleted: projects/clang600-import/sys/i386/isa/ projects/clang600-import/sys/kern/kern_gzio.c projects/clang600-import/sys/sys/digiio.h projects/clang600-import/sys/sys/gzio.h projects/clang600-import/tests/sys/geom/class/eli/attach_d_test.sh projects/clang600-import/tests/sys/geom/class/eli/configure_b_B_test.sh projects/clang600-import/tests/sys/geom/class/eli/detach_l_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_B_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_J_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_a_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_alias_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_i_P_test.sh projects/clang600-import/tests/sys/geom/class/eli/integrity_copy_test.sh projects/clang600-import/tests/sys/geom/class/eli/integrity_data_test.sh projects/clang600-import/tests/sys/geom/class/eli/integrity_hmac_test.sh projects/clang600-import/tests/sys/geom/class/eli/nokey_test.sh projects/clang600-import/tests/sys/geom/class/eli/onetime_a_test.sh projects/clang600-import/tests/sys/geom/class/eli/onetime_d_test.sh projects/clang600-import/tests/sys/geom/class/eli/readonly_test.sh projects/clang600-import/usr.sbin/digictl/ Modified: projects/clang600-import/Makefile.inc1 projects/clang600-import/Makefile.libcompat projects/clang600-import/ObsoleteFiles.inc projects/clang600-import/UPDATING projects/clang600-import/bin/cat/cat.c projects/clang600-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_options.c projects/clang600-import/cddl/usr.sbin/dtrace/tests/common/env/Makefile projects/clang600-import/contrib/subversion/subversion/svn/util.c projects/clang600-import/etc/mtree/BSD.tests.dist projects/clang600-import/etc/rc.d/ntpd projects/clang600-import/include/stdlib.h projects/clang600-import/lib/libcasper/services/cap_dns/Makefile projects/clang600-import/sbin/camcontrol/camcontrol.c projects/clang600-import/sbin/dhclient/parse.c projects/clang600-import/sbin/ldconfig/ldconfig.8 projects/clang600-import/share/man/man4/aw_sid.4 projects/clang600-import/share/man/man4/smp.4 projects/clang600-import/share/man/man5/core.5 projects/clang600-import/share/man/man5/src.conf.5 projects/clang600-import/share/man/man9/Makefile projects/clang600-import/share/man/man9/malloc.9 projects/clang600-import/share/mk/src.opts.mk projects/clang600-import/share/mk/src.sys.obj.mk projects/clang600-import/stand/common/reloc_elf.c projects/clang600-import/stand/efi/boot1/Makefile projects/clang600-import/stand/efi/boot1/boot1.c projects/clang600-import/stand/efi/include/efi.h projects/clang600-import/stand/libsa/net.h projects/clang600-import/stand/libsa/stand.h projects/clang600-import/stand/mips/beri/boot2/boot2.c projects/clang600-import/stand/mips/beri/common/sdcard.c projects/clang600-import/stand/mips/beri/loader/exec.c projects/clang600-import/sys/amd64/amd64/cpu_switch.S projects/clang600-import/sys/amd64/amd64/exception.S projects/clang600-import/sys/amd64/amd64/genassym.c projects/clang600-import/sys/amd64/amd64/machdep.c projects/clang600-import/sys/amd64/amd64/mp_machdep.c projects/clang600-import/sys/amd64/amd64/support.S projects/clang600-import/sys/amd64/include/md_var.h projects/clang600-import/sys/amd64/vmm/amd/svm.c projects/clang600-import/sys/amd64/vmm/amd/svm_softc.h projects/clang600-import/sys/arm/allwinner/aw_sid.c projects/clang600-import/sys/arm/allwinner/if_awg.c projects/clang600-import/sys/arm/arm/generic_timer.c projects/clang600-import/sys/arm/arm/gic.c projects/clang600-import/sys/arm64/arm64/gic_v3.c projects/clang600-import/sys/arm64/arm64/gic_v3_var.h projects/clang600-import/sys/arm64/arm64/gicv3_its.c projects/clang600-import/sys/arm64/arm64/locore.S projects/clang600-import/sys/arm64/arm64/machdep.c projects/clang600-import/sys/arm64/arm64/mp_machdep.c projects/clang600-import/sys/arm64/arm64/nexus.c projects/clang600-import/sys/arm64/arm64/pmap.c projects/clang600-import/sys/arm64/arm64/swtch.S projects/clang600-import/sys/arm64/arm64/trap.c projects/clang600-import/sys/arm64/include/cpu.h projects/clang600-import/sys/arm64/include/pcpu.h projects/clang600-import/sys/arm64/include/pmap.h projects/clang600-import/sys/cam/ata/ata_da.c projects/clang600-import/sys/cam/cam_periph.c projects/clang600-import/sys/cam/cam_periph.h projects/clang600-import/sys/cam/cam_xpt.c projects/clang600-import/sys/cam/nvme/nvme_da.c projects/clang600-import/sys/cam/nvme/nvme_xpt.c projects/clang600-import/sys/cam/scsi/scsi_da.c projects/clang600-import/sys/cam/scsi/scsi_low.c projects/clang600-import/sys/cam/scsi/scsi_low.h projects/clang600-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/clang600-import/sys/compat/cloudabi32/cloudabi32_sock.c projects/clang600-import/sys/compat/cloudabi64/cloudabi64_sock.c projects/clang600-import/sys/compat/linuxkpi/common/include/linux/slab.h projects/clang600-import/sys/conf/files projects/clang600-import/sys/conf/files.arm64 projects/clang600-import/sys/conf/files.i386 projects/clang600-import/sys/conf/files.mips projects/clang600-import/sys/conf/files.powerpc projects/clang600-import/sys/conf/files.riscv projects/clang600-import/sys/conf/kern.pre.mk projects/clang600-import/sys/conf/options.powerpc projects/clang600-import/sys/contrib/ipfilter/netinet/ip_state.c projects/clang600-import/sys/contrib/vchiq/interface/compat/vchi_bsd.h projects/clang600-import/sys/crypto/aesni/aesni.c projects/clang600-import/sys/ddb/db_textdump.c projects/clang600-import/sys/dev/acpica/acpi.c projects/clang600-import/sys/dev/acpica/acpi_resource.c projects/clang600-import/sys/dev/acpica/acpivar.h projects/clang600-import/sys/dev/amdsbwd/amdsbwd.c projects/clang600-import/sys/dev/bhnd/bcma/bcma_erom.c projects/clang600-import/sys/dev/bhnd/nvram/bhnd_nvram_private.h projects/clang600-import/sys/dev/bhnd/siba/siba_erom.c projects/clang600-import/sys/dev/bxe/bxe.c projects/clang600-import/sys/dev/bxe/ecore_sp.h projects/clang600-import/sys/dev/cxgbe/t4_sge.c projects/clang600-import/sys/dev/e1000/e1000_82575.h projects/clang600-import/sys/dev/e1000/e1000_ich8lan.c projects/clang600-import/sys/dev/e1000/e1000_regs.h projects/clang600-import/sys/dev/e1000/if_em.c projects/clang600-import/sys/dev/extres/syscon/syscon_generic.c projects/clang600-import/sys/dev/iicbus/ds13rtc.c projects/clang600-import/sys/dev/ixl/if_ixlv.c projects/clang600-import/sys/dev/ixl/ixl_pf_iov.c projects/clang600-import/sys/dev/ixl/ixl_pf_main.c projects/clang600-import/sys/dev/md/md.c projects/clang600-import/sys/dev/mlx4/cq.h projects/clang600-import/sys/dev/mlx4/mlx4_core/mlx4_fw.c projects/clang600-import/sys/dev/mlx4/mlx4_core/mlx4_mcg.c projects/clang600-import/sys/dev/mlx4/mlx4_en/mlx4_en_tx.c projects/clang600-import/sys/dev/mlx4/mlx4_ib/mlx4_ib.h projects/clang600-import/sys/dev/mlx4/mlx4_ib/mlx4_ib_qp.c projects/clang600-import/sys/dev/mlx4/qp.h projects/clang600-import/sys/dev/mlx5/device.h projects/clang600-import/sys/dev/mlx5/qp.h projects/clang600-import/sys/dev/psci/psci.c projects/clang600-import/sys/dev/psci/psci.h projects/clang600-import/sys/dev/usb/usbdevs projects/clang600-import/sys/fs/nullfs/null_vfsops.c projects/clang600-import/sys/geom/mirror/g_mirror.c projects/clang600-import/sys/geom/mirror/g_mirror.h projects/clang600-import/sys/geom/mirror/g_mirror_ctl.c projects/clang600-import/sys/i386/bios/apm.c projects/clang600-import/sys/i386/conf/GENERIC projects/clang600-import/sys/i386/conf/NOTES projects/clang600-import/sys/i386/i386/support.s projects/clang600-import/sys/kern/imgact_elf.c projects/clang600-import/sys/kern/kern_malloc.c projects/clang600-import/sys/kern/kern_mutex.c projects/clang600-import/sys/kern/kern_shutdown.c projects/clang600-import/sys/kern/kern_sig.c projects/clang600-import/sys/kern/subr_bus.c projects/clang600-import/sys/kern/sys_socket.c projects/clang600-import/sys/kern/vfs_aio.c projects/clang600-import/sys/kern/vfs_mount.c projects/clang600-import/sys/kern/vfs_subr.c projects/clang600-import/sys/mips/mips/exception.S projects/clang600-import/sys/mips/mips/locore.S projects/clang600-import/sys/mips/mips/swtch.S projects/clang600-import/sys/mips/mips/trap.c projects/clang600-import/sys/modules/bhnd/Makefile projects/clang600-import/sys/modules/dtrace/Makefile projects/clang600-import/sys/modules/gpio/gpiobus/Makefile projects/clang600-import/sys/modules/sdhci_acpi/Makefile projects/clang600-import/sys/modules/sdhci_pci/Makefile projects/clang600-import/sys/modules/sgx/Makefile projects/clang600-import/sys/netpfil/ipfw/dn_heap.c projects/clang600-import/sys/netpfil/ipfw/dn_sched_fq_codel.c projects/clang600-import/sys/netpfil/ipfw/dn_sched_fq_pie.c projects/clang600-import/sys/netpfil/pf/pf_ioctl.c projects/clang600-import/sys/opencrypto/crypto.c projects/clang600-import/sys/opencrypto/cryptodev.c projects/clang600-import/sys/opencrypto/cryptodev.h projects/clang600-import/sys/powerpc/conf/GENERIC64 projects/clang600-import/sys/powerpc/include/spr.h projects/clang600-import/sys/powerpc/powermac/uninorthpci.c projects/clang600-import/sys/powerpc/powermac/uninorthvar.h projects/clang600-import/sys/sys/conf.h projects/clang600-import/sys/sys/imgact.h projects/clang600-import/sys/sys/malloc.h projects/clang600-import/sys/sys/param.h projects/clang600-import/sys/ufs/ffs/ffs_softdep.c projects/clang600-import/sys/ufs/ffs/ffs_vfsops.c projects/clang600-import/sys/ufs/ufs/ufs_dirhash.c projects/clang600-import/sys/vm/vm_glue.c projects/clang600-import/sys/vm/vm_unix.c projects/clang600-import/tests/sys/geom/class/eli/Makefile projects/clang600-import/tests/sys/geom/class/eli/conf.sh projects/clang600-import/tests/sys/geom/class/eli/delkey_test.sh projects/clang600-import/tests/sys/geom/class/eli/init_test.sh projects/clang600-import/tests/sys/geom/class/eli/kill_test.sh projects/clang600-import/tests/sys/geom/class/eli/onetime_test.sh projects/clang600-import/tests/sys/geom/class/eli/resize_test.sh projects/clang600-import/tests/sys/geom/class/eli/setkey_test.sh projects/clang600-import/tests/sys/geom/class/mirror/Makefile projects/clang600-import/tests/sys/netpfil/pf/pft_ping.py projects/clang600-import/tools/tools/crypto/cryptotest.c projects/clang600-import/usr.bin/awk/Makefile projects/clang600-import/usr.bin/clang/lld/Makefile projects/clang600-import/usr.bin/patch/inp.c projects/clang600-import/usr.bin/vmstat/Makefile projects/clang600-import/usr.sbin/Makefile projects/clang600-import/usr.sbin/efibootmgr/efibootmgr.c Directory Properties: projects/clang600-import/ (props changed) projects/clang600-import/cddl/ (props changed) projects/clang600-import/cddl/contrib/opensolaris/ (props changed) projects/clang600-import/contrib/subversion/ (props changed) projects/clang600-import/sys/cddl/contrib/opensolaris/ (props changed) projects/clang600-import/sys/contrib/ipfilter/ (props changed) projects/clang600-import/sys/contrib/zstd/ (props changed) projects/clang600-import/tests/sys/geom/class/mirror/10_test.sh (props changed) projects/clang600-import/tests/sys/geom/class/mirror/11_test.sh (props changed) projects/clang600-import/tests/sys/geom/class/mirror/12_test.sh (props changed) projects/clang600-import/tests/sys/geom/class/mirror/13_test.sh (props changed) Modified: projects/clang600-import/Makefile.inc1 ============================================================================== --- projects/clang600-import/Makefile.inc1 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/Makefile.inc1 Fri Jan 12 18:23:35 2018 (r327886) @@ -144,7 +144,7 @@ TEST_SYSTEM_COMPILER_VARS= \ WANT_COMPILER_FREEBSD_VERSION WANT_COMPILER_FREEBSD_VERSION_FILE \ CC COMPILER_TYPE COMPILER_FEATURES COMPILER_VERSION \ COMPILER_FREEBSD_VERSION \ - LINKER_TYPE LINKER_VERSION + LINKER_TYPE LINKER_FEATURES LINKER_VERSION test-system-compiler: .PHONY .for v in ${TEST_SYSTEM_COMPILER_VARS} ${_+_}@printf "%-35s= %s\n" "${v}" "${${v}}" @@ -178,6 +178,7 @@ _COMPILER_METADATA_VARS= COMPILER_VERSION \ COMPILER_FEATURES \ COMPILER_FREEBSD_VERSION \ LINKER_VERSION \ + LINKER_FEATURES \ LINKER_TYPE compiler-metadata.mk: .PHONY .META @: > ${.TARGET} Modified: projects/clang600-import/Makefile.libcompat ============================================================================== --- projects/clang600-import/Makefile.libcompat Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/Makefile.libcompat Fri Jan 12 18:23:35 2018 (r327886) @@ -35,10 +35,19 @@ LIB32WMAKEFLAGS= \ OBJCOPY="${XOBJCOPY}" .elif ${TARGET_ARCH:Mmips64*} != "" +.if ${WANT_COMPILER_TYPE} == clang || \ + (defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == clang) +.if ${TARGET_ARCH:Mmips64el*} != "" +LIB32CPUFLAGS= -target mipsel-unknown-freebsd12.0 +.else +LIB32CPUFLAGS= -target mips-unknown-freebsd12.0 +.endif +.else .if empty(TARGET_CPUTYPE) LIB32CPUFLAGS= -march=mips3 .else LIB32CPUFLAGS= -march=${TARGET_CPUTYPE} +.endif .endif LIB32CPUFLAGS+= -mabi=32 LIB32WMAKEENV= MACHINE=mips MACHINE_ARCH=mips Modified: projects/clang600-import/ObsoleteFiles.inc ============================================================================== --- projects/clang600-import/ObsoleteFiles.inc Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/ObsoleteFiles.inc Fri Jan 12 18:23:35 2018 (r327886) @@ -155,6 +155,27 @@ OLD_FILES+=usr/lib/clang/5.0.1/lib/freebsd/libclang_rt OLD_DIRS+=usr/lib/clang/5.0.1/lib/freebsd OLD_DIRS+=usr/lib/clang/5.0.1/lib OLD_DIRS+=usr/lib/clang/5.0.1 +# 20180109: Remove vestiges of digi(4) driver +OLD_FILES+=usr/include/sys/digiio.h +OLD_FILES+=usr/sbin/digictl +OLD_FILES+=usr/share/man/man8/digictl.8.gz +# 20180107: Convert remaining geli(8) tests to ATF +OLD_FILES+=tests/sys/geom/class/eli/nokey_test.sh +OLD_FILES+=tests/sys/geom/class/eli/readonly_test.sh +# 20180106: Convert most geli(8) tests to ATF +OLD_FILES+=tests/sys/geom/class/eli/attach_d_test.sh +OLD_FILES+=tests/sys/geom/class/eli/configure_b_B_test.sh +OLD_FILES+=tests/sys/geom/class/eli/detach_l_test.sh +OLD_FILES+=tests/sys/geom/class/eli/init_B_test.sh +OLD_FILES+=tests/sys/geom/class/eli/init_J_test.sh +OLD_FILES+=tests/sys/geom/class/eli/init_a_test.sh +OLD_FILES+=tests/sys/geom/class/eli/init_alias_test.sh +OLD_FILES+=tests/sys/geom/class/eli/init_i_P_test.sh +OLD_FILES+=tests/sys/geom/class/eli/integrity_copy_test.sh +OLD_FILES+=tests/sys/geom/class/eli/integrity_data_test.sh +OLD_FILES+=tests/sys/geom/class/eli/integrity_hmac_test.sh +OLD_FILES+=tests/sys/geom/class/eli/onetime_a_test.sh +OLD_FILES+=tests/sys/geom/class/eli/onetime_d_test.sh # 20171230: Remove /etc/skel from mtree OLD_DIRS+=/etc/skel # 20171208: Remove basename_r(3) Modified: projects/clang600-import/UPDATING ============================================================================== --- projects/clang600-import/UPDATING Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/UPDATING Fri Jan 12 18:23:35 2018 (r327886) @@ -51,6 +51,20 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: ****************************** SPECIAL WARNING: ****************************** +20180110: + LLVM's lld linker is now used as the FreeBSD/amd64 bootstrap linker. + This means it is used to link the kernel and userland libraries and + executables, but is not yet installed as /usr/bin/ld by default. + + To revert to ld.bfd as the bootstrap linker, in /etc/src.conf set + WITHOUT_LLD_BOOTSTRAP=yes + +20180110: + On i386, pmtimer has been removed. Its functionality has been folded + into apm. It was a no-op on ACPI in current for a while now (but was still + needed on i386 in FreeBSD 11 and earlier). Users may need to remove it + from kernel config files. + 20180104: The use of RSS hash from the network card aka flowid has been disabled by default for lagg(4) as it's currently incompatible with @@ -195,7 +209,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: will create the recovery information. If you have a filesystem created prior to this change and wish to have a recovery block created for your filesystem, you can do so by running fsck in - forground mode (i.e., do not use the -p or -y options). As it + foreground mode (i.e., do not use the -p or -y options). As it starts, fsck will ask ``SAVE DATA TO FIND ALTERNATE SUPERBLOCKS'' to which you should answer yes. @@ -1855,7 +1869,7 @@ COMMON ITEMS: do an upgrade to the new branch. This is the best-tested upgrade path, and has the highest probability of being successful. Please try this approach if you encounter problems with a major version upgrade. Since - the stable 4.x branch point, one has generally been able to upgade from + the stable 4.x branch point, one has generally been able to upgrade from anywhere in the most recent stable branch to head / current (or even the last couple of stable branches). See the top of this file when there's an exception. @@ -1993,7 +2007,7 @@ COMMON ITEMS: for potential gotchas. The -U option is also useful to consider. See mergemaster(8) for more information. - [5] Usually this step is a noop. However, from time to time + [5] Usually this step is a no-op. However, from time to time you may need to do this if you get unknown user in the following step. It never hurts to do it all the time. You may need to install a new mergemaster (cd src/usr.sbin/mergemaster && make Modified: projects/clang600-import/bin/cat/cat.c ============================================================================== --- projects/clang600-import/bin/cat/cat.c Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/bin/cat/cat.c Fri Jan 12 18:23:35 2018 (r327886) @@ -61,7 +61,6 @@ __FBSDID("$FreeBSD$"); #include <errno.h> #include <fcntl.h> #include <locale.h> -#include <stddef.h> #include <stdio.h> #include <stdlib.h> #include <string.h> Copied: projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh (from r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh Fri Jan 12 18:23:35 2018 (r327886, copy of r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh) @@ -0,0 +1,34 @@ +# +# CDDL HEADER START +# +# This file and its contents are supplied under the terms of the +# Common Development and Distribution License ("CDDL"), version 1.0. +# You may only use this file in accordance with the terms of version +# 1.0 of the CDDL. +# +# A full copy of the text of the CDDL should have accompanied this +# source. A copy of the CDDL is also available via the Internet at +# http://www.illumos.org/license/CDDL. +# +# CDDL HEADER END +# + +# +# Copyright (c) 2012 by Delphix. All rights reserved. +# + +# +# Reset an environment variable we already know to be set. +# Regression test for FreeBSD r327794. +# + +if [ $# != 1 ]; then + echo expected one argument: '<'dtrace-path'>' + exit 2 +fi + +dtrace=$1 + +$dtrace -q -Z -n doogle -xsetenv=PATH=/foo -c '/usr/bin/printenv PATH' + +exit $? Copied: projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out (from r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang600-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out Fri Jan 12 18:23:35 2018 (r327886, copy of r327885, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/env/tst.setenv3.ksh.out) @@ -0,0 +1,2 @@ +/foo + Modified: projects/clang600-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_options.c ============================================================================== --- projects/clang600-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_options.c Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_options.c Fri Jan 12 18:23:35 2018 (r327886) @@ -415,7 +415,7 @@ dt_opt_setenv(dtrace_hdl_t *dtp, const char *arg, uint { char **p; char *var; - int i; + int nvars; /* * We can't effectively set environment variables from #pragma lines @@ -430,7 +430,7 @@ dt_opt_setenv(dtrace_hdl_t *dtp, const char *arg, uint if (!option && strchr(arg, '=') != NULL) return (dt_set_errno(dtp, EDT_BADOPTVAL)); - for (i = 1, p = dtp->dt_proc_env; *p != NULL; i++, p++) + for (nvars = 0, p = dtp->dt_proc_env; *p != NULL; nvars++, p++) continue; for (p = dtp->dt_proc_env; *p != NULL; p++) { @@ -439,9 +439,9 @@ dt_opt_setenv(dtrace_hdl_t *dtp, const char *arg, uint var = *p + strlen(*p); if (strncmp(*p, arg, var - *p) == 0) { dt_free(dtp, *p); - *p = dtp->dt_proc_env[i - 1]; - dtp->dt_proc_env[i - 1] = NULL; - i--; + *p = dtp->dt_proc_env[nvars - 1]; + dtp->dt_proc_env[nvars - 1] = NULL; + nvars--; } } @@ -449,17 +449,18 @@ dt_opt_setenv(dtrace_hdl_t *dtp, const char *arg, uint if ((var = strdup(arg)) == NULL) return (dt_set_errno(dtp, EDT_NOMEM)); - if ((p = dt_alloc(dtp, sizeof (char *) * (i + 1))) == NULL) { + nvars++; + if ((p = dt_alloc(dtp, sizeof(char *) * (nvars + 1))) == NULL) { dt_free(dtp, var); return (dt_set_errno(dtp, EDT_NOMEM)); } - bcopy(dtp->dt_proc_env, p, sizeof (char *) * i); + bcopy(dtp->dt_proc_env, p, sizeof(char *) * nvars); dt_free(dtp, dtp->dt_proc_env); dtp->dt_proc_env = p; - dtp->dt_proc_env[i - 1] = var; - dtp->dt_proc_env[i] = NULL; + dtp->dt_proc_env[nvars - 1] = var; + dtp->dt_proc_env[nvars] = NULL; } return (0); Modified: projects/clang600-import/cddl/usr.sbin/dtrace/tests/common/env/Makefile ============================================================================== --- projects/clang600-import/cddl/usr.sbin/dtrace/tests/common/env/Makefile Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/cddl/usr.sbin/dtrace/tests/common/env/Makefile Fri Jan 12 18:23:35 2018 (r327886) @@ -15,6 +15,8 @@ ${PACKAGE}FILES= \ tst.setenv1.ksh.out \ tst.setenv2.ksh \ tst.setenv2.ksh.out \ + tst.setenv3.ksh \ + tst.setenv3.ksh.out \ tst.unsetenv1.ksh \ tst.unsetenv1.ksh.out \ tst.unsetenv2.ksh \ Modified: projects/clang600-import/contrib/subversion/subversion/svn/util.c ============================================================================== --- projects/clang600-import/contrib/subversion/subversion/svn/util.c Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/contrib/subversion/subversion/svn/util.c Fri Jan 12 18:23:35 2018 (r327886) @@ -352,6 +352,7 @@ static const char *prefixes[] = { "Relnotes:", "Security:", "Sponsored by:", + "Pull Request:", "Differential Revision:", }; @@ -443,6 +444,7 @@ svn_cl__get_log_message(const char **log_msg, if (sponsored_by != NULL) svn_stringbuf_appendcstr(default_msg, sponsored_by); svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Pull Request:\t" APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, "Differential Revision:\t" APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, EDITOR_EOF_PREFIX); svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); @@ -458,6 +460,7 @@ svn_cl__get_log_message(const char **log_msg, svn_stringbuf_appendcstr(default_msg, "> Relnotes: Set to 'yes' for mention in release notes." APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, "> Security: Vulnerability reference (one per line) or description." APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, "> Sponsored by: If the change was sponsored by an organization." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Pull Request: https://github.com/freebsd/freebsd/pull/### (*full* GitHub URL needed)." APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, "> Differential Revision: https://reviews.freebsd.org/D### (*full* phabric URL needed)." APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, "> Empty fields above will be automatically removed." APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); Modified: projects/clang600-import/etc/mtree/BSD.tests.dist ============================================================================== --- projects/clang600-import/etc/mtree/BSD.tests.dist Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/etc/mtree/BSD.tests.dist Fri Jan 12 18:23:35 2018 (r327886) @@ -536,6 +536,8 @@ usr.bin apply .. + awk + .. basename .. bmake @@ -733,6 +735,8 @@ uuencode .. uniq + .. + vmstat .. xargs .. Modified: projects/clang600-import/etc/rc.d/ntpd ============================================================================== --- projects/clang600-import/etc/rc.d/ntpd Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/etc/rc.d/ntpd Fri Jan 12 18:23:35 2018 (r327886) @@ -144,9 +144,9 @@ ntpd_fetch_leapfile() { done ntp_ver_no_tmp=$(get_ntp_leapfile_ver $ntp_tmp_leapfile) ntp_expiry_tmp=$(get_ntp_leapfile_expiry $ntp_tmp_leapfile) - if [ "$ntp_ver_no_tmp" -gt "$ntp_ver_no_db" -o \ - "$ntp_ver_no_tmp" -eq "$ntp_ver_no_db" -a \ - "$ntp_expiry_tmp" -gt "$ntp_expiry_db" ]; then + if [ "$ntp_expiry_tmp" -gt "$ntp_expiry_db" -o \ + "$ntp_expiry_tmp" -eq "$ntp_expiry_db" -a \ + "$ntp_ver_no_tmp" -gt "$ntp_ver_no_db" ]; then $verbose using $url as $ntp_db_leapfile mv $ntp_tmp_leapfile $ntp_db_leapfile else Modified: projects/clang600-import/include/stdlib.h ============================================================================== --- projects/clang600-import/include/stdlib.h Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/include/stdlib.h Fri Jan 12 18:23:35 2018 (r327886) @@ -304,7 +304,7 @@ int radixsort(const unsigned char **, int, const unsi unsigned); void *reallocarray(void *, size_t, size_t) __result_use_check __alloc_size(2) __alloc_size(3); -void *reallocf(void *, size_t) __alloc_size(2); +void *reallocf(void *, size_t) __result_use_check __alloc_size(2); int rpmatch(const char *); void setprogname(const char *); int sradixsort(const unsigned char **, int, const unsigned char *, Modified: projects/clang600-import/lib/libcasper/services/cap_dns/Makefile ============================================================================== --- projects/clang600-import/lib/libcasper/services/cap_dns/Makefile Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/lib/libcasper/services/cap_dns/Makefile Fri Jan 12 18:23:35 2018 (r327886) @@ -24,4 +24,14 @@ CFLAGS+=-I${.CURDIR} HAS_TESTS= SUBDIR.${MK_TESTS}+= tests +MAN+= cap_dns.3 + +MLINKS+=cap_dns.3 libcap_dns.3 +MLINKS+=cap_dns.3 cap_gethostbyname.3 +MLINKS+=cap_dns.3 cap_gethostbyname2.3 +MLINKS+=cap_dns.3 cap_gethostbyaddr.3 +MLINKS+=cap_dns.3 cap_getnameinfo.3 +MLINKS+=cap_dns.3 cap_dns_type_limit.3 +MLINKS+=cap_dns.3 cap_dns_family_limit.3 + .include <bsd.lib.mk> Copied: projects/clang600-import/lib/libcasper/services/cap_dns/cap_dns.3 (from r327885, head/lib/libcasper/services/cap_dns/cap_dns.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang600-import/lib/libcasper/services/cap_dns/cap_dns.3 Fri Jan 12 18:23:35 2018 (r327886, copy of r327885, head/lib/libcasper/services/cap_dns/cap_dns.3) @@ -0,0 +1,205 @@ +.\" Copyright (c) 2018 Mariusz Zaborski <oshogbo@FreeBSD.org> +.\" 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 AUTHORS 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 AUTHORS 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$ +.\" +.Dd January 10, 2018 +.Dt CAP_DNS 3 +.Os +.Sh NAME +.Nm cap_gethostbyname , +.Nm cap_gethostbyname2 , +.Nm cap_gethostbyaddr , +.Nm cap_getnameinfo , +.Nm cap_dns_type_limit , +.Nm cap_dns_family_limit +.Nd "library for getting network host entry in capability mode" +.Sh LIBRARY +.Lb libcap_dns +.Sh SYNOPSIS +.In sys/nv.h +.In libcasper.h +.In casper/cap_dns.h +.Ft "struct hostent *" +.Fn cap_gethostbyname "const cap_channel_t *chan" "const char *name" +.Ft "struct hostent *" +.Fn cap_gethostbyname2 "const cap_channel_t *chan" "const char *name" "int af" +.Ft "struct hostent *" +.Fn cap_gethostbyaddr "const cap_channel_t *chan" "const void *addr" "socklen_t len" "int af" +.Ft "int" +.Fn cap_getnameinfo "const cap_channel_t *chan" "const void *name" "int namelen" +.Ft "int" +.Fn cap_dns_type_limit "cap_channel_t *chan" "const char * const *types" "size_t ntypes" +.Ft "int" +.Fn cap_dns_family_limit "const cap_channel_t *chan" "const int *families" "size_t nfamilies" +.Sh DESCRIPTION +The functions +.Fn cap_gethostbyname , +.Fn cap_gethostbyname2 , +.Fn cep_gethostbyaddr +and +.Fn cap_getnameinfo +are respectively equivalent to +.Xr gethostbyname 2 , +.Xr gethostbyname2 2 , +.Xr gethostbyaddr 2 +and +.Xr getnameinfo 2 +except that the connection to the +.Nm system.dns +service needs to be provided. +.Pp +The +.Fn cap_dns_type_limit +function limits the functions allowed in the service. +The +.Fa types +variable can be set to +.Dv ADDR +or +.Dv NAME . +See the +.Sx LIMITS +section for more details. +The +.Fa ntpyes +variable contains the number of +.Fa types +provided. +.Pp +The +.Fn cap_dns_family_limit +functions allows to limit address families. +For details see +.Sx LIMITS . +The +.Fa nfamilies +variable contains the number of +.Fa families +provided. +.Sh LIMITS +The preferred way of setting limits is to use the +.Fn cap_dns_type_limit +and +.Fn cap_dns_family_limit +functions, but the limits of service can be set also using +.Xr cap_limit_set 3 . +The nvlist for that function can contain the following values and types: +.Bl -ohang -offset indent +.It type ( NV_TYPE_STRING ) +The +.Va type +can have two values: +.Dv ADDR +or +.Dv NAME . +The +.Dv ADDR +means that functions +.Fn cap_gethostbyname , +.Fn cap_gethostbyname2 +and +.Fn cap_gethostbyaddr +are allowed. +In case when +.Va type +is set to +.Dv NAME +the +.Fn cap_getnameinfo +function is allowed. +.It family ( NV_TYPE_NUMBER ) +The +.Va family +limits service to one of the address families (e.g. +.Dv AF_INET , AF_INET6 , +etc.). +.Sh EXAMPLES +The following example first opens a capability to casper and then uses this +capability to create the +.Nm system.dns +casper service and uses it to resolve an IP address. +.Bd -literal +cap_channel_t *capcas, *capdns; +const char *typelimit = "ADDR"; +int familylimit; +const char *ipstr = "127.0.0.1"; +struct in_addr ip; +struct hostent *hp; + +/* Open capability to Casper. */ +capcas = cap_init(); +if (capcas == NULL) + err(1, "Unable to contact Casper"); + +/* Enter capability mode sandbox. */ +if (cap_enter() < 0 && errno != ENOSYS) + err(1, "Unable to enter capability mode"); + +/* Use Casper capability to create capability to the system.dns service. */ +capdns = cap_service_open(capcas, "system.dns"); +if (capdns == NULL) + err(1, "Unable to open system.dns service"); + +/* Close Casper capability, we don't need it anymore. */ +cap_close(capcas); + +/* Limit system.dns to reverse DNS lookups. */ +if (cap_dns_type_limit(capdns, &typelimit, 1) < 0) + err(1, "Unable to limit access to the system.dns service"); + +/* Limit system.dns to reserve IPv4 addresses */ +familylimit = AF_INET; +if (cap_dns_family_limit(capdns, &familylimit, 1) < 0) + err(1, "Unable to limit access to the system.dns service"); + +/* Convert IP address in C-string to in_addr. */ +if (!inet_aton(ipstr, &ip)) + errx(1, "Unable to parse IP address %s.", ipstr); + +/* Find hostname for the given IP address. */ +hp = cap_gethostbyaddr(capdns, (const void *)&ip, sizeof(ip), AF_INET); +if (hp == NULL) + errx(1, "No name associated with %s.", ipstr); + +printf("Name associated with %s is %s.\\n", ipstr, hp->h_name); +.Ed +.Sh SEE ALSO +.Xr cap_enter 2 , +.Xr err 3 , +.Xr gethostbyaddr 3 , +.Xr gethostbyname 3 , +.Xr gethostbyname2 3 , +.Xr getnameinfo 3, +.Xr nv 3 , +.Xr capsicum 4 +.Sh AUTHORS +The +.Nm cap_dns +service was implemented by +.An Pawel Jakub Dawidek Aq Mt pawel@dawidek.net +under sponsorship from the FreeBSD Foundation. +.Pp +This manual page was written by +.An Mariusz Zaborski Aq Mt oshogbo@FreeBSD.org . Modified: projects/clang600-import/sbin/camcontrol/camcontrol.c ============================================================================== --- projects/clang600-import/sbin/camcontrol/camcontrol.c Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/sbin/camcontrol/camcontrol.c Fri Jan 12 18:23:35 2018 (r327886) @@ -275,6 +275,12 @@ camcontrol_optret getoption(struct camcontrol_opts *ta static int getdevlist(struct cam_device *device); #endif /* MINIMALISTIC */ static int getdevtree(int argc, char **argv, char *combinedopt); +static int print_dev_scsi(struct device_match_result *dev_result, char *tmpstr); +static int print_dev_ata(struct device_match_result *dev_result, char *tmpstr); +static int print_dev_semb(struct device_match_result *dev_result, char *tmpstr); +static int print_dev_mmcsd(struct device_match_result *dev_result, + char *tmpstr); +static int print_dev_nvme(struct device_match_result *dev_result, char *tmpstr); #ifndef MINIMALISTIC static int testunitready(struct cam_device *device, int task_attr, int retry_count, int timeout, int quiet); @@ -554,8 +560,7 @@ getdevtree(int argc, char **argv, char *combinedopt) } case DEV_MATCH_DEVICE: { struct device_match_result *dev_result; - char vendor[16], product[48], revision[16]; - char fw[5], tmpstr[256]; + char tmpstr[256]; if (busonly == 1) break; @@ -572,57 +577,36 @@ getdevtree(int argc, char **argv, char *combinedopt) skip_device = 0; if (dev_result->protocol == PROTO_SCSI) { - cam_strvis(vendor, dev_result->inq_data.vendor, - sizeof(dev_result->inq_data.vendor), - sizeof(vendor)); - cam_strvis(product, - dev_result->inq_data.product, - sizeof(dev_result->inq_data.product), - sizeof(product)); - cam_strvis(revision, - dev_result->inq_data.revision, - sizeof(dev_result->inq_data.revision), - sizeof(revision)); - sprintf(tmpstr, "<%s %s %s>", vendor, product, - revision); + if (print_dev_scsi(dev_result, + &tmpstr[0]) != 0) { + skip_device = 1; + break; + } } else if (dev_result->protocol == PROTO_ATA || dev_result->protocol == PROTO_SATAPM) { - cam_strvis(product, - dev_result->ident_data.model, - sizeof(dev_result->ident_data.model), - sizeof(product)); - cam_strvis(revision, - dev_result->ident_data.revision, - sizeof(dev_result->ident_data.revision), - sizeof(revision)); - sprintf(tmpstr, "<%s %s>", product, - revision); - } else if (dev_result->protocol == PROTO_MMCSD) { - if (strlen(dev_result->mmc_ident_data.model) > 0) { - sprintf(tmpstr, "<%s>", dev_result->mmc_ident_data.model); - } else { - sprintf(tmpstr, "<%s card>", - dev_result->mmc_ident_data.card_features & CARD_FEATURE_SDIO ? "SDIO" : "unknown"); + if (print_dev_ata(dev_result, + &tmpstr[0]) != 0) { + skip_device = 1; + break; } + } else if (dev_result->protocol == PROTO_MMCSD){ + if (print_dev_mmcsd(dev_result, + &tmpstr[0]) != 0) { + skip_device = 1; + break; + } } else if (dev_result->protocol == PROTO_SEMB) { - struct sep_identify_data *sid; - - sid = (struct sep_identify_data *) - &dev_result->ident_data; - cam_strvis(vendor, sid->vendor_id, - sizeof(sid->vendor_id), - sizeof(vendor)); - cam_strvis(product, sid->product_id, - sizeof(sid->product_id), - sizeof(product)); - cam_strvis(revision, sid->product_rev, - sizeof(sid->product_rev), - sizeof(revision)); - cam_strvis(fw, sid->firmware_rev, - sizeof(sid->firmware_rev), - sizeof(fw)); - sprintf(tmpstr, "<%s %s %s %s>", - vendor, product, revision, fw); + if (print_dev_semb(dev_result, + &tmpstr[0]) != 0) { + skip_device = 1; + break; + } + } else if (dev_result->protocol == PROTO_NVME) { + if (print_dev_nvme(dev_result, + &tmpstr[0]) != 0) { + skip_device = 1; + break; + } } else { sprintf(tmpstr, "<>"); } @@ -676,6 +660,122 @@ getdevtree(int argc, char **argv, char *combinedopt) close(fd); return (error); +} + +static int +print_dev_scsi(struct device_match_result *dev_result, char *tmpstr) +{ + char vendor[16], product[48], revision[16]; + + cam_strvis(vendor, dev_result->inq_data.vendor, + sizeof(dev_result->inq_data.vendor), sizeof(vendor)); + cam_strvis(product, dev_result->inq_data.product, + sizeof(dev_result->inq_data.product), sizeof(product)); + cam_strvis(revision, dev_result->inq_data.revision, + sizeof(dev_result->inq_data.revision), sizeof(revision)); + sprintf(tmpstr, "<%s %s %s>", vendor, product, revision); + + return (0); +} + +static int +print_dev_ata(struct device_match_result *dev_result, char *tmpstr) +{ + char product[48], revision[16]; + + cam_strvis(product, dev_result->ident_data.model, + sizeof(dev_result->ident_data.model), sizeof(product)); + cam_strvis(revision, dev_result->ident_data.revision, + sizeof(dev_result->ident_data.revision), sizeof(revision)); + sprintf(tmpstr, "<%s %s>", product, revision); + + return (0); +} + +static int +print_dev_semb(struct device_match_result *dev_result, char *tmpstr) +{ + struct sep_identify_data *sid; + char vendor[16], product[48], revision[16], fw[5]; + + sid = (struct sep_identify_data *)&dev_result->ident_data; + cam_strvis(vendor, sid->vendor_id, + sizeof(sid->vendor_id), sizeof(vendor)); + cam_strvis(product, sid->product_id, + sizeof(sid->product_id), sizeof(product)); + cam_strvis(revision, sid->product_rev, + sizeof(sid->product_rev), sizeof(revision)); + cam_strvis(fw, sid->firmware_rev, + sizeof(sid->firmware_rev), sizeof(fw)); + sprintf(tmpstr, "<%s %s %s %s>", vendor, product, revision, fw); + + return (0); +} + +static int +print_dev_mmcsd(struct device_match_result *dev_result, char *tmpstr) +{ + + if (strlen(dev_result->mmc_ident_data.model) > 0) { + sprintf(tmpstr, "<%s>", dev_result->mmc_ident_data.model); + } else { + sprintf(tmpstr, "<%s card>", + dev_result->mmc_ident_data.card_features & + CARD_FEATURE_SDIO ? "SDIO" : "unknown"); + } + return (0); +} + +static int +print_dev_nvme(struct device_match_result *dev_result, char *tmpstr) +{ + union ccb *ccb; + struct ccb_dev_advinfo *advi; + struct cam_device *dev; + struct nvme_controller_data cdata; + char vendor[64], product[64]; + + dev = cam_open_btl(dev_result->path_id, dev_result->target_id, + dev_result->target_lun, O_RDWR, NULL); + if (dev == NULL) { + warnx("%s", cam_errbuf); + return (1); + } + + ccb = cam_getccb(dev); + if (ccb == NULL) { + warnx("couldn't allocate CCB"); + cam_close_device(dev); + return (1); + } + + advi = &ccb->cdai; + advi->ccb_h.flags = CAM_DIR_IN; + advi->ccb_h.func_code = XPT_DEV_ADVINFO; + advi->flags = CDAI_FLAG_NONE; + advi->buftype = CDAI_TYPE_NVME_CNTRL; + advi->bufsiz = sizeof(struct nvme_controller_data); + advi->buf = (uint8_t *)&cdata; + + if (cam_send_ccb(dev, ccb) < 0) { + warn("error sending CAMIOCOMMAND ioctl"); + cam_freeccb(ccb); + cam_close_device(dev); + return(1); + } + if (advi->ccb_h.status != CAM_REQ_CMP) { + warnx("got CAM error %#x", advi->ccb_h.status); + cam_freeccb(ccb); + cam_close_device(dev); + return(1); + } + cam_strvis(vendor, cdata.mn, sizeof(cdata.mn), sizeof(vendor)); + cam_strvis(product, cdata.fr, sizeof(cdata.fr), sizeof(product)); + sprintf(tmpstr, "<%s %s>", vendor, product); + + cam_freeccb(ccb); + cam_close_device(dev); + return (0); } #ifndef MINIMALISTIC Modified: projects/clang600-import/sbin/dhclient/parse.c ============================================================================== --- projects/clang600-import/sbin/dhclient/parse.c Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/sbin/dhclient/parse.c Fri Jan 12 18:23:35 2018 (r327886) @@ -45,6 +45,8 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD$"); +#include <stdbool.h> + #include "dhcpd.h" #include "dhctoken.h" Modified: projects/clang600-import/sbin/ldconfig/ldconfig.8 ============================================================================== --- projects/clang600-import/sbin/ldconfig/ldconfig.8 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/sbin/ldconfig/ldconfig.8 Fri Jan 12 18:23:35 2018 (r327886) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 19, 2013 +.Dd January 6, 2018 .Dt LDCONFIG 8 .Os .Sh NAME @@ -58,7 +58,9 @@ the overhead that would otherwise result from the dire operations the dynamic linker would have to perform to load the required shared libraries. .Pp -Files named on the command line are expected to contain directories +Alternatively, +.Ar files +may be specified; these are expected to contain directories to scan for shared libraries. Each directory's pathname must start on a new line. @@ -157,9 +159,10 @@ file. In particular, the .Ev LD_LIBRARY_PATH is not used to search for libraries. -Thus, the role of ldconfig is dual. -In -addition to building a set of hints for quick lookup, it also serves to +Thus, the role of +.Nm +is dual. +In addition to building a set of hints for quick lookup, it also serves to specify the trusted collection of directories from which shared objects can be safely loaded. .Sh FILES Modified: projects/clang600-import/share/man/man4/aw_sid.4 ============================================================================== --- projects/clang600-import/share/man/man4/aw_sid.4 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man4/aw_sid.4 Fri Jan 12 18:23:35 2018 (r327886) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 2, 2018 +.Dd January 6, 2018 .Dt AW_SID 4 .Os .Sh NAME @@ -52,6 +52,8 @@ allwinner,sun7i-a20-sid allwinner,sun50i-a64-sid .It allwinner,sun8i-a83t-sid +.It +allwinner,sun8i-h3-sid .El .Sh SYSCTL VARIABLES The following read-only variables are available via Modified: projects/clang600-import/share/man/man4/smp.4 ============================================================================== --- projects/clang600-import/share/man/man4/smp.4 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man4/smp.4 Fri Jan 12 18:23:35 2018 (r327886) @@ -23,7 +23,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 7, 2008 +.Dd January 6, 2018 .Dt SMP 4 .Os .Sh NAME @@ -56,6 +56,11 @@ i386 also requires The .Xr mptable 1 command may be used to view the status of multi-processor support. +.Pp +.Nm +support can be disabled by setting the loader tunable +.Va kern.smp.disabled +to 1. .Pp The number of CPUs detected by the system is available in the read-only sysctl variable Modified: projects/clang600-import/share/man/man5/core.5 ============================================================================== --- projects/clang600-import/share/man/man5/core.5 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man5/core.5 Fri Jan 12 18:23:35 2018 (r327886) @@ -28,7 +28,7 @@ .\" @(#)core.5 8.3 (Berkeley) 12/11/93 .\" $FreeBSD$ .\" -.Dd October 5, 2015 +.Dd January 8, 2018 .Dt CORE 5 .Os .Sh NAME @@ -67,8 +67,8 @@ generating it). .Pp The following format specifiers may be used in the .Va kern.corefile -sysctl to insert additional information into the resulting core file -name: +sysctl to insert additional information into the resulting core +filename: .Bl -tag -width "1234567890" -compact -offset "12345" .It Em \&%H Machine hostname. @@ -108,17 +108,17 @@ is included in the kernel configuration file: GZIO .El .Pp -When the GZIO option is included, the following sysctls control whether core -files will be compressed: -.Bl -tag -width "kern.compress_user_cores_gzlevel" -compact -offset "12345" -.It Em kern.compress_user_cores_gzlevel -Gzip compression level. -Defaults to 6. +The following sysctl control core file compression: +.Bl -tag -width "kern.compress_user_cores_level" -compact -offset "12345" .It Em kern.compress_user_cores -Actually compress user cores. -Compressed core files will have a suffix of +Enable compression of user cores. +A value of 1 configures gzip compression. +gzip-compressed core files will have a suffix of .Ql .gz -appended to them. +appended to their filenames. +.It Em kern.compress_user_cores_level +Compression level. +Defaults to 6. .El .Sh NOTES Corefiles are written with open file descriptor information as an ELF note. @@ -153,6 +153,7 @@ command can be used: .Dl sysctl kern.corefile=/var/coredumps/\&%U/\&%N.core .Sh SEE ALSO .Xr gdb 1 , +.Xr gzip 1 , .Xr kgdb 1 , .Xr setrlimit 2 , .Xr sigaction 2 , Modified: projects/clang600-import/share/man/man5/src.conf.5 ============================================================================== --- projects/clang600-import/share/man/man5/src.conf.5 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man5/src.conf.5 Fri Jan 12 18:23:35 2018 (r327886) @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd November 2, 2017 +.Dd January 11, 2018 .Dt SRC.CONF 5 .Os .Sh NAME @@ -970,12 +970,12 @@ To be able to build the system, either Binutils or LLD enabled unless an alternate linker is provided via XLD. .Pp This is a default setting on -amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. +arm/arm, arm/armeb, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. .It Va WITH_LLD_BOOTSTRAP Set to build the LLD linker during the bootstrap phase of the build. .Pp This is a default setting on -arm64/aarch64. +amd64/amd64, arm64/aarch64 and i386/i386. .It Va WITHOUT_LLD_IS_LD Set to use GNU binutils ld as the system linker, instead of LLVM's LLD. .Pp @@ -996,6 +996,11 @@ Set to use LLVM's libunwind stack unwinder (instead of .Pp This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. +.It Va WITH_LOADER_FIREWIRE +Enable firewire support in /boot/loader and /boot/zfsloader on x86. +This option is a nop on all other platforms. +.It Va WITHOUT_LOADER_GELI +Disable inclusion of GELI crypto support in the boot chain binaries. .It Va WITHOUT_LOCALES Set to not build localization files; see .Xr locale 1 . Modified: projects/clang600-import/share/man/man9/Makefile ============================================================================== --- projects/clang600-import/share/man/man9/Makefile Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man9/Makefile Fri Jan 12 18:23:35 2018 (r327886) @@ -1262,6 +1262,7 @@ MLINKS+=make_dev.9 destroy_dev.9 \ make_dev.9 make_dev_p.9 \ make_dev.9 make_dev_s.9 MLINKS+=malloc.9 free.9 \ + malloc.9 mallocarray.9 \ malloc.9 MALLOC_DECLARE.9 \ malloc.9 MALLOC_DEFINE.9 \ malloc.9 realloc.9 \ Modified: projects/clang600-import/share/man/man9/malloc.9 ============================================================================== --- projects/clang600-import/share/man/man9/malloc.9 Fri Jan 12 18:19:14 2018 (r327885) +++ projects/clang600-import/share/man/man9/malloc.9 Fri Jan 12 18:23:35 2018 (r327886) @@ -29,7 +29,7 @@ .\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $ .\" $FreeBSD$ .\" -.Dd November 19, 2015 +.Dd January 10, 2018 .Dt MALLOC 9 .Os .Sh NAME @@ -45,6 +45,8 @@ .In sys/malloc.h .Ft void * .Fn malloc "unsigned long size" "struct malloc_type *type" "int flags" +.Ft void * +.Fn mallocarray "size_t nmemb" "size_t size" "struct malloc_type *type" "int flags" .Ft void .Fn free "void *addr" "struct malloc_type *type" .Ft void * @@ -64,6 +66,14 @@ object whose size is specified by .Fa size . .Pp The +.Fn mallocarray +function allocates uninitialized memory in kernel address space for an +array of +.Fa nmemb +entries whose size is specified by +.Fa size . +.Pp +The .Fn free function releases memory at address .Fa addr @@ -144,6 +154,7 @@ If the request cannot be immediately fulfilled, the cu to sleep to wait for resources to be released by other processes. *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801121823.w0CINabH071890>