Date: Tue, 5 Feb 2019 19:50:47 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r343807 - in projects/clang800-import: etc/mail lib/libc/tests/sys lib/libefivar lib/libpmc/pmu-events lib/libsysdecode lib/libthr/thread release/arm64 sbin/devmatch sbin/nvmecontrol sb... Message-ID: <201902051950.x15JolB7000924@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Tue Feb 5 19:50:46 2019 New Revision: 343807 URL: https://svnweb.freebsd.org/changeset/base/343807 Log: Merge ^/head r343712 through r343806. Modified: projects/clang800-import/etc/mail/Makefile projects/clang800-import/lib/libc/tests/sys/sendfile_test.c projects/clang800-import/lib/libefivar/efi-osdep.h projects/clang800-import/lib/libefivar/efivar-dp-format.c projects/clang800-import/lib/libefivar/efivar-dp-parse.c projects/clang800-import/lib/libefivar/efivar-dp-xlate.c projects/clang800-import/lib/libefivar/efivar-dp.h projects/clang800-import/lib/libefivar/efivar.3 projects/clang800-import/lib/libefivar/efivar.c projects/clang800-import/lib/libefivar/efivar.h projects/clang800-import/lib/libefivar/uefi-dplib.h projects/clang800-import/lib/libefivar/uefi-dputil.c projects/clang800-import/lib/libpmc/pmu-events/jevents.c projects/clang800-import/lib/libsysdecode/flags.c projects/clang800-import/lib/libthr/thread/thr_malloc.c projects/clang800-import/lib/libthr/thread/thr_mutex.c projects/clang800-import/release/arm64/PINE64-LTS.conf projects/clang800-import/release/arm64/RPI3.conf projects/clang800-import/sbin/devmatch/devmatch.8 projects/clang800-import/sbin/devmatch/devmatch.c projects/clang800-import/sbin/nvmecontrol/modules/wdc/wdc.c projects/clang800-import/sbin/nvmecontrol/nc_util.c projects/clang800-import/sbin/nvmecontrol/ns.c projects/clang800-import/sbin/nvmecontrol/nvmecontrol_ext.h projects/clang800-import/sbin/nvmecontrol/power.c projects/clang800-import/share/man/man4/nda.4 projects/clang800-import/share/man/man9/kern_testfrwk.9 projects/clang800-import/stand/efi/libefi/efienv.c projects/clang800-import/stand/efi/libefi/env.c projects/clang800-import/stand/efi/libefi/wchar.c projects/clang800-import/stand/efi/loader/main.c projects/clang800-import/stand/forth/efi.4th projects/clang800-import/stand/i386/libi386/biospci.c projects/clang800-import/stand/libsa/abort.c projects/clang800-import/stand/libsa/xlocale_private.h projects/clang800-import/sys/amd64/amd64/exception.S projects/clang800-import/sys/amd64/conf/GENERIC projects/clang800-import/sys/arm/arm/physmem.c projects/clang800-import/sys/arm64/conf/GENERIC projects/clang800-import/sys/cam/nvme/nvme_all.c projects/clang800-import/sys/cam/nvme/nvme_all.h projects/clang800-import/sys/cam/nvme/nvme_da.c projects/clang800-import/sys/cam/scsi/scsi_enc_ses.c projects/clang800-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/clang800-import/sys/conf/files projects/clang800-import/sys/conf/kern.pre.mk projects/clang800-import/sys/contrib/ipfilter/netinet/fil.c projects/clang800-import/sys/crypto/aesni/aesencdec.h projects/clang800-import/sys/dev/efidev/efidev.c projects/clang800-import/sys/dev/netmap/if_ptnet.c projects/clang800-import/sys/dev/netmap/if_vtnet_netmap.h projects/clang800-import/sys/dev/netmap/netmap.c projects/clang800-import/sys/dev/netmap/netmap_bdg.c projects/clang800-import/sys/dev/netmap/netmap_freebsd.c projects/clang800-import/sys/dev/netmap/netmap_generic.c projects/clang800-import/sys/dev/netmap/netmap_kern.h projects/clang800-import/sys/dev/netmap/netmap_legacy.c projects/clang800-import/sys/dev/netmap/netmap_mem2.c projects/clang800-import/sys/dev/netmap/netmap_monitor.c projects/clang800-import/sys/dev/netmap/netmap_null.c projects/clang800-import/sys/dev/netmap/netmap_offloadings.c projects/clang800-import/sys/dev/netmap/netmap_pipe.c projects/clang800-import/sys/dev/netmap/netmap_vale.c projects/clang800-import/sys/dev/nvme/nvme_sim.c projects/clang800-import/sys/dev/syscons/scterm-teken.c projects/clang800-import/sys/dev/tcp_log/tcp_log_dev.c projects/clang800-import/sys/dev/tcp_log/tcp_log_dev.h projects/clang800-import/sys/dev/vt/vt_core.c projects/clang800-import/sys/i386/include/counter.h projects/clang800-import/sys/kern/kern_environment.c projects/clang800-import/sys/kern/kern_proc.c projects/clang800-import/sys/kern/subr_boot.c projects/clang800-import/sys/kern/uipc_syscalls.c projects/clang800-import/sys/kern/vfs_extattr.c projects/clang800-import/sys/net/iflib.c projects/clang800-import/sys/netinet/sctp_output.c projects/clang800-import/sys/netinet/sctp_usrreq.c projects/clang800-import/sys/netinet/tcp_hpts.c projects/clang800-import/sys/netinet/tcp_hpts.h projects/clang800-import/sys/netinet/tcp_log_buf.c projects/clang800-import/sys/netinet/tcp_log_buf.h projects/clang800-import/sys/netinet/tcp_stacks/rack.c projects/clang800-import/sys/netinet/tcp_stacks/rack_bbr_common.h projects/clang800-import/sys/netinet/tcp_stacks/sack_filter.c projects/clang800-import/sys/netinet/tcp_stacks/sack_filter.h projects/clang800-import/sys/netinet/tcp_stacks/tcp_rack.h projects/clang800-import/sys/powerpc/aim/locore32.S projects/clang800-import/sys/powerpc/aim/locore64.S projects/clang800-import/sys/powerpc/aim/trap_subr32.S projects/clang800-import/sys/powerpc/aim/trap_subr64.S projects/clang800-import/sys/powerpc/powerpc/cpu.c projects/clang800-import/sys/powerpc/pseries/phyp_llan.c projects/clang800-import/sys/sys/boot.h projects/clang800-import/sys/sys/efiio.h projects/clang800-import/sys/sys/kern_prefetch.h projects/clang800-import/sys/teken/libteken/teken.3 projects/clang800-import/sys/teken/teken.c projects/clang800-import/sys/teken/teken.h projects/clang800-import/sys/tests/callout_test.h projects/clang800-import/sys/tests/callout_test/callout_test.c projects/clang800-import/sys/tests/framework/kern_testfrwk.c projects/clang800-import/sys/tests/kern_testfrwk.h projects/clang800-import/sys/vm/vm_page.c projects/clang800-import/sys/vm/vm_page.h projects/clang800-import/sys/x86/include/specialreg.h projects/clang800-import/sys/x86/x86/identcpu.c projects/clang800-import/usr.sbin/efibootmgr/efibootmgr.8 projects/clang800-import/usr.sbin/efibootmgr/efibootmgr.c projects/clang800-import/usr.sbin/efidp/efidp.8 projects/clang800-import/usr.sbin/efidp/efidp.c projects/clang800-import/usr.sbin/efivar/efiutil.c projects/clang800-import/usr.sbin/efivar/efiutil.h projects/clang800-import/usr.sbin/efivar/efivar.8 projects/clang800-import/usr.sbin/efivar/efivar.c projects/clang800-import/usr.sbin/mpsutil/mps_cmd.c projects/clang800-import/usr.sbin/mpsutil/mps_debug.c projects/clang800-import/usr.sbin/mpsutil/mps_show.c projects/clang800-import/usr.sbin/mpsutil/mpsutil.c projects/clang800-import/usr.sbin/pmcstat/pmcpl_annotate_cg.c projects/clang800-import/usr.sbin/pmcstat/pmcpl_annotate_cg.h projects/clang800-import/usr.sbin/pmcstudy/eval_expr.c projects/clang800-import/usr.sbin/pmcstudy/eval_expr.h projects/clang800-import/usr.sbin/pmcstudy/pmcstudy.8 projects/clang800-import/usr.sbin/pmcstudy/pmcstudy.c projects/clang800-import/usr.sbin/sesutil/sesutil.c Directory Properties: projects/clang800-import/ (props changed) projects/clang800-import/sys/cddl/contrib/opensolaris/ (props changed) projects/clang800-import/sys/contrib/ipfilter/ (props changed) projects/clang800-import/usr.sbin/bhyve/usb_mouse.c (props changed) Modified: projects/clang800-import/etc/mail/Makefile ============================================================================== --- projects/clang800-import/etc/mail/Makefile Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/etc/mail/Makefile Tue Feb 5 19:50:46 2019 (r343807) @@ -60,8 +60,8 @@ # ------------------------------------------------------------------------ # # The Makefile knows about the following maps: -# access, bitdomain, domaintable, genericstable, mailertable, userdb, -# uucpdomain, virtusertable +# access, authinfo, bitdomain, domaintable, genericstable, mailertable, +# userdb, uucpdomain, virtusertable # .ifndef SENDMAIL_MC @@ -125,7 +125,7 @@ SENDMAIL_MAP_PERMS?= 0640 # type to use when calling makemap. # SENDMAIL_MAP_SRC+= mailertable domaintable bitdomain uucpdomain \ - genericstable virtusertable access + genericstable virtusertable access authinfo SENDMAIL_MAP_OBJ= SENDMAIL_MAP_TYPE?= hash Modified: projects/clang800-import/lib/libc/tests/sys/sendfile_test.c ============================================================================== --- projects/clang800-import/lib/libc/tests/sys/sendfile_test.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libc/tests/sys/sendfile_test.c Tue Feb 5 19:50:46 2019 (r343807) @@ -97,22 +97,31 @@ generate_random_port(int seed) static void resolve_localhost(struct addrinfo **res, int domain, int type, int port) { + const char *host; char *serv; struct addrinfo hints; int error; - ATF_REQUIRE_MSG(domain == AF_INET || domain == AF_INET6, - "unhandled domain: %d", domain); + switch (domain) { + case AF_INET: + host = "127.0.0.1"; + break; + case AF_INET6: + host = "::1"; + break; + default: + atf_tc_fail("unhandled domain: %d", domain); + } ATF_REQUIRE_MSG(asprintf(&serv, "%d", port) >= 0, "asprintf failed: %s", strerror(errno)); memset(&hints, 0, sizeof(hints)); hints.ai_family = domain; - hints.ai_flags = AI_ADDRCONFIG|AI_NUMERICSERV; + hints.ai_flags = AI_ADDRCONFIG|AI_NUMERICSERV|AI_NUMERICHOST; hints.ai_socktype = type; - error = getaddrinfo("localhost", serv, &hints, res); + error = getaddrinfo(host, serv, &hints, res); ATF_REQUIRE_EQ_MSG(error, 0, "getaddrinfo failed: %s", gai_strerror(error)); free(serv); Modified: projects/clang800-import/lib/libefivar/efi-osdep.h ============================================================================== --- projects/clang800-import/lib/libefivar/efi-osdep.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efi-osdep.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar-dp-format.c ============================================================================== --- projects/clang800-import/lib/libefivar/efivar-dp-format.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar-dp-format.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar-dp-parse.c ============================================================================== --- projects/clang800-import/lib/libefivar/efivar-dp-parse.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar-dp-parse.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar-dp-xlate.c ============================================================================== --- projects/clang800-import/lib/libefivar/efivar-dp-xlate.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar-dp-xlate.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar-dp.h ============================================================================== --- projects/clang800-import/lib/libefivar/efivar-dp.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar-dp.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar.3 ============================================================================== --- projects/clang800-import/lib/libefivar/efivar.3 Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar.3 Tue Feb 5 19:50:46 2019 (r343807) @@ -1,3 +1,4 @@ +.\" .\" Copyright 2016 Netflix, Inc. .\" All rights reserved. .\" Modified: projects/clang800-import/lib/libefivar/efivar.c ============================================================================== --- projects/clang800-import/lib/libefivar/efivar.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2016 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/efivar.h ============================================================================== --- projects/clang800-import/lib/libefivar/efivar.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/efivar.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2016 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/uefi-dplib.h ============================================================================== --- projects/clang800-import/lib/libefivar/uefi-dplib.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/uefi-dplib.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libefivar/uefi-dputil.c ============================================================================== --- projects/clang800-import/lib/libefivar/uefi-dputil.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libefivar/uefi-dputil.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2017 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/lib/libpmc/pmu-events/jevents.c ============================================================================== --- projects/clang800-import/lib/libpmc/pmu-events/jevents.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libpmc/pmu-events/jevents.c Tue Feb 5 19:50:46 2019 (r343807) @@ -54,6 +54,10 @@ #include "json.h" #include "jevents.h" +static int +nftw_ordered(const char *path, int (*fn)(const char *, const struct stat *, int, + struct FTW *), int nfds, int ftwflags); + _Noreturn void _Exit(int); int verbose; @@ -1122,7 +1126,7 @@ int main(int argc, char *argv[]) maxfds = get_maxfds(); mapfile = NULL; - rc = nftw(ldirname, preprocess_arch_std_files, maxfds, 0); + rc = nftw_ordered(ldirname, preprocess_arch_std_files, maxfds, 0); if (rc && verbose) { pr_info("%s: Error preprocessing arch standard files %s: %s\n", prog, ldirname, strerror(errno)); @@ -1135,7 +1139,7 @@ int main(int argc, char *argv[]) goto empty_map; } - rc = nftw(ldirname, process_one_file, maxfds, 0); + rc = nftw_ordered(ldirname, process_one_file, maxfds, 0); if (rc && verbose) { pr_info("%s: Error walking file tree %s\n", prog, ldirname); goto empty_map; @@ -1168,4 +1172,91 @@ empty_map: create_empty_mapping(output_file); free_arch_std_events(); return 0; +} + +#include <fts.h> + +static int +fts_compare(const FTSENT * const *a, const FTSENT * const *b) +{ + return (strcmp((*a)->fts_name, (*b)->fts_name)); +} + +static int +nftw_ordered(const char *path, int (*fn)(const char *, const struct stat *, int, + struct FTW *), int nfds, int ftwflags) +{ + char * const paths[2] = { (char *)path, NULL }; + struct FTW ftw; + FTSENT *cur; + FTS *ftsp; + int error = 0, ftsflags, fnflag, postorder, sverrno; + + /* XXX - nfds is currently unused */ + if (nfds < 1) { + errno = EINVAL; + return (-1); + } + + ftsflags = FTS_COMFOLLOW; + if (!(ftwflags & FTW_CHDIR)) + ftsflags |= FTS_NOCHDIR; + if (ftwflags & FTW_MOUNT) + ftsflags |= FTS_XDEV; + if (ftwflags & FTW_PHYS) + ftsflags |= FTS_PHYSICAL; + else + ftsflags |= FTS_LOGICAL; + postorder = (ftwflags & FTW_DEPTH) != 0; + ftsp = fts_open(paths, ftsflags, fts_compare); + if (ftsp == NULL) + return (-1); + while ((cur = fts_read(ftsp)) != NULL) { + switch (cur->fts_info) { + case FTS_D: + if (postorder) + continue; + fnflag = FTW_D; + break; + case FTS_DC: + continue; + case FTS_DNR: + fnflag = FTW_DNR; + break; + case FTS_DP: + if (!postorder) + continue; + fnflag = FTW_DP; + break; + case FTS_F: + case FTS_DEFAULT: + fnflag = FTW_F; + break; + case FTS_NS: + case FTS_NSOK: + fnflag = FTW_NS; + break; + case FTS_SL: + fnflag = FTW_SL; + break; + case FTS_SLNONE: + fnflag = FTW_SLN; + break; + default: + error = -1; + goto done; + } + ftw.base = cur->fts_pathlen - cur->fts_namelen; + ftw.level = cur->fts_level; + error = fn(cur->fts_path, cur->fts_statp, fnflag, &ftw); + if (error != 0) + break; + } +done: + sverrno = errno; + if (fts_close(ftsp) != 0 && error == 0) + error = -1; + else + errno = sverrno; + return (error); } Modified: projects/clang800-import/lib/libsysdecode/flags.c ============================================================================== --- projects/clang800-import/lib/libsysdecode/flags.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libsysdecode/flags.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1208,7 +1208,7 @@ sysdecode_sctp_pr_policy(int policy) static struct name_table sctpsndflags[] = { X(SCTP_EOF) X(SCTP_ABORT) X(SCTP_UNORDERED) X(SCTP_ADDR_OVER) - X(SCTP_SENDALL) X(SCTP_SACK_IMMEDIATELY) XEND + X(SCTP_SENDALL) X(SCTP_EOR) X(SCTP_SACK_IMMEDIATELY) XEND }; bool Modified: projects/clang800-import/lib/libthr/thread/thr_malloc.c ============================================================================== --- projects/clang800-import/lib/libthr/thread/thr_malloc.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libthr/thread/thr_malloc.c Tue Feb 5 19:50:46 2019 (r343807) @@ -46,6 +46,8 @@ void __thr_malloc_init(void) { + if (npagesizes != 0) + return; npagesizes = getpagesizes(pagesizes_d, nitems(pagesizes_d)); if (npagesizes == -1) { npagesizes = 1; @@ -59,6 +61,8 @@ static void thr_malloc_lock(struct pthread *curthread) { + if (curthread == NULL) + return; curthread->locklevel++; _thr_umutex_lock(&thr_malloc_umtx, TID(curthread)); } @@ -67,6 +71,8 @@ static void thr_malloc_unlock(struct pthread *curthread) { + if (curthread == NULL) + return; _thr_umutex_unlock(&thr_malloc_umtx, TID(curthread)); curthread->locklevel--; _thr_ast(curthread); Modified: projects/clang800-import/lib/libthr/thread/thr_mutex.c ============================================================================== --- projects/clang800-import/lib/libthr/thread/thr_mutex.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/lib/libthr/thread/thr_mutex.c Tue Feb 5 19:50:46 2019 (r343807) @@ -390,6 +390,7 @@ __pthread_mutex_init(pthread_mutex_t * __restrict mute } if (mutex_attr == NULL || (*mutex_attr)->m_pshared == PTHREAD_PROCESS_PRIVATE) { + __thr_malloc_init(); return (mutex_init(mutex, mutex_attr ? *mutex_attr : NULL, __thr_calloc)); } Modified: projects/clang800-import/release/arm64/PINE64-LTS.conf ============================================================================== --- projects/clang800-import/release/arm64/PINE64-LTS.conf Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/release/arm64/PINE64-LTS.conf Tue Feb 5 19:50:46 2019 (r343807) @@ -6,7 +6,7 @@ EMBEDDED_TARGET_ARCH="aarch64" EMBEDDED_TARGET="arm64" EMBEDDEDBUILD=1 -EMBEDDEDPORTS="sysutils/u-boot-sopine" +EMBEDDEDPORTS="sysutils/u-boot-pine64-lts" FAT_SIZE="54m -b 1m" FAT_TYPE="16" IMAGE_SIZE="2560M" @@ -18,7 +18,7 @@ FDT_OVERLAYS="sun50i-a64-sid,sun50i-a64-ths,sun50i-a64 export BOARDNAME="PINE64-LTS" arm_install_uboot() { - UBOOT_DIR="/usr/local/share/u-boot/u-boot-sopine" + UBOOT_DIR="/usr/local/share/u-boot/u-boot-pine64-lts" UBOOT_FILES="u-boot-sunxi-with-spl.bin" chroot ${CHROOTDIR} dd if=${UBOOT_DIR}/${UBOOT_FILES} \ of=/dev/${mddev} bs=1k seek=8 conv=sync Modified: projects/clang800-import/release/arm64/RPI3.conf ============================================================================== --- projects/clang800-import/release/arm64/RPI3.conf Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/release/arm64/RPI3.conf Tue Feb 5 19:50:46 2019 (r343807) @@ -4,7 +4,7 @@ # DTB_DIR="/usr/local/share/rpi-firmware" -DTB="bcm2710-rpi-3-b.dtb" +DTB="bcm2710-rpi-3-b.dtb bcm2710-rpi-3-b-plus.dtb" EMBEDDED_TARGET_ARCH="aarch64" EMBEDDED_TARGET="arm64" EMBEDDEDBUILD=1 Modified: projects/clang800-import/sbin/devmatch/devmatch.8 ============================================================================== --- projects/clang800-import/sbin/devmatch/devmatch.8 Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/devmatch/devmatch.8 Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,5 @@ .\" -.\" Copyright (c) 2017 Netflix, Inc -.\" -.\" All rights reserved. +.\" Copyright (c) 2017 Netflix, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions Modified: projects/clang800-import/sbin/devmatch/devmatch.c ============================================================================== --- projects/clang800-import/sbin/devmatch/devmatch.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/devmatch/devmatch.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- - * Copyright (c) 2017 Netflix, Inc - * All rights reserved. + * Copyright (c) 2017 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sbin/nvmecontrol/modules/wdc/wdc.c ============================================================================== --- projects/clang800-import/sbin/nvmecontrol/modules/wdc/wdc.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/nvmecontrol/modules/wdc/wdc.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- - * Copyright (c) 2017 Netflix, Inc - * All rights reserved. + * Copyright (c) 2017 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sbin/nvmecontrol/nc_util.c ============================================================================== --- projects/clang800-import/sbin/nvmecontrol/nc_util.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/nvmecontrol/nc_util.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- - * Copyright (c) 2017 Netflix, Inc - * All rights reserved. + * Copyright (c) 2017 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sbin/nvmecontrol/ns.c ============================================================================== --- projects/clang800-import/sbin/nvmecontrol/ns.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/nvmecontrol/ns.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (c) 2017 Netflix, Inc + * Copyright (c) 2017 Netflix, Inc. * Copyright (C) 2018 Alexander Motin <mav@FreeBSD.org> * * Redistribution and use in source and binary forms, with or without Modified: projects/clang800-import/sbin/nvmecontrol/nvmecontrol_ext.h ============================================================================== --- projects/clang800-import/sbin/nvmecontrol/nvmecontrol_ext.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/nvmecontrol/nvmecontrol_ext.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (C) 2018 Netflix + * Copyright (C) 2018 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sbin/nvmecontrol/power.c ============================================================================== --- projects/clang800-import/sbin/nvmecontrol/power.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sbin/nvmecontrol/power.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- - * Copyright (c) 2016 Netflix, Inc - * All rights reserved. + * Copyright (c) 2016 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/share/man/man4/nda.4 ============================================================================== --- projects/clang800-import/share/man/man4/nda.4 Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/share/man/man4/nda.4 Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ -.\" Copyright (c) 2017 Netflix, Inc -.\" All rights reserved. +.\" +.\" Copyright (c) 2017 Netflix, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions Modified: projects/clang800-import/share/man/man9/kern_testfrwk.9 ============================================================================== --- projects/clang800-import/share/man/man9/kern_testfrwk.9 Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/share/man/man9/kern_testfrwk.9 Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ .\" -.\" Copyright (c) 2015 Netflix Inc. -.\" All rights reserved. +.\" Copyright (c) 2015 Netflix, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/efi/libefi/efienv.c ============================================================================== --- projects/clang800-import/stand/efi/libefi/efienv.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/efi/libefi/efienv.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2018 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/efi/libefi/env.c ============================================================================== --- projects/clang800-import/stand/efi/libefi/env.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/efi/libefi/env.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 Netflix, Inc. All Rights Reserved. + * Copyright (c) 2015 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/efi/libefi/wchar.c ============================================================================== --- projects/clang800-import/stand/efi/libefi/wchar.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/efi/libefi/wchar.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ /*- - * Copyright 2016 Netflix, Inc. All Rights Reserved. + * Copyright 2016 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/efi/loader/main.c ============================================================================== --- projects/clang800-import/stand/efi/loader/main.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/efi/loader/main.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,9 +1,10 @@ /*- * Copyright (c) 2008-2010 Rui Paulo * Copyright (c) 2006 Marcel Moolenaar - * Copyright (c) 2018 Netflix, Inc * All rights reserved. * + * Copyright (c) 2018 Netflix, Inc. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: Modified: projects/clang800-import/stand/forth/efi.4th ============================================================================== --- projects/clang800-import/stand/forth/efi.4th Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/forth/efi.4th Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ -\ Copyright (c) 2016 Netflix, Inc -\ All rights reserved. +\ +\ Copyright (c) 2016 Netflix, Inc. \ \ Redistribution and use in source and binary forms, with or without \ modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/i386/libi386/biospci.c ============================================================================== --- projects/clang800-import/stand/i386/libi386/biospci.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/i386/libi386/biospci.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,8 @@ /*- * Copyright (c) 1998 Michael Smith <msmith@freebsd.org> - * Copyright (c) 2016 Netflix, Inc * All rights reserved. + * + * Copyright (c) 2016 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/libsa/abort.c ============================================================================== --- projects/clang800-import/stand/libsa/abort.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/libsa/abort.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Netflix. All Rights Reserved. + * Copyright (c) 2018 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/stand/libsa/xlocale_private.h ============================================================================== --- projects/clang800-import/stand/libsa/xlocale_private.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/stand/libsa/xlocale_private.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2018 Netflix + * Copyright (c) 2018 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/amd64/amd64/exception.S ============================================================================== --- projects/clang800-import/sys/amd64/amd64/exception.S Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/amd64/amd64/exception.S Tue Feb 5 19:50:46 2019 (r343807) @@ -521,12 +521,14 @@ fast_syscall_common: movq TF_RFLAGS(%rsp),%r11 /* original %rflags */ movq TF_RIP(%rsp),%rcx /* original %rip */ movq TF_RSP(%rsp),%rsp /* user stack pointer */ + xorl %r8d,%r8d /* zero the rest of GPRs */ + xorl %r10d,%r10d cmpq $~0,PCPU(UCR3) je 2f movq PCPU(UCR3),%r9 movq %r9,%cr3 - xorl %r9d,%r9d -2: swapgs +2: xorl %r9d,%r9d + swapgs sysretq 3: /* AST scheduled. */ Modified: projects/clang800-import/sys/amd64/conf/GENERIC ============================================================================== --- projects/clang800-import/sys/amd64/conf/GENERIC Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/amd64/conf/GENERIC Tue Feb 5 19:50:46 2019 (r343807) @@ -102,8 +102,8 @@ options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default # Kernel Sanitizers -#options COVERAGE # Generic kernel coverage. Used by KCOV -#options KCOV # Kernel Coverage Sanitizer +options COVERAGE # Generic kernel coverage. Used by KCOV +options KCOV # Kernel Coverage Sanitizer # Warning: KUBSAN can result in a kernel too large for loader to load #options KUBSAN # Kernel Undefined Behavior Sanitizer Modified: projects/clang800-import/sys/arm/arm/physmem.c ============================================================================== --- projects/clang800-import/sys/arm/arm/physmem.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/arm/arm/physmem.c Tue Feb 5 19:50:46 2019 (r343807) @@ -29,6 +29,7 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD$"); +#include "opt_acpi.h" #include "opt_ddb.h" /* @@ -48,8 +49,13 @@ __FBSDID("$FreeBSD$"); * that can be allocated, or both, depending on the exclusion flags associated * with the region. */ +#ifdef DEV_ACPI +#define MAX_HWCNT 32 /* ACPI needs more regions */ +#define MAX_EXCNT 32 +#else #define MAX_HWCNT 16 #define MAX_EXCNT 16 +#endif #if defined(__arm__) #define MAX_PHYS_ADDR 0xFFFFFFFFull Modified: projects/clang800-import/sys/arm64/conf/GENERIC ============================================================================== --- projects/clang800-import/sys/arm64/conf/GENERIC Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/arm64/conf/GENERIC Tue Feb 5 19:50:46 2019 (r343807) @@ -94,8 +94,8 @@ options USB_DEBUG # enable debug msgs options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default # Kernel Sanitizers -#options COVERAGE # Generic kernel coverage. Used by KCOV -#options KCOV # Kernel Coverage Sanitizer +options COVERAGE # Generic kernel coverage. Used by KCOV +options KCOV # Kernel Coverage Sanitizer # Warning: KUBSAN can result in a kernel too large for loader to load #options KUBSAN # Kernel Undefined Behavior Sanitizer Modified: projects/clang800-import/sys/cam/nvme/nvme_all.c ============================================================================== --- projects/clang800-import/sys/cam/nvme/nvme_all.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/cam/nvme/nvme_all.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (c) 2015 Netflix, Inc + * Copyright (c) 2015 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/cam/nvme/nvme_all.h ============================================================================== --- projects/clang800-import/sys/cam/nvme/nvme_all.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/cam/nvme/nvme_all.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (c) 2015 Netflix, Inc + * Copyright (c) 2015 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/cam/nvme/nvme_da.c ============================================================================== --- projects/clang800-import/sys/cam/nvme/nvme_da.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/cam/nvme/nvme_da.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (c) 2015 Netflix, Inc + * Copyright (c) 2015 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/cam/scsi/scsi_enc_ses.c ============================================================================== --- projects/clang800-import/sys/cam/scsi/scsi_enc_ses.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/cam/scsi/scsi_enc_ses.c Tue Feb 5 19:50:46 2019 (r343807) @@ -2729,13 +2729,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s if (sstr->bufsiz > 0xffff) return (EINVAL); /* buffer size too large */ - if (ioc == ENCIOC_SETSTRING) { + switch (ioc) { + case ENCIOC_SETSTRING: payload = sstr->bufsiz + 4; /* header for SEND DIAGNOSTIC */ amt = 0 - payload; buf = ENC_MALLOC(payload); if (buf == NULL) - return ENOMEM; - + return (ENOMEM); ses_page_cdb(cdb, payload, 0, CAM_DIR_OUT); /* Construct the page request */ buf[0] = SesStringOut; @@ -2743,12 +2743,14 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s buf[2] = sstr->bufsiz >> 8; buf[3] = sstr->bufsiz & 0xff; memcpy(&buf[4], sstr->buf, sstr->bufsiz); - } else if (ioc == ENCIOC_GETSTRING) { + break; + case ENCIOC_GETSTRING: payload = sstr->bufsiz; amt = payload; ses_page_cdb(cdb, payload, SesStringIn, CAM_DIR_IN); buf = sstr->buf; - } else if (ioc == ENCIOC_GETENCNAME) { + break; + case ENCIOC_GETENCNAME: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2768,7 +2770,7 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else if (ioc == ENCIOC_GETENCID) { + case ENCIOC_GETENCID: if (ses_cache->ses_nsubencs < 1) return (ENODEV); enc_desc = ses_cache->subencs[0]; @@ -2782,13 +2784,13 @@ ses_handle_string(enc_softc_t *enc, encioc_string_t *s size = sstr->bufsiz; copyout(str, sstr->buf, size); return (size == rsize ? 0 : ENOMEM); - } else - return EINVAL; - + default: + return (EINVAL); + } ret = enc_runcmd(enc, cdb, 6, buf, &amt); if (ioc == ENCIOC_SETSTRING) ENC_FREE(buf); - return ret; + return (ret); } /** Modified: projects/clang800-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- projects/clang800-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Tue Feb 5 19:50:46 2019 (r343807) @@ -165,29 +165,38 @@ static vdev_ops_t *vdev_ops_table[] = { /* target number of metaslabs per top-level vdev */ int vdev_max_ms_count = 200; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count, CTLFLAG_RWTUN, &vdev_max_ms_count, 0, - "Maximum number of metaslabs per top-level vdev"); + "Target number of metaslabs per top-level vdev"); /* minimum number of metaslabs per top-level vdev */ int vdev_min_ms_count = 16; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, min_ms_count, CTLFLAG_RWTUN, &vdev_min_ms_count, 0, "Minimum number of metaslabs per top-level vdev"); /* practical upper limit of total metaslabs per top-level vdev */ int vdev_ms_count_limit = 1ULL << 17; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_count_limit, CTLFLAG_RWTUN, + &vdev_ms_count_limit, 0, + "Maximum number of metaslabs per top-level vdev"); /* lower limit for metaslab size (512M) */ int vdev_default_ms_shift = 29; -SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RDTUN, +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, default_ms_shift, CTLFLAG_RWTUN, &vdev_default_ms_shift, 0, - "Shift between vdev size and number of metaslabs"); + "Default shift between vdev size and number of metaslabs"); /* upper limit for metaslab size (256G) */ int vdev_max_ms_shift = 38; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, max_ms_shift, CTLFLAG_RWTUN, + &vdev_max_ms_shift, 0, + "Maximum shift between vdev size and number of metaslabs"); boolean_t vdev_validate_skip = B_FALSE; +SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, validate_skip, CTLFLAG_RWTUN, + &vdev_validate_skip, 0, + "Bypass vdev validation"); /* * Since the DTL space map of a vdev is not expected to have a lot of Modified: projects/clang800-import/sys/conf/files ============================================================================== --- projects/clang800-import/sys/conf/files Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/conf/files Tue Feb 5 19:50:46 2019 (r343807) @@ -3808,7 +3808,7 @@ kern/kern_idle.c standard kern/kern_intr.c standard kern/kern_jail.c standard kern/kern_kcov.c optional kcov \ - compile-with "${NORMAL_C} -fno-sanitize-coverage=trace-pc,trace-cmp" + compile-with "${NORMAL_C} -fno-sanitize=all" kern/kern_khelp.c standard kern/kern_kthread.c standard kern/kern_ktr.c optional ktr Modified: projects/clang800-import/sys/conf/kern.pre.mk ============================================================================== --- projects/clang800-import/sys/conf/kern.pre.mk Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/conf/kern.pre.mk Tue Feb 5 19:50:46 2019 (r343807) @@ -120,7 +120,12 @@ SAN_CFLAGS+= -fsanitize=undefined COVERAGE_ENABLED!= grep COVERAGE opt_global.h || true ; echo .if !empty(COVERAGE_ENABLED) +.if ${COMPILER_TYPE} == "clang" || \ + (${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 80100) SAN_CFLAGS+= -fsanitize-coverage=trace-pc,trace-cmp +.else +SAN_CFLAGS+= -fsanitize-coverage=trace-pc +.endif .endif CFLAGS+= ${SAN_CFLAGS} Modified: projects/clang800-import/sys/contrib/ipfilter/netinet/fil.c ============================================================================== --- projects/clang800-import/sys/contrib/ipfilter/netinet/fil.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/contrib/ipfilter/netinet/fil.c Tue Feb 5 19:50:46 2019 (r343807) @@ -6119,9 +6119,7 @@ ipf_getifname(ifp, buffer) char *buffer; { static char namebuf[LIFNAMSIZ]; -# if defined(MENTAT) || defined(__FreeBSD__) || defined(__osf__) || \ - defined(__sgi) || defined(linux) || defined(_AIX51) || \ - (defined(sun) && !defined(__SVR4) && !defined(__svr4__)) +# if defined(MENTAT) || defined(__FreeBSD__) int unit, space; char temp[20]; char *s; @@ -6131,9 +6129,7 @@ ipf_getifname(ifp, buffer) buffer = namebuf; (void) strncpy(buffer, ifp->if_name, LIFNAMSIZ); buffer[LIFNAMSIZ - 1] = '\0'; -# if defined(MENTAT) || defined(__FreeBSD__) || defined(__osf__) || \ - defined(__sgi) || defined(_AIX51) || \ - (defined(sun) && !defined(__SVR4) && !defined(__svr4__)) +# if defined(MENTAT) || defined(__FreeBSD__) for (s = buffer; *s; s++) ; unit = ifp->if_unit; Modified: projects/clang800-import/sys/crypto/aesni/aesencdec.h ============================================================================== --- projects/clang800-import/sys/crypto/aesni/aesencdec.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/crypto/aesni/aesencdec.h Tue Feb 5 19:50:46 2019 (r343807) @@ -1,7 +1,8 @@ /*- * Copyright 2013 John-Mark Gurney <jmg@FreeBSD.org> - * Copyright 2015 Netflix, Inc. * All rights reserved. + * + * Copyright 2015 Netflix, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/dev/efidev/efidev.c ============================================================================== --- projects/clang800-import/sys/dev/efidev/efidev.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/dev/efidev/efidev.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2016 Netflix, Inc. - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang800-import/sys/dev/netmap/if_ptnet.c ============================================================================== --- projects/clang800-import/sys/dev/netmap/if_ptnet.c Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/dev/netmap/if_ptnet.c Tue Feb 5 19:50:46 2019 (r343807) @@ -1151,10 +1151,10 @@ ptnet_sync_from_csb(struct ptnet_softc *sc, struct net kring->nr_hwtail = kring->rtail = kring->ring->tail = ktoa->hwtail; - ND("%d,%d: csb {hc %u h %u c %u ht %u}", t, i, + nm_prdis("%d,%d: csb {hc %u h %u c %u ht %u}", t, i, ktoa->hwcur, atok->head, atok->cur, ktoa->hwtail); - ND("%d,%d: kring {hc %u rh %u rc %u h %u c %u ht %u rt %u t %u}", + nm_prdis("%d,%d: kring {hc %u rh %u rc %u h %u c %u ht %u rt %u t %u}", t, i, kring->nr_hwcur, kring->rhead, kring->rcur, kring->ring->head, kring->ring->cur, kring->nr_hwtail, kring->rtail, kring->ring->tail); @@ -1179,7 +1179,6 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff struct ptnet_softc *sc = if_getsoftc(ifp); int native = (na == &sc->ptna->hwup.up); struct ptnet_queue *pq; - enum txrx t; int ret = 0; int i; @@ -1194,7 +1193,7 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff * in the RX rings, since we will not receive further interrupts * until these will be processed. */ if (native && !onoff && na->active_fds == 0) { - D("Exit netmap mode, re-enable interrupts"); + nm_prinf("Exit netmap mode, re-enable interrupts"); for (i = 0; i < sc->num_rings; i++) { pq = sc->queues + i; pq->atok->appl_need_kick = 1; @@ -1230,30 +1229,14 @@ ptnet_nm_register(struct netmap_adapter *na, int onoff /* If not native, don't call nm_set_native_flags, since we don't want * to replace if_transmit method, nor set NAF_NETMAP_ON */ if (native) { - for_rx_tx(t) { - for (i = 0; i <= nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_on(kring)) { - kring->nr_mode = NKR_NETMAP_ON; - } - } - } + netmap_krings_mode_commit(na, onoff); nm_set_native_flags(na); } } else { if (native) { nm_clear_native_flags(na); - for_rx_tx(t) { - for (i = 0; i <= nma_get_nrings(na, t); i++) { - struct netmap_kring *kring = NMR(na, t)[i]; - - if (nm_kring_pending_off(kring)) { - kring->nr_mode = NKR_NETMAP_OFF; - } - } - } + netmap_krings_mode_commit(na, onoff); } if (sc->ptna->backend_users == 0) { @@ -1728,7 +1711,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns if (!PTNET_Q_TRYLOCK(pq)) { /* We failed to acquire the lock, schedule the taskqueue. */ - RD(1, "Deferring TX work"); + nm_prlim(1, "Deferring TX work"); if (may_resched) { taskqueue_enqueue(pq->taskq, &pq->task); } @@ -1738,7 +1721,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns if (unlikely(!(ifp->if_drv_flags & IFF_DRV_RUNNING))) { PTNET_Q_UNLOCK(pq); - RD(1, "Interface is down"); + nm_prlim(1, "Interface is down"); return ENETDOWN; } @@ -1776,7 +1759,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns break; } - RD(1, "Found more slots by doublecheck"); + nm_prlim(1, "Found more slots by doublecheck"); /* More slots were freed before reactivating * the interrupts. */ atok->appl_need_kick = 0; @@ -1815,7 +1798,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns continue; } } - ND(1, "%s: [csum_flags %lX] vnet hdr: flags %x " + nm_prdis(1, "%s: [csum_flags %lX] vnet hdr: flags %x " "csum_start %u csum_ofs %u hdr_len = %u " "gso_size %u gso_type %x", __func__, mhead->m_pkthdr.csum_flags, vh->flags, @@ -1890,7 +1873,7 @@ ptnet_drain_transmit_queue(struct ptnet_queue *pq, uns } if (count >= budget && may_resched) { - DBG(RD(1, "out of budget: resched, %d mbufs pending\n", + DBG(nm_prlim(1, "out of budget: resched, %d mbufs pending\n", drbr_inuse(ifp, pq->bufring))); taskqueue_enqueue(pq->taskq, &pq->task); } @@ -1932,7 +1915,7 @@ ptnet_transmit(if_t ifp, struct mbuf *m) err = drbr_enqueue(ifp, pq->bufring, m); if (err) { /* ENOBUFS when the bufring is full */ - RD(1, "%s: drbr_enqueue() failed %d\n", + nm_prlim(1, "%s: drbr_enqueue() failed %d\n", __func__, err); pq->stats.errors ++; return err; @@ -2077,13 +2060,13 @@ host_sync: /* There is no good reason why host should * put the header in multiple netmap slots. * If this is the case, discard. */ - RD(1, "Fragmented vnet-hdr: dropping"); + nm_prlim(1, "Fragmented vnet-hdr: dropping"); head = ptnet_rx_discard(kring, head); pq->stats.iqdrops ++; deliver = 0; goto skip; } - ND(1, "%s: vnet hdr: flags %x csum_start %u " + nm_prdis(1, "%s: vnet hdr: flags %x csum_start %u " "csum_ofs %u hdr_len = %u gso_size %u " "gso_type %x", __func__, vh->flags, vh->csum_start, vh->csum_offset, vh->hdr_len, @@ -2147,7 +2130,7 @@ host_sync: /* The very last slot prepared by the host has * the NS_MOREFRAG set. Drop it and continue * the outer cycle (to do the double-check). */ - RD(1, "Incomplete packet: dropping"); + nm_prlim(1, "Incomplete packet: dropping"); m_freem(mhead); pq->stats.iqdrops ++; goto host_sync; @@ -2185,7 +2168,7 @@ host_sync: | VIRTIO_NET_HDR_F_DATA_VALID))) { if (unlikely(ptnet_rx_csum(mhead, vh))) { m_freem(mhead); - RD(1, "Csum offload error: dropping"); + nm_prlim(1, "Csum offload error: dropping"); pq->stats.iqdrops ++; deliver = 0; } @@ -2231,7 +2214,7 @@ escape: if (count >= budget && may_resched) { /* If we ran out of budget or the double-check found new * slots to process, schedule the taskqueue. */ - DBG(RD(1, "out of budget: resched h %u t %u\n", + DBG(nm_prlim(1, "out of budget: resched h %u t %u\n", head, ring->tail)); taskqueue_enqueue(pq->taskq, &pq->task); } @@ -2246,7 +2229,7 @@ ptnet_rx_task(void *context, int pending) { struct ptnet_queue *pq = context; - DBG(RD(1, "%s: pq #%u\n", __func__, pq->kring_id)); + DBG(nm_prlim(1, "%s: pq #%u\n", __func__, pq->kring_id)); ptnet_rx_eof(pq, PTNET_RX_BUDGET, true); } @@ -2255,7 +2238,7 @@ ptnet_tx_task(void *context, int pending) { struct ptnet_queue *pq = context; - DBG(RD(1, "%s: pq #%u\n", __func__, pq->kring_id)); + DBG(nm_prlim(1, "%s: pq #%u\n", __func__, pq->kring_id)); ptnet_drain_transmit_queue(pq, PTNET_TX_BUDGET, true); } @@ -2273,7 +2256,7 @@ ptnet_poll(if_t ifp, enum poll_cmd cmd, int budget) KASSERT(sc->num_rings > 0, ("Found no queues in while polling ptnet")); queue_budget = MAX(budget / sc->num_rings, 1); - RD(1, "Per-queue budget is %d", queue_budget); + nm_prlim(1, "Per-queue budget is %d", queue_budget); while (budget) { unsigned int rcnt = 0; Modified: projects/clang800-import/sys/dev/netmap/if_vtnet_netmap.h ============================================================================== --- projects/clang800-import/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 5 19:48:24 2019 (r343806) +++ projects/clang800-import/sys/dev/netmap/if_vtnet_netmap.h Tue Feb 5 19:50:46 2019 (r343807) @@ -90,7 +90,6 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201902051950.x15JolB7000924>