Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Sep 2019 00:46:24 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r352051 - in projects/nfsv42/sys: amd64/amd64 amd64/conf amd64/include amd64/linux amd64/linux32 amd64/vmm amd64/vmm/amd amd64/vmm/intel amd64/vmm/io arm/allwinner arm/allwinner/a20 arm...
Message-ID:  <201909090046.x890kONB082069@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rmacklem
Date: Mon Sep  9 00:46:22 2019
New Revision: 352051
URL: https://svnweb.freebsd.org/changeset/base/352051

Log:
  Merge in an up to date head kernel.

Added:
  projects/nfsv42/sys/amd64/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/amd64/include/pcpu_aux.h
  projects/nfsv42/sys/amd64/linux/linux_locore.asm
     - copied unchanged from r352050, head/sys/amd64/linux/linux_locore.asm
  projects/nfsv42/sys/amd64/linux32/linux32_locore.asm
     - copied unchanged from r352050, head/sys/amd64/linux32/linux32_locore.asm
  projects/nfsv42/sys/arm/allwinner/clkng/aw_clk_m.c
     - copied unchanged from r352050, head/sys/arm/allwinner/clkng/aw_clk_m.c
  projects/nfsv42/sys/arm/allwinner/clkng/aw_clk_m.h
     - copied unchanged from r352050, head/sys/arm/allwinner/clkng/aw_clk_m.h
  projects/nfsv42/sys/arm/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/arm/include/pcpu_aux.h
  projects/nfsv42/sys/arm64/conf/Makefile
     - copied unchanged from r352050, head/sys/arm64/conf/Makefile
  projects/nfsv42/sys/arm64/conf/NOTES
     - copied unchanged from r352050, head/sys/arm64/conf/NOTES
  projects/nfsv42/sys/arm64/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/arm64/include/pcpu_aux.h
  projects/nfsv42/sys/arm64/linux/linux_locore.asm
     - copied unchanged from r352050, head/sys/arm64/linux/linux_locore.asm
  projects/nfsv42/sys/conf/files.x86
     - copied unchanged from r352050, head/sys/conf/files.x86
  projects/nfsv42/sys/contrib/zstd/contrib/seekable_format/examples/seekable_decompression_mem.c
     - copied unchanged from r352050, head/sys/contrib/zstd/contrib/seekable_format/examples/seekable_decompression_mem.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress_literals.c
     - copied unchanged from r352050, head/sys/contrib/zstd/lib/compress/zstd_compress_literals.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress_literals.h
     - copied unchanged from r352050, head/sys/contrib/zstd/lib/compress/zstd_compress_literals.h
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress_sequences.c
     - copied unchanged from r352050, head/sys/contrib/zstd/lib/compress/zstd_compress_sequences.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress_sequences.h
     - copied unchanged from r352050, head/sys/contrib/zstd/lib/compress/zstd_compress_sequences.h
  projects/nfsv42/sys/contrib/zstd/tests/bigdict.c
     - copied unchanged from r352050, head/sys/contrib/zstd/tests/bigdict.c
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/simple_compress.c
     - copied unchanged from r352050, head/sys/contrib/zstd/tests/fuzz/simple_compress.c
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/zstd_frame_info.c
     - copied unchanged from r352050, head/sys/contrib/zstd/tests/fuzz/zstd_frame_info.c
  projects/nfsv42/sys/dev/altera/dwc/
     - copied from r352050, head/sys/dev/altera/dwc/
  projects/nfsv42/sys/dev/gpio/dwgpio/
     - copied from r352050, head/sys/dev/gpio/dwgpio/
  projects/nfsv42/sys/dev/iicbus/ads111x.c
     - copied unchanged from r352050, head/sys/dev/iicbus/ads111x.c
  projects/nfsv42/sys/dev/ntb/test/
     - copied from r352050, head/sys/dev/ntb/test/
  projects/nfsv42/sys/dev/nvme/nvme_ahci.c
     - copied unchanged from r352050, head/sys/dev/nvme/nvme_ahci.c
  projects/nfsv42/sys/dev/nvme/nvme_pci.c
     - copied unchanged from r352050, head/sys/dev/nvme/nvme_pci.c
  projects/nfsv42/sys/dev/usb/net/if_cdceem.c
     - copied unchanged from r352050, head/sys/dev/usb/net/if_cdceem.c
  projects/nfsv42/sys/dev/usb/template/usb_template_cdceem.c
     - copied unchanged from r352050, head/sys/dev/usb/template/usb_template_cdceem.c
  projects/nfsv42/sys/dev/zlib/
     - copied from r352050, head/sys/dev/zlib/
  projects/nfsv42/sys/dts/arm/overlays/sun8i-h3-ths.dtso
     - copied unchanged from r352050, head/sys/dts/arm/overlays/sun8i-h3-ths.dtso
  projects/nfsv42/sys/geom/geom_dbg.h
     - copied unchanged from r352050, head/sys/geom/geom_dbg.h
  projects/nfsv42/sys/geom/uzip/g_uzip_zstd.c
     - copied unchanged from r352050, head/sys/geom/uzip/g_uzip_zstd.c
  projects/nfsv42/sys/geom/uzip/g_uzip_zstd.h
     - copied unchanged from r352050, head/sys/geom/uzip/g_uzip_zstd.h
  projects/nfsv42/sys/i386/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/i386/include/pcpu_aux.h
  projects/nfsv42/sys/i386/linux/linux_locore.asm
     - copied unchanged from r352050, head/sys/i386/linux/linux_locore.asm
  projects/nfsv42/sys/kern/uipc_ktls.c
     - copied unchanged from r352050, head/sys/kern/uipc_ktls.c
  projects/nfsv42/sys/libkern/strchrnul.c
     - copied unchanged from r352050, head/sys/libkern/strchrnul.c
  projects/nfsv42/sys/mips/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/mips/include/pcpu_aux.h
  projects/nfsv42/sys/modules/i2c/ads111x/
     - copied from r352050, head/sys/modules/i2c/ads111x/
  projects/nfsv42/sys/modules/ktls_ocf/
     - copied from r352050, head/sys/modules/ktls_ocf/
  projects/nfsv42/sys/modules/ntb/ntb_tool/
     - copied from r352050, head/sys/modules/ntb/ntb_tool/
  projects/nfsv42/sys/modules/usb/cdceem/
     - copied from r352050, head/sys/modules/usb/cdceem/
  projects/nfsv42/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_intel.c
     - copied unchanged from r352050, head/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_intel.c
  projects/nfsv42/sys/netinet/tcp_ratelimit.c
     - copied unchanged from r352050, head/sys/netinet/tcp_ratelimit.c
  projects/nfsv42/sys/netinet/tcp_ratelimit.h
     - copied unchanged from r352050, head/sys/netinet/tcp_ratelimit.h
  projects/nfsv42/sys/ofed/include/rdma/rdma_sdp.h
     - copied unchanged from r352050, head/sys/ofed/include/rdma/rdma_sdp.h
  projects/nfsv42/sys/opencrypto/ktls_ocf.c
     - copied unchanged from r352050, head/sys/opencrypto/ktls_ocf.c
  projects/nfsv42/sys/powerpc/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/powerpc/include/pcpu_aux.h
  projects/nfsv42/sys/riscv/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/riscv/include/pcpu_aux.h
  projects/nfsv42/sys/sparc64/include/pcpu_aux.h
     - copied unchanged from r352050, head/sys/sparc64/include/pcpu_aux.h
  projects/nfsv42/sys/sys/ktls.h
     - copied unchanged from r352050, head/sys/sys/ktls.h
  projects/nfsv42/sys/sys/qmath.h
     - copied unchanged from r352050, head/sys/sys/qmath.h
  projects/nfsv42/sys/x86/conf/
     - copied from r352050, head/sys/x86/conf/
Deleted:
  projects/nfsv42/sys/amd64/linux/linux_locore.s
  projects/nfsv42/sys/amd64/linux32/linux32_locore.s
  projects/nfsv42/sys/arm/altera/socfpga/socfpga_gpio.c
  projects/nfsv42/sys/arm/arm/elf_trampoline.c
  projects/nfsv42/sys/arm/arm/inckern.S
  projects/nfsv42/sys/arm64/linux/linux_locore.s
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/adler32.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/crc32.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/deflate.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/deflate.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inffast.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inffast.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inffixed.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inflate.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inflate.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inftrees.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/inftrees.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/opensolaris_crc32.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/trees.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zconf.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zlib.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zmod_subr.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zutil.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zutil.h
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/default.options
  projects/nfsv42/sys/dev/netmap/netmap_pt.c
  projects/nfsv42/sys/fs/fuse/fuse_param.h
  projects/nfsv42/sys/geom/geom_bsd.c
  projects/nfsv42/sys/geom/geom_fox.c
  projects/nfsv42/sys/geom/geom_mbr.c
  projects/nfsv42/sys/geom/geom_mbr_enc.c
  projects/nfsv42/sys/geom/geom_sunlabel.c
  projects/nfsv42/sys/geom/geom_sunlabel_enc.c
  projects/nfsv42/sys/geom/geom_vol_ffs.c
  projects/nfsv42/sys/i386/linux/linux_locore.s
  projects/nfsv42/sys/kern/imgact_gzip.c
  projects/nfsv42/sys/kern/subr_inflate.c
  projects/nfsv42/sys/libkern/zlib.c
  projects/nfsv42/sys/modules/geom/geom_bsd/
  projects/nfsv42/sys/modules/geom/geom_fox/
  projects/nfsv42/sys/modules/geom/geom_mbr/
  projects/nfsv42/sys/modules/geom/geom_sunlabel/
  projects/nfsv42/sys/modules/geom/geom_vol_ffs/
  projects/nfsv42/sys/sys/_kstack_cache.h
  projects/nfsv42/sys/sys/dir.h
  projects/nfsv42/sys/sys/inflate.h
  projects/nfsv42/sys/sys/sun_disklabel.h
  projects/nfsv42/sys/sys/zlib.h
  projects/nfsv42/sys/sys/zutil.h
Modified:
  projects/nfsv42/sys/amd64/amd64/cpu_switch.S
  projects/nfsv42/sys/amd64/amd64/elf_machdep.c
  projects/nfsv42/sys/amd64/amd64/exception.S
  projects/nfsv42/sys/amd64/amd64/machdep.c
  projects/nfsv42/sys/amd64/amd64/mp_machdep.c
  projects/nfsv42/sys/amd64/amd64/pmap.c
  projects/nfsv42/sys/amd64/amd64/vm_machdep.c
  projects/nfsv42/sys/amd64/conf/Makefile
  projects/nfsv42/sys/amd64/conf/NOTES
  projects/nfsv42/sys/amd64/include/asmacros.h
  projects/nfsv42/sys/amd64/include/counter.h
  projects/nfsv42/sys/amd64/include/gdb_machdep.h
  projects/nfsv42/sys/amd64/include/md_var.h
  projects/nfsv42/sys/amd64/include/pcpu.h
  projects/nfsv42/sys/amd64/include/pmap.h
  projects/nfsv42/sys/amd64/include/vmm.h
  projects/nfsv42/sys/amd64/include/vmparam.h
  projects/nfsv42/sys/amd64/linux/linux_ptrace.c
  projects/nfsv42/sys/amd64/linux/linux_sysvec.c
  projects/nfsv42/sys/amd64/vmm/amd/svm.c
  projects/nfsv42/sys/amd64/vmm/intel/vmx.c
  projects/nfsv42/sys/amd64/vmm/intel/vmx_msr.c
  projects/nfsv42/sys/amd64/vmm/io/ppt.c
  projects/nfsv42/sys/amd64/vmm/io/ppt.h
  projects/nfsv42/sys/amd64/vmm/io/vlapic.c
  projects/nfsv42/sys/amd64/vmm/io/vlapic.h
  projects/nfsv42/sys/amd64/vmm/io/vlapic_priv.h
  projects/nfsv42/sys/amd64/vmm/vmm.c
  projects/nfsv42/sys/amd64/vmm/vmm_host.h
  projects/nfsv42/sys/amd64/vmm/vmm_lapic.c
  projects/nfsv42/sys/amd64/vmm/vmm_lapic.h
  projects/nfsv42/sys/amd64/vmm/vmm_util.c
  projects/nfsv42/sys/amd64/vmm/vmm_util.h
  projects/nfsv42/sys/arm/allwinner/a10_sramc.c
  projects/nfsv42/sys/arm/allwinner/a20/a20_cpu_cfg.c
  projects/nfsv42/sys/arm/allwinner/aw_gmacclk.c
  projects/nfsv42/sys/arm/allwinner/aw_reset.c
  projects/nfsv42/sys/arm/allwinner/aw_rsb.c
  projects/nfsv42/sys/arm/allwinner/aw_rtc.c
  projects/nfsv42/sys/arm/allwinner/aw_sid.c
  projects/nfsv42/sys/arm/allwinner/aw_syscon.c
  projects/nfsv42/sys/arm/allwinner/clkng/aw_ccung.c
  projects/nfsv42/sys/arm/allwinner/clkng/aw_ccung.h
  projects/nfsv42/sys/arm/allwinner/clkng/aw_clk.h
  projects/nfsv42/sys/arm/allwinner/clkng/aw_clk_frac.c
  projects/nfsv42/sys/arm/allwinner/clkng/aw_clk_frac.h
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_a10.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_a13.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_a31.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_a64.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_a83t.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_de2.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_h3.c
  projects/nfsv42/sys/arm/allwinner/clkng/ccu_sun8i_r.c
  projects/nfsv42/sys/arm/allwinner/files.allwinner
  projects/nfsv42/sys/arm/altera/socfpga/files.socfpga
  projects/nfsv42/sys/arm/arm/busdma_machdep-v4.c
  projects/nfsv42/sys/arm/arm/busdma_machdep-v6.c
  projects/nfsv42/sys/arm/arm/mem.c
  projects/nfsv42/sys/arm/arm/minidump_machdep.c
  projects/nfsv42/sys/arm/arm/mp_machdep.c
  projects/nfsv42/sys/arm/arm/physmem.c
  projects/nfsv42/sys/arm/broadcom/bcm2835/bcm2835_fbd.c
  projects/nfsv42/sys/arm/broadcom/bcm2835/bcm2835_mbox.c
  projects/nfsv42/sys/arm/broadcom/bcm2835/bcm2835_mbox_prop.h
  projects/nfsv42/sys/arm/conf/ALPINE
  projects/nfsv42/sys/arm/conf/ARMADA38X
  projects/nfsv42/sys/arm/conf/ARMADAXP
  projects/nfsv42/sys/arm/conf/DB-78XXX
  projects/nfsv42/sys/arm/conf/DB-88F5XXX
  projects/nfsv42/sys/arm/conf/DB-88F6XXX
  projects/nfsv42/sys/arm/conf/GENERIC
  projects/nfsv42/sys/arm/conf/NOTES
  projects/nfsv42/sys/arm/conf/NOTES.armv5
  projects/nfsv42/sys/arm/conf/RT1310
  projects/nfsv42/sys/arm/conf/SHEEVAPLUG
  projects/nfsv42/sys/arm/conf/SOCFPGA
  projects/nfsv42/sys/arm/conf/TEGRA124
  projects/nfsv42/sys/arm/conf/TS7800
  projects/nfsv42/sys/arm/conf/VYBRID
  projects/nfsv42/sys/arm/include/counter.h
  projects/nfsv42/sys/arm/include/pmap.h
  projects/nfsv42/sys/arm/mv/a37x0_gpio.c
  projects/nfsv42/sys/arm/mv/discovery/std.db78xxx
  projects/nfsv42/sys/arm/mv/orion/std.db88f5xxx
  projects/nfsv42/sys/arm/mv/orion/std.ts7800
  projects/nfsv42/sys/arm/ralink/std.ralink
  projects/nfsv42/sys/arm/samsung/exynos/exynos5_combiner.c
  projects/nfsv42/sys/arm/samsung/exynos/exynos5_pad.c
  projects/nfsv42/sys/arm/ti/am335x/am335x_pmic.c
  projects/nfsv42/sys/arm/ti/am335x/files.am335x
  projects/nfsv42/sys/arm/ti/am335x/tda19988.c
  projects/nfsv42/sys/arm/ti/cpsw/if_cpsw.c
  projects/nfsv42/sys/arm/ti/ti_hwmods.c
  projects/nfsv42/sys/arm/ti/ti_sdhci.c
  projects/nfsv42/sys/arm64/arm64/freebsd32_machdep.c
  projects/nfsv42/sys/arm64/arm64/identcpu.c
  projects/nfsv42/sys/arm64/arm64/mp_machdep.c
  projects/nfsv42/sys/arm64/arm64/pmap.c
  projects/nfsv42/sys/arm64/conf/GENERIC
  projects/nfsv42/sys/arm64/include/counter.h
  projects/nfsv42/sys/arm64/include/cpu.h
  projects/nfsv42/sys/arm64/include/pmap.h
  projects/nfsv42/sys/arm64/include/pte.h
  projects/nfsv42/sys/arm64/rockchip/if_dwc_rk.c
  projects/nfsv42/sys/arm64/rockchip/rk_gpio.c
  projects/nfsv42/sys/arm64/rockchip/rk_grf.c
  projects/nfsv42/sys/arm64/rockchip/rk_i2c.c
  projects/nfsv42/sys/arm64/rockchip/rk_pinctrl.c
  projects/nfsv42/sys/cam/ata/ata_xpt.c
  projects/nfsv42/sys/cam/ctl/ctl.c
  projects/nfsv42/sys/cam/ctl/ctl_backend_ramdisk.c
  projects/nfsv42/sys/cam/mmc/mmc_xpt.c
  projects/nfsv42/sys/cam/nvme/nvme_xpt.c
  projects/nfsv42/sys/cam/scsi/scsi_all.c
  projects/nfsv42/sys/cam/scsi/scsi_all.h
  projects/nfsv42/sys/cam/scsi/scsi_cd.c
  projects/nfsv42/sys/cam/scsi/scsi_cd.h
  projects/nfsv42/sys/cam/scsi/scsi_enc_ses.c
  projects/nfsv42/sys/cam/scsi/scsi_xpt.c
  projects/nfsv42/sys/cddl/boot/zfs/zfsimpl.h
  projects/nfsv42/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/vnode.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/os/list.c
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/sys/list.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/sys/list_impl.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/sys/note.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/sys/sysmacros.h
  projects/nfsv42/sys/cddl/contrib/opensolaris/uts/common/zmod/zmod.c
  projects/nfsv42/sys/compat/cloudabi/cloudabi_fd.c
  projects/nfsv42/sys/compat/freebsd32/freebsd32_capability.c
  projects/nfsv42/sys/compat/freebsd32/freebsd32_misc.c
  projects/nfsv42/sys/compat/freebsd32/freebsd32_proto.h
  projects/nfsv42/sys/compat/freebsd32/freebsd32_syscall.h
  projects/nfsv42/sys/compat/freebsd32/freebsd32_syscalls.c
  projects/nfsv42/sys/compat/freebsd32/freebsd32_sysent.c
  projects/nfsv42/sys/compat/freebsd32/freebsd32_systrace_args.c
  projects/nfsv42/sys/compat/freebsd32/syscalls.master
  projects/nfsv42/sys/compat/ia32/ia32_sysvec.c
  projects/nfsv42/sys/compat/linprocfs/linprocfs.c
  projects/nfsv42/sys/compat/linux/linux_mib.c
  projects/nfsv42/sys/compat/linux/linux_mib.h
  projects/nfsv42/sys/compat/linux/linux_misc.c
  projects/nfsv42/sys/compat/linux/linux_uid16.c
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/device.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/gfp.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/interrupt.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/io.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/lockdep.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/pci.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/sysfs.h
  projects/nfsv42/sys/compat/linuxkpi/common/include/linux/workqueue.h
  projects/nfsv42/sys/compat/linuxkpi/common/src/linux_pci.c
  projects/nfsv42/sys/conf/Makefile.arm
  projects/nfsv42/sys/conf/NOTES
  projects/nfsv42/sys/conf/files
  projects/nfsv42/sys/conf/files.amd64
  projects/nfsv42/sys/conf/files.arm
  projects/nfsv42/sys/conf/files.arm64
  projects/nfsv42/sys/conf/files.i386
  projects/nfsv42/sys/conf/files.sparc64
  projects/nfsv42/sys/conf/kern.mk
  projects/nfsv42/sys/conf/kern.post.mk
  projects/nfsv42/sys/conf/kern.pre.mk
  projects/nfsv42/sys/conf/kmod.mk
  projects/nfsv42/sys/conf/makeLINT.mk
  projects/nfsv42/sys/conf/newvers.sh
  projects/nfsv42/sys/conf/options
  projects/nfsv42/sys/contrib/dev/acpica/components/executer/exconfig.c
  projects/nfsv42/sys/contrib/dev/acpica/include/platform/acfreebsd.h
  projects/nfsv42/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_xmit_ds.c
  projects/nfsv42/sys/contrib/ipfilter/netinet/fil.c
  projects/nfsv42/sys/contrib/ipfilter/netinet/ip_fil.h
  projects/nfsv42/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c
  projects/nfsv42/sys/contrib/ipfilter/netinet/ip_nat.c
  projects/nfsv42/sys/contrib/ipfilter/netinet/ip_state.c
  projects/nfsv42/sys/contrib/ipfilter/netinet/mlfk_ipl.c
  projects/nfsv42/sys/contrib/ncsw/Peripherals/FM/HC/hc.c
  projects/nfsv42/sys/contrib/ncsw/Peripherals/FM/Pcd/fm_cc.c
  projects/nfsv42/sys/contrib/ncsw/Peripherals/QM/qm_portal_fqr.c
  projects/nfsv42/sys/contrib/ncsw/inc/Peripherals/dpaa_ext.h
  projects/nfsv42/sys/contrib/ncsw/user/env/xx.c
  projects/nfsv42/sys/contrib/zlib/deflate.c
  projects/nfsv42/sys/contrib/zlib/infback.c
  projects/nfsv42/sys/contrib/zlib/inflate.c
  projects/nfsv42/sys/contrib/zlib/zconf.h
  projects/nfsv42/sys/contrib/zlib/zlib.h
  projects/nfsv42/sys/contrib/zlib/zutil.h
  projects/nfsv42/sys/contrib/zstd/CHANGELOG
  projects/nfsv42/sys/contrib/zstd/contrib/largeNbDicts/largeNbDicts.c
  projects/nfsv42/sys/contrib/zstd/contrib/seekable_format/examples/.gitignore
  projects/nfsv42/sys/contrib/zstd/contrib/seekable_format/examples/Makefile
  projects/nfsv42/sys/contrib/zstd/contrib/seekable_format/zstdseek_decompress.c
  projects/nfsv42/sys/contrib/zstd/doc/zstd_compression_format.md
  projects/nfsv42/sys/contrib/zstd/doc/zstd_manual.html
  projects/nfsv42/sys/contrib/zstd/examples/Makefile
  projects/nfsv42/sys/contrib/zstd/lib/Makefile
  projects/nfsv42/sys/contrib/zstd/lib/common/compiler.h
  projects/nfsv42/sys/contrib/zstd/lib/common/zstd_internal.h
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_compress_internal.h
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_double_fast.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_fast.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_lazy.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_ldm.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstd_opt.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstdmt_compress.c
  projects/nfsv42/sys/contrib/zstd/lib/compress/zstdmt_compress.h
  projects/nfsv42/sys/contrib/zstd/lib/decompress/zstd_decompress.c
  projects/nfsv42/sys/contrib/zstd/lib/decompress/zstd_decompress_block.c
  projects/nfsv42/sys/contrib/zstd/lib/dictBuilder/cover.c
  projects/nfsv42/sys/contrib/zstd/lib/dictBuilder/cover.h
  projects/nfsv42/sys/contrib/zstd/lib/dictBuilder/fastcover.c
  projects/nfsv42/sys/contrib/zstd/lib/dictBuilder/zdict.c
  projects/nfsv42/sys/contrib/zstd/lib/dictBuilder/zdict.h
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_legacy.h
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v01.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v02.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v03.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v04.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v05.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v06.c
  projects/nfsv42/sys/contrib/zstd/lib/legacy/zstd_v07.c
  projects/nfsv42/sys/contrib/zstd/lib/zstd.h
  projects/nfsv42/sys/contrib/zstd/programs/.gitignore
  projects/nfsv42/sys/contrib/zstd/programs/README.md
  projects/nfsv42/sys/contrib/zstd/programs/benchfn.c
  projects/nfsv42/sys/contrib/zstd/programs/fileio.c
  projects/nfsv42/sys/contrib/zstd/programs/fileio.h
  projects/nfsv42/sys/contrib/zstd/programs/util.c
  projects/nfsv42/sys/contrib/zstd/programs/zstd.1
  projects/nfsv42/sys/contrib/zstd/programs/zstd.1.md
  projects/nfsv42/sys/contrib/zstd/programs/zstdcli.c
  projects/nfsv42/sys/contrib/zstd/programs/zstdgrep
  projects/nfsv42/sys/contrib/zstd/programs/zstdgrep.1
  projects/nfsv42/sys/contrib/zstd/programs/zstdless.1
  projects/nfsv42/sys/contrib/zstd/tests/.gitignore
  projects/nfsv42/sys/contrib/zstd/tests/Makefile
  projects/nfsv42/sys/contrib/zstd/tests/decodecorpus.c
  projects/nfsv42/sys/contrib/zstd/tests/fullbench.c
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/Makefile
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/dictionary_decompress.c
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/fuzz.py
  projects/nfsv42/sys/contrib/zstd/tests/fuzz/simple_decompress.c
  projects/nfsv42/sys/contrib/zstd/tests/fuzzer.c
  projects/nfsv42/sys/contrib/zstd/tests/paramgrill.c
  projects/nfsv42/sys/contrib/zstd/tests/playTests.sh
  projects/nfsv42/sys/contrib/zstd/tests/poolTests.c
  projects/nfsv42/sys/contrib/zstd/tests/regression/results.csv
  projects/nfsv42/sys/contrib/zstd/tests/zstreamtest.c
  projects/nfsv42/sys/contrib/zstd/zlibWrapper/.gitignore
  projects/nfsv42/sys/crypto/armv8/armv8_crypto.c
  projects/nfsv42/sys/crypto/blowfish/bf_skey.c
  projects/nfsv42/sys/crypto/blowfish/blowfish.h
  projects/nfsv42/sys/crypto/chacha20/chacha-sw.c
  projects/nfsv42/sys/crypto/des/des.h
  projects/nfsv42/sys/crypto/des/des_ecb.c
  projects/nfsv42/sys/crypto/des/des_setkey.c
  projects/nfsv42/sys/ddb/db_ps.c
  projects/nfsv42/sys/ddb/db_thread.c
  projects/nfsv42/sys/dev/acpi_support/acpi_wmi.c
  projects/nfsv42/sys/dev/acpica/acpi.c
  projects/nfsv42/sys/dev/acpica/acpi_pci_link.c
  projects/nfsv42/sys/dev/acpica/acpi_pcib_acpi.c
  projects/nfsv42/sys/dev/acpica/acpi_pxm.c
  projects/nfsv42/sys/dev/acpica/acpi_resource.c
  projects/nfsv42/sys/dev/acpica/acpivar.h
  projects/nfsv42/sys/dev/ahci/ahci.c
  projects/nfsv42/sys/dev/ahci/ahci.h
  projects/nfsv42/sys/dev/ahci/ahci_pci.c
  projects/nfsv42/sys/dev/amdsmn/amdsmn.c
  projects/nfsv42/sys/dev/amdtemp/amdtemp.c
  projects/nfsv42/sys/dev/bhnd/nvram/bhnd_nvram_data_tlv.c
  projects/nfsv42/sys/dev/bhnd/nvram/bhnd_nvram_store.c
  projects/nfsv42/sys/dev/bhnd/nvram/bhnd_nvram_value.c
  projects/nfsv42/sys/dev/bhnd/nvram/bhnd_nvram_value_prf.c
  projects/nfsv42/sys/dev/bxe/bxe.h
  projects/nfsv42/sys/dev/cxgbe/adapter.h
  projects/nfsv42/sys/dev/cxgbe/cxgbei/icl_cxgbei.c
  projects/nfsv42/sys/dev/cxgbe/iw_cxgbe/qp.c
  projects/nfsv42/sys/dev/cxgbe/t4_main.c
  projects/nfsv42/sys/dev/cxgbe/t4_sched.c
  projects/nfsv42/sys/dev/cxgbe/t4_sge.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_connect.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_cpl_io.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_ddp.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_listen.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_tls.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_tom.c
  projects/nfsv42/sys/dev/cxgbe/tom/t4_tom.h
  projects/nfsv42/sys/dev/dpaa/if_dtsec_rm.c
  projects/nfsv42/sys/dev/drm2/drmP.h
  projects/nfsv42/sys/dev/extres/clk/clk.h
  projects/nfsv42/sys/dev/extres/syscon/syscon.c
  projects/nfsv42/sys/dev/extres/syscon/syscon_if.m
  projects/nfsv42/sys/dev/fdc/fdc.c
  projects/nfsv42/sys/dev/fdt/simple_mfd.c
  projects/nfsv42/sys/dev/gpio/gpiopps.c
  projects/nfsv42/sys/dev/ichsmb/ichsmb.c
  projects/nfsv42/sys/dev/iicbus/twsi/twsi.c
  projects/nfsv42/sys/dev/md/md.c
  projects/nfsv42/sys/dev/mii/micphy.c
  projects/nfsv42/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
  projects/nfsv42/sys/dev/mmc/host/dwmmc.c
  projects/nfsv42/sys/dev/mmc/host/dwmmc_altera.c
  projects/nfsv42/sys/dev/mmc/host/dwmmc_var.h
  projects/nfsv42/sys/dev/mxge/if_mxge.c
  projects/nfsv42/sys/dev/netmap/netmap.c
  projects/nfsv42/sys/dev/netmap/netmap_kern.h
  projects/nfsv42/sys/dev/netmap/netmap_kloop.c
  projects/nfsv42/sys/dev/netmap/netmap_mem2.c
  projects/nfsv42/sys/dev/ntb/ntb_hw/ntb_hw_amd.c
  projects/nfsv42/sys/dev/ntb/ntb_hw/ntb_hw_amd.h
  projects/nfsv42/sys/dev/ntb/ntb_hw/ntb_hw_intel.c
  projects/nfsv42/sys/dev/ntb/ntb_hw/ntb_hw_plx.c
  projects/nfsv42/sys/dev/ntb/ntb_transport.c
  projects/nfsv42/sys/dev/nvd/nvd.c
  projects/nfsv42/sys/dev/nvdimm/nvdimm.c
  projects/nfsv42/sys/dev/nvme/nvme.c
  projects/nfsv42/sys/dev/nvme/nvme.h
  projects/nfsv42/sys/dev/nvme/nvme_ctrlr.c
  projects/nfsv42/sys/dev/nvme/nvme_ns.c
  projects/nfsv42/sys/dev/nvme/nvme_ns_cmd.c
  projects/nfsv42/sys/dev/nvme/nvme_private.h
  projects/nfsv42/sys/dev/nvme/nvme_qpair.c
  projects/nfsv42/sys/dev/oce/oce_if.c
  projects/nfsv42/sys/dev/ofw/ofw_subr.c
  projects/nfsv42/sys/dev/ofw/ofwpci.c
  projects/nfsv42/sys/dev/pci/pci_host_generic.c
  projects/nfsv42/sys/dev/pci/pci_pci.c
  projects/nfsv42/sys/dev/pci/vga_pci.c
  projects/nfsv42/sys/dev/qlxgbe/ql_isr.c
  projects/nfsv42/sys/dev/ral/rt2860.c
  projects/nfsv42/sys/dev/ral/rt2860var.h
  projects/nfsv42/sys/dev/random/darn.c
  projects/nfsv42/sys/dev/random/fortuna.c
  projects/nfsv42/sys/dev/random/ivy.c
  projects/nfsv42/sys/dev/random/nehemiah.c
  projects/nfsv42/sys/dev/random/random_harvestq.c
  projects/nfsv42/sys/dev/random/randomdev.c
  projects/nfsv42/sys/dev/rtwn/pci/rtwn_pci_attach.h
  projects/nfsv42/sys/dev/rtwn/usb/rtwn_usb_attach.h
  projects/nfsv42/sys/dev/sdhci/sdhci.c
  projects/nfsv42/sys/dev/sfxge/common/ef10_impl.h
  projects/nfsv42/sys/dev/sfxge/common/ef10_nvram.c
  projects/nfsv42/sys/dev/sfxge/common/ef10_rx.c
  projects/nfsv42/sys/dev/sfxge/common/efsys.h
  projects/nfsv42/sys/dev/sfxge/common/efx.h
  projects/nfsv42/sys/dev/sfxge/common/efx_mcdi.h
  projects/nfsv42/sys/dev/sfxge/common/efx_tx.c
  projects/nfsv42/sys/dev/sfxge/sfxge_port.c
  projects/nfsv42/sys/dev/sfxge/sfxge_rx.c
  projects/nfsv42/sys/dev/sound/midi/midi.c
  projects/nfsv42/sys/dev/sound/midi/sequencer.c
  projects/nfsv42/sys/dev/sound/pci/hda/hdaa_patches.c
  projects/nfsv42/sys/dev/sound/pci/hda/hdac.h
  projects/nfsv42/sys/dev/sound/pcm/channel.h
  projects/nfsv42/sys/dev/superio/superio.c
  projects/nfsv42/sys/dev/superio/superio.h
  projects/nfsv42/sys/dev/usb/controller/xhci_pci.c
  projects/nfsv42/sys/dev/usb/net/if_aue.c
  projects/nfsv42/sys/dev/usb/net/if_axe.c
  projects/nfsv42/sys/dev/usb/net/if_axge.c
  projects/nfsv42/sys/dev/usb/net/if_mos.c
  projects/nfsv42/sys/dev/usb/net/if_muge.c
  projects/nfsv42/sys/dev/usb/net/if_rue.c
  projects/nfsv42/sys/dev/usb/net/if_smsc.c
  projects/nfsv42/sys/dev/usb/net/if_udav.c
  projects/nfsv42/sys/dev/usb/net/if_ure.c
  projects/nfsv42/sys/dev/usb/net/if_urndis.c
  projects/nfsv42/sys/dev/usb/net/usb_ethernet.c
  projects/nfsv42/sys/dev/usb/net/usb_ethernet.h
  projects/nfsv42/sys/dev/usb/template/usb_template.c
  projects/nfsv42/sys/dev/usb/template/usb_template.h
  projects/nfsv42/sys/dev/usb/usb.h
  projects/nfsv42/sys/dev/usb/usb_hid.c
  projects/nfsv42/sys/dev/usb/usb_hub_acpi.c
  projects/nfsv42/sys/dev/usb/usb_ioctl.h
  projects/nfsv42/sys/dev/usb/usbdevs
  projects/nfsv42/sys/dev/vmware/vmci/vmci.c
  projects/nfsv42/sys/dev/vnic/nicvf_main.c
  projects/nfsv42/sys/dev/vnic/thunder_bgx.c
  projects/nfsv42/sys/dev/xdma/xdma_sg.c
  projects/nfsv42/sys/dts/arm/overlays/sun8i-h3-sid.dtso
  projects/nfsv42/sys/fs/cd9660/cd9660_node.c
  projects/nfsv42/sys/fs/cd9660/cd9660_vfsops.c
  projects/nfsv42/sys/fs/cd9660/cd9660_vnops.c
  projects/nfsv42/sys/fs/devfs/devfs_vnops.c
  projects/nfsv42/sys/fs/ext2fs/ext2_alloc.c
  projects/nfsv42/sys/fs/ext2fs/ext2_balloc.c
  projects/nfsv42/sys/fs/ext2fs/ext2_extattr.c
  projects/nfsv42/sys/fs/ext2fs/ext2_extents.c
  projects/nfsv42/sys/fs/ext2fs/ext2_inode.c
  projects/nfsv42/sys/fs/ext2fs/ext2_vfsops.c
  projects/nfsv42/sys/fs/ext2fs/ext2_vnops.c
  projects/nfsv42/sys/fs/fuse/fuse.h
  projects/nfsv42/sys/fs/fuse/fuse_device.c
  projects/nfsv42/sys/fs/fuse/fuse_file.c
  projects/nfsv42/sys/fs/fuse/fuse_file.h
  projects/nfsv42/sys/fs/fuse/fuse_internal.c
  projects/nfsv42/sys/fs/fuse/fuse_internal.h
  projects/nfsv42/sys/fs/fuse/fuse_io.c
  projects/nfsv42/sys/fs/fuse/fuse_io.h
  projects/nfsv42/sys/fs/fuse/fuse_ipc.c
  projects/nfsv42/sys/fs/fuse/fuse_ipc.h
  projects/nfsv42/sys/fs/fuse/fuse_kernel.h
  projects/nfsv42/sys/fs/fuse/fuse_main.c
  projects/nfsv42/sys/fs/fuse/fuse_node.c
  projects/nfsv42/sys/fs/fuse/fuse_node.h
  projects/nfsv42/sys/fs/fuse/fuse_vfsops.c
  projects/nfsv42/sys/fs/fuse/fuse_vnops.c
  projects/nfsv42/sys/fs/msdosfs/denode.h
  projects/nfsv42/sys/fs/msdosfs/fat.h
  projects/nfsv42/sys/fs/msdosfs/msdosfs_denode.c
  projects/nfsv42/sys/fs/msdosfs/msdosfs_fat.c
  projects/nfsv42/sys/fs/msdosfs/msdosfs_lookup.c
  projects/nfsv42/sys/fs/msdosfs/msdosfs_vfsops.c
  projects/nfsv42/sys/fs/msdosfs/msdosfs_vnops.c
  projects/nfsv42/sys/fs/msdosfs/msdosfsmount.h
  projects/nfsv42/sys/fs/nfs/nfs_var.h
  projects/nfsv42/sys/fs/nfsclient/nfs_clnode.c
  projects/nfsv42/sys/fs/nfsclient/nfs_clvnops.c
  projects/nfsv42/sys/fs/nfsserver/nfs_nfsdport.c
  projects/nfsv42/sys/fs/nfsserver/nfs_nfsdstate.c
  projects/nfsv42/sys/fs/nullfs/null_subr.c
  projects/nfsv42/sys/fs/nullfs/null_vnops.c
  projects/nfsv42/sys/fs/pseudofs/pseudofs_vnops.c
  projects/nfsv42/sys/fs/smbfs/smbfs_node.c
  projects/nfsv42/sys/fs/tmpfs/tmpfs_vfsops.c
  projects/nfsv42/sys/fs/tmpfs/tmpfs_vnops.c
  projects/nfsv42/sys/fs/udf/udf_vnops.c
  projects/nfsv42/sys/fs/unionfs/union_subr.c
  projects/nfsv42/sys/fs/unionfs/union_vnops.c
  projects/nfsv42/sys/gdb/gdb_cons.c
  projects/nfsv42/sys/gdb/gdb_int.h
  projects/nfsv42/sys/gdb/gdb_main.c
  projects/nfsv42/sys/gdb/gdb_packet.c
  projects/nfsv42/sys/geom/cache/g_cache.c
  projects/nfsv42/sys/geom/cache/g_cache.h
  projects/nfsv42/sys/geom/concat/g_concat.c
  projects/nfsv42/sys/geom/concat/g_concat.h
  projects/nfsv42/sys/geom/eli/g_eli.c
  projects/nfsv42/sys/geom/eli/g_eli.h
  projects/nfsv42/sys/geom/eli/g_eli_ctl.c
  projects/nfsv42/sys/geom/eli/g_eli_integrity.c
  projects/nfsv42/sys/geom/eli/g_eli_privacy.c
  projects/nfsv42/sys/geom/gate/g_gate.c
  projects/nfsv42/sys/geom/gate/g_gate.h
  projects/nfsv42/sys/geom/geom.h
  projects/nfsv42/sys/geom/geom_io.c
  projects/nfsv42/sys/geom/geom_subr.c
  projects/nfsv42/sys/geom/geom_vfs.c
  projects/nfsv42/sys/geom/journal/g_journal.c
  projects/nfsv42/sys/geom/journal/g_journal.h
  projects/nfsv42/sys/geom/journal/g_journal_ufs.c
  projects/nfsv42/sys/geom/label/g_label.c
  projects/nfsv42/sys/geom/label/g_label.h
  projects/nfsv42/sys/geom/label/g_label_ext2fs.c
  projects/nfsv42/sys/geom/label/g_label_iso9660.c
  projects/nfsv42/sys/geom/label/g_label_msdosfs.c
  projects/nfsv42/sys/geom/label/g_label_reiserfs.c
  projects/nfsv42/sys/geom/label/g_label_ufs.c
  projects/nfsv42/sys/geom/linux_lvm/g_linux_lvm.c
  projects/nfsv42/sys/geom/linux_lvm/g_linux_lvm.h
  projects/nfsv42/sys/geom/mirror/g_mirror.c
  projects/nfsv42/sys/geom/mirror/g_mirror.h
  projects/nfsv42/sys/geom/mirror/g_mirror_ctl.c
  projects/nfsv42/sys/geom/mountver/g_mountver.c
  projects/nfsv42/sys/geom/mountver/g_mountver.h
  projects/nfsv42/sys/geom/nop/g_nop.c
  projects/nfsv42/sys/geom/nop/g_nop.h
  projects/nfsv42/sys/geom/part/g_part.c
  projects/nfsv42/sys/geom/part/g_part_gpt.c
  projects/nfsv42/sys/geom/raid/g_raid.c
  projects/nfsv42/sys/geom/raid/g_raid.h
  projects/nfsv42/sys/geom/raid/md_ddf.c
  projects/nfsv42/sys/geom/raid/md_intel.c
  projects/nfsv42/sys/geom/raid/md_jmicron.c
  projects/nfsv42/sys/geom/raid/md_nvidia.c
  projects/nfsv42/sys/geom/raid/md_promise.c
  projects/nfsv42/sys/geom/raid/md_sii.c
  projects/nfsv42/sys/geom/raid/tr_concat.c
  projects/nfsv42/sys/geom/raid/tr_raid0.c
  projects/nfsv42/sys/geom/raid/tr_raid1.c
  projects/nfsv42/sys/geom/raid/tr_raid1e.c
  projects/nfsv42/sys/geom/raid3/g_raid3.c
  projects/nfsv42/sys/geom/raid3/g_raid3.h
  projects/nfsv42/sys/geom/sched/g_sched.c
  projects/nfsv42/sys/geom/sched/g_sched.h
  projects/nfsv42/sys/geom/shsec/g_shsec.c
  projects/nfsv42/sys/geom/shsec/g_shsec.h
  projects/nfsv42/sys/geom/stripe/g_stripe.c
  projects/nfsv42/sys/geom/stripe/g_stripe.h
  projects/nfsv42/sys/geom/uzip/g_uzip.c
  projects/nfsv42/sys/geom/uzip/g_uzip_cloop.h
  projects/nfsv42/sys/geom/uzip/g_uzip_zlib.c
  projects/nfsv42/sys/geom/vinum/geom_vinum.c
  projects/nfsv42/sys/geom/vinum/geom_vinum.h
  projects/nfsv42/sys/geom/vinum/geom_vinum_create.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_drive.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_events.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_init.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_move.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_plex.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_raid5.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_rename.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_rm.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_state.c
  projects/nfsv42/sys/geom/vinum/geom_vinum_subr.c
  projects/nfsv42/sys/geom/virstor/g_virstor.c
  projects/nfsv42/sys/geom/virstor/g_virstor.h
  projects/nfsv42/sys/gnu/dts/arm/am33xx-l4.dtsi
  projects/nfsv42/sys/i386/conf/Makefile
  projects/nfsv42/sys/i386/conf/NOTES
  projects/nfsv42/sys/i386/i386/machdep.c
  projects/nfsv42/sys/i386/i386/minidump_machdep_base.c
  projects/nfsv42/sys/i386/i386/mp_machdep.c
  projects/nfsv42/sys/i386/i386/pmap.c
  projects/nfsv42/sys/i386/i386/pmap_base.c
  projects/nfsv42/sys/i386/i386/vm_machdep.c
  projects/nfsv42/sys/i386/include/atomic.h
  projects/nfsv42/sys/i386/include/counter.h
  projects/nfsv42/sys/i386/include/pcpu.h
  projects/nfsv42/sys/i386/include/pmap.h
  projects/nfsv42/sys/i386/include/pmap_base.h
  projects/nfsv42/sys/i386/pci/pci_pir.c
  projects/nfsv42/sys/kern/bus_if.m
  projects/nfsv42/sys/kern/capabilities.conf
  projects/nfsv42/sys/kern/imgact_elf.c
  projects/nfsv42/sys/kern/init_main.c
  projects/nfsv42/sys/kern/init_sysent.c
  projects/nfsv42/sys/kern/kern_cpuset.c
  projects/nfsv42/sys/kern/kern_ctf.c
  projects/nfsv42/sys/kern/kern_dump.c
  projects/nfsv42/sys/kern/kern_event.c
  projects/nfsv42/sys/kern/kern_exec.c
  projects/nfsv42/sys/kern/kern_exit.c
  projects/nfsv42/sys/kern/kern_fork.c
  projects/nfsv42/sys/kern/kern_lock.c
  projects/nfsv42/sys/kern/kern_lockstat.c
  projects/nfsv42/sys/kern/kern_mbuf.c
  projects/nfsv42/sys/kern/kern_mutex.c
  projects/nfsv42/sys/kern/kern_proc.c
  projects/nfsv42/sys/kern/kern_procctl.c
  projects/nfsv42/sys/kern/kern_prot.c
  projects/nfsv42/sys/kern/kern_racct.c
  projects/nfsv42/sys/kern/kern_sendfile.c
  projects/nfsv42/sys/kern/kern_shutdown.c
  projects/nfsv42/sys/kern/kern_sig.c
  projects/nfsv42/sys/kern/kern_synch.c
  projects/nfsv42/sys/kern/kern_sysctl.c
  projects/nfsv42/sys/kern/kern_umtx.c
  projects/nfsv42/sys/kern/link_elf.c
  projects/nfsv42/sys/kern/link_elf_obj.c
  projects/nfsv42/sys/kern/makesyscalls.sh
  projects/nfsv42/sys/kern/sched_ule.c
  projects/nfsv42/sys/kern/subr_bus.c
  projects/nfsv42/sys/kern/subr_compressor.c
  projects/nfsv42/sys/kern/subr_pcpu.c
  projects/nfsv42/sys/kern/subr_sbuf.c
  projects/nfsv42/sys/kern/subr_scanf.c
  projects/nfsv42/sys/kern/subr_trap.c
  projects/nfsv42/sys/kern/subr_vmem.c
  projects/nfsv42/sys/kern/subr_witness.c
  projects/nfsv42/sys/kern/sys_pipe.c
  projects/nfsv42/sys/kern/sys_procdesc.c
  projects/nfsv42/sys/kern/sys_process.c
  projects/nfsv42/sys/kern/syscalls.c
  projects/nfsv42/sys/kern/syscalls.master
  projects/nfsv42/sys/kern/systrace_args.c
  projects/nfsv42/sys/kern/uipc_mbuf.c
  projects/nfsv42/sys/kern/uipc_mbuf2.c
  projects/nfsv42/sys/kern/uipc_mqueue.c
  projects/nfsv42/sys/kern/uipc_shm.c
  projects/nfsv42/sys/kern/uipc_sockbuf.c
  projects/nfsv42/sys/kern/uipc_socket.c
  projects/nfsv42/sys/kern/uipc_syscalls.c
  projects/nfsv42/sys/kern/vfs_bio.c
  projects/nfsv42/sys/kern/vfs_cache.c
  projects/nfsv42/sys/kern/vfs_cluster.c
  projects/nfsv42/sys/kern/vfs_default.c
  projects/nfsv42/sys/kern/vfs_hash.c
  projects/nfsv42/sys/kern/vfs_mount.c
  projects/nfsv42/sys/kern/vfs_subr.c
  projects/nfsv42/sys/kern/vfs_syscalls.c
  projects/nfsv42/sys/kern/vfs_vnops.c
  projects/nfsv42/sys/kern/vnode_if.src
  projects/nfsv42/sys/kgssapi/krb5/kcrypto_des.c
  projects/nfsv42/sys/kgssapi/krb5/kcrypto_des3.c
  projects/nfsv42/sys/mips/atheros/ar531x/ar5315_machdep.c
  projects/nfsv42/sys/mips/atheros/ar71xx_machdep.c
  projects/nfsv42/sys/mips/beri/beri_machdep.c
  projects/nfsv42/sys/mips/broadcom/bcm_machdep.c
  projects/nfsv42/sys/mips/broadcom/bhnd_nexus.c
  projects/nfsv42/sys/mips/cavium/octeon_machdep.c
  projects/nfsv42/sys/mips/include/pmap.h
  projects/nfsv42/sys/mips/include/proc.h
  projects/nfsv42/sys/mips/include/profile.h
  projects/nfsv42/sys/mips/include/regnum.h
  projects/nfsv42/sys/mips/ingenic/jz4780_machdep.c
  projects/nfsv42/sys/mips/malta/malta_machdep.c
  projects/nfsv42/sys/mips/mediatek/mtk_machdep.c
  projects/nfsv42/sys/mips/mips/busdma_machdep.c
  projects/nfsv42/sys/mips/mips/machdep.c
  projects/nfsv42/sys/mips/mips/pmap.c
  projects/nfsv42/sys/mips/nlm/xlp_machdep.c
  projects/nfsv42/sys/modules/Makefile
  projects/nfsv42/sys/modules/dtb/allwinner/Makefile
  projects/nfsv42/sys/modules/dtb/mv/Makefile
  projects/nfsv42/sys/modules/fusefs/Makefile
  projects/nfsv42/sys/modules/geom/geom_uzip/Makefile
  projects/nfsv42/sys/modules/i2c/Makefile
  projects/nfsv42/sys/modules/linux/Makefile
  projects/nfsv42/sys/modules/linux64/Makefile
  projects/nfsv42/sys/modules/netgraph/bluetooth/ubt/Makefile
  projects/nfsv42/sys/modules/ntb/Makefile
  projects/nfsv42/sys/modules/nvme/Makefile
  projects/nfsv42/sys/modules/usb/Makefile
  projects/nfsv42/sys/modules/usb/template/Makefile
  projects/nfsv42/sys/modules/zfs/Makefile
  projects/nfsv42/sys/modules/zlib/Makefile
  projects/nfsv42/sys/net/ieee8023ad_lacp.c
  projects/nfsv42/sys/net/ieee8023ad_lacp.h
  projects/nfsv42/sys/net/if.h
  projects/nfsv42/sys/net/if_dead.c
  projects/nfsv42/sys/net/if_lagg.c
  projects/nfsv42/sys/net/if_spppsubr.c
  projects/nfsv42/sys/net/if_tuntap.c
  projects/nfsv42/sys/net/if_var.h
  projects/nfsv42/sys/net/if_vlan.c
  projects/nfsv42/sys/net/iflib.c
  projects/nfsv42/sys/net/netmap.h
  projects/nfsv42/sys/net/netmap_user.h
  projects/nfsv42/sys/net/route.c
  projects/nfsv42/sys/net/sff8472.h
  projects/nfsv42/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
  projects/nfsv42/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_var.h
  projects/nfsv42/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
  projects/nfsv42/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
  projects/nfsv42/sys/netgraph/ng_deflate.c
  projects/nfsv42/sys/netinet/cc/cc_dctcp.c
  projects/nfsv42/sys/netinet/in.h
  projects/nfsv42/sys/netinet/in_pcb.c
  projects/nfsv42/sys/netinet/in_pcb.h
  projects/nfsv42/sys/netinet/ip_output.c
  projects/nfsv42/sys/netinet/netdump/netdump_client.c
  projects/nfsv42/sys/netinet/sctp_asconf.c
  projects/nfsv42/sys/netinet/sctp_indata.c
  projects/nfsv42/sys/netinet/sctp_indata.h
  projects/nfsv42/sys/netinet/sctp_input.c
  projects/nfsv42/sys/netinet/sctp_os_bsd.h
  projects/nfsv42/sys/netinet/sctp_output.c
  projects/nfsv42/sys/netinet/sctp_output.h
  projects/nfsv42/sys/netinet/sctp_pcb.c
  projects/nfsv42/sys/netinet/sctp_pcb.h
  projects/nfsv42/sys/netinet/sctp_usrreq.c
  projects/nfsv42/sys/netinet/sctputil.c
  projects/nfsv42/sys/netinet/tcp.h
  projects/nfsv42/sys/netinet/tcp_input.c
  projects/nfsv42/sys/netinet/tcp_lro.c
  projects/nfsv42/sys/netinet/tcp_lro.h
  projects/nfsv42/sys/netinet/tcp_output.c
  projects/nfsv42/sys/netinet/tcp_sack.c
  projects/nfsv42/sys/netinet/tcp_stacks/rack.c
  projects/nfsv42/sys/netinet/tcp_stacks/rack_bbr_common.c
  projects/nfsv42/sys/netinet/tcp_subr.c
  projects/nfsv42/sys/netinet/tcp_usrreq.c
  projects/nfsv42/sys/netinet/tcp_var.h
  projects/nfsv42/sys/netinet6/frag6.c
  projects/nfsv42/sys/netinet6/icmp6.c
  projects/nfsv42/sys/netinet6/in6_mcast.c
  projects/nfsv42/sys/netinet6/in6_pcb.c
  projects/nfsv42/sys/netinet6/in6_pcb.h
  projects/nfsv42/sys/netinet6/in6_proto.c
  projects/nfsv42/sys/netinet6/in6_src.c
  projects/nfsv42/sys/netinet6/ip6_input.c
  projects/nfsv42/sys/netinet6/ip6_output.c
  projects/nfsv42/sys/netinet6/ip6_var.h
  projects/nfsv42/sys/netinet6/mld6.c
  projects/nfsv42/sys/netinet6/raw_ip6.c
  projects/nfsv42/sys/netinet6/sctp6_usrreq.c
  projects/nfsv42/sys/netipsec/ipsec.c
  projects/nfsv42/sys/netipsec/key.c
  projects/nfsv42/sys/netpfil/ipfw/ip_fw2.c
  projects/nfsv42/sys/netpfil/ipfw/ip_fw_eaction.c
  projects/nfsv42/sys/netpfil/ipfw/ip_fw_nat.c
  projects/nfsv42/sys/netpfil/ipfw/ip_fw_private.h
  projects/nfsv42/sys/netpfil/ipfw/ip_fw_sockopt.c
  projects/nfsv42/sys/netpfil/pf/pf.c
  projects/nfsv42/sys/netpfil/pf/pf_ioctl.c
  projects/nfsv42/sys/netpfil/pf/pf_norm.c
  projects/nfsv42/sys/netsmb/smb_crypt.c
  projects/nfsv42/sys/ofed/drivers/infiniband/core/ib_cma.c
  projects/nfsv42/sys/ofed/drivers/infiniband/ulp/sdp/sdp.h
  projects/nfsv42/sys/ofed/drivers/infiniband/ulp/sdp/sdp_cma.c
  projects/nfsv42/sys/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
  projects/nfsv42/sys/ofed/drivers/infiniband/ulp/sdp/sdp_rx.c
  projects/nfsv42/sys/ofed/include/rdma/ib_mad.h
  projects/nfsv42/sys/opencrypto/cast.c
  projects/nfsv42/sys/opencrypto/cast.h
  projects/nfsv42/sys/opencrypto/cryptodeflate.c
  projects/nfsv42/sys/opencrypto/cryptodev.c
  projects/nfsv42/sys/opencrypto/deflate.h
  projects/nfsv42/sys/opencrypto/skipjack.c
  projects/nfsv42/sys/opencrypto/skipjack.h
  projects/nfsv42/sys/opencrypto/xform_aes_icm.c
  projects/nfsv42/sys/opencrypto/xform_aes_xts.c
  projects/nfsv42/sys/opencrypto/xform_blf.c
  projects/nfsv42/sys/opencrypto/xform_cast5.c
  projects/nfsv42/sys/opencrypto/xform_cml.c
  projects/nfsv42/sys/opencrypto/xform_des1.c
  projects/nfsv42/sys/opencrypto/xform_des3.c
  projects/nfsv42/sys/opencrypto/xform_enc.h
  projects/nfsv42/sys/opencrypto/xform_null.c
  projects/nfsv42/sys/opencrypto/xform_rijndael.c
  projects/nfsv42/sys/opencrypto/xform_skipjack.c
  projects/nfsv42/sys/powerpc/aim/mmu_oea.c
  projects/nfsv42/sys/powerpc/aim/mmu_oea64.c
  projects/nfsv42/sys/powerpc/aim/moea64_native.c
  projects/nfsv42/sys/powerpc/booke/pmap.c
  projects/nfsv42/sys/powerpc/booke/trap_subr.S
  projects/nfsv42/sys/powerpc/conf/MPC85XX
  projects/nfsv42/sys/powerpc/conf/MPC85XXSPE
  projects/nfsv42/sys/powerpc/conf/NOTES
  projects/nfsv42/sys/powerpc/conf/QORIQ64
  projects/nfsv42/sys/powerpc/conf/dpaa/DPAA
  projects/nfsv42/sys/powerpc/include/counter.h
  projects/nfsv42/sys/powerpc/include/param.h
  projects/nfsv42/sys/powerpc/include/pmap.h
  projects/nfsv42/sys/powerpc/include/proc.h
  projects/nfsv42/sys/powerpc/include/vmparam.h
  projects/nfsv42/sys/powerpc/ofw/ofwcall32.S
  projects/nfsv42/sys/powerpc/powernv/opal.h
  projects/nfsv42/sys/powerpc/powernv/opal_pci.c
  projects/nfsv42/sys/powerpc/powerpc/busdma_machdep.c
  projects/nfsv42/sys/powerpc/powerpc/machdep.c
  projects/nfsv42/sys/powerpc/powerpc/mp_machdep.c
  projects/nfsv42/sys/powerpc/powerpc/pmap_dispatch.c
  projects/nfsv42/sys/powerpc/powerpc/swtch32.S
  projects/nfsv42/sys/powerpc/powerpc/trap.c
  projects/nfsv42/sys/riscv/include/counter.h
  projects/nfsv42/sys/riscv/include/pmap.h
  projects/nfsv42/sys/riscv/riscv/copyinout.S
  projects/nfsv42/sys/riscv/riscv/intr_machdep.c
  projects/nfsv42/sys/riscv/riscv/locore.S
  projects/nfsv42/sys/riscv/riscv/machdep.c
  projects/nfsv42/sys/riscv/riscv/mp_machdep.c
  projects/nfsv42/sys/rpc/svc_vc.c
  projects/nfsv42/sys/security/mac/mac_process.c
  projects/nfsv42/sys/security/mac_veriexec_parser/mac_veriexec_parser.c
  projects/nfsv42/sys/sparc64/conf/NOTES
  projects/nfsv42/sys/sparc64/include/pmap.h
  projects/nfsv42/sys/sparc64/sparc64/pmap.c
  projects/nfsv42/sys/sys/ata.h
  projects/nfsv42/sys/sys/buf.h
  projects/nfsv42/sys/sys/bus.h
  projects/nfsv42/sys/sys/diskmbr.h
  projects/nfsv42/sys/sys/imgact.h
  projects/nfsv42/sys/sys/imgact_elf.h
  projects/nfsv42/sys/sys/libkern.h
  projects/nfsv42/sys/sys/lockmgr.h
  projects/nfsv42/sys/sys/lockstat.h
  projects/nfsv42/sys/sys/mbuf.h
  projects/nfsv42/sys/sys/mdioctl.h
  projects/nfsv42/sys/sys/mount.h
  projects/nfsv42/sys/sys/param.h
  projects/nfsv42/sys/sys/pcpu.h
  projects/nfsv42/sys/sys/proc.h
  projects/nfsv42/sys/sys/procctl.h
  projects/nfsv42/sys/sys/refcount.h
  projects/nfsv42/sys/sys/sbuf.h
  projects/nfsv42/sys/sys/seqc.h
  projects/nfsv42/sys/sys/sockbuf.h
  projects/nfsv42/sys/sys/syscall.h
  projects/nfsv42/sys/sys/syscall.mk
  projects/nfsv42/sys/sys/sysctl.h
  projects/nfsv42/sys/sys/sysent.h
  projects/nfsv42/sys/sys/sysproto.h
  projects/nfsv42/sys/sys/vnode.h
  projects/nfsv42/sys/teken/teken.c
  projects/nfsv42/sys/ufs/ffs/ffs_alloc.c
  projects/nfsv42/sys/ufs/ffs/ffs_balloc.c
  projects/nfsv42/sys/ufs/ffs/ffs_extern.h
  projects/nfsv42/sys/ufs/ffs/ffs_inode.c
  projects/nfsv42/sys/ufs/ffs/ffs_snapshot.c
  projects/nfsv42/sys/ufs/ffs/ffs_softdep.c
  projects/nfsv42/sys/ufs/ffs/ffs_subr.c
  projects/nfsv42/sys/ufs/ffs/ffs_vfsops.c
  projects/nfsv42/sys/ufs/ffs/fs.h
  projects/nfsv42/sys/ufs/ufs/ufs_extern.h
  projects/nfsv42/sys/ufs/ufs/ufs_inode.c
  projects/nfsv42/sys/ufs/ufs/ufs_quota.c
  projects/nfsv42/sys/ufs/ufs/ufs_vnops.c
  projects/nfsv42/sys/vm/swap_pager.c
  projects/nfsv42/sys/vm/uma.h
  projects/nfsv42/sys/vm/uma_core.c
  projects/nfsv42/sys/vm/uma_int.h
  projects/nfsv42/sys/vm/vm_fault.c
  projects/nfsv42/sys/vm/vm_glue.c
  projects/nfsv42/sys/vm/vm_kern.c
  projects/nfsv42/sys/vm/vm_map.c
  projects/nfsv42/sys/vm/vm_map.h
  projects/nfsv42/sys/vm/vm_mmap.c
  projects/nfsv42/sys/vm/vm_object.c
  projects/nfsv42/sys/vm/vm_object.h
  projects/nfsv42/sys/vm/vm_page.c
  projects/nfsv42/sys/vm/vm_page.h
  projects/nfsv42/sys/vm/vm_pageout.c
  projects/nfsv42/sys/vm/vm_pageout.h
  projects/nfsv42/sys/vm/vm_pagequeue.h
  projects/nfsv42/sys/vm/vm_pager.h
  projects/nfsv42/sys/vm/vm_param.h
  projects/nfsv42/sys/vm/vm_phys.c
  projects/nfsv42/sys/vm/vm_phys.h
  projects/nfsv42/sys/vm/vm_reserv.c
  projects/nfsv42/sys/vm/vm_reserv.h
  projects/nfsv42/sys/vm/vm_swapout.c
  projects/nfsv42/sys/vm/vnode_pager.c
  projects/nfsv42/sys/vm/vnode_pager.h
  projects/nfsv42/sys/x86/x86/io_apic.c
  projects/nfsv42/sys/x86/x86/legacy.c
  projects/nfsv42/sys/x86/x86/local_apic.c
  projects/nfsv42/sys/x86/x86/nexus.c
Directory Properties:
  projects/nfsv42/sys/   (props changed)
  projects/nfsv42/sys/cddl/contrib/opensolaris/   (props changed)
  projects/nfsv42/sys/contrib/dev/acpica/   (props changed)
  projects/nfsv42/sys/contrib/ipfilter/   (props changed)
  projects/nfsv42/sys/contrib/zlib/   (props changed)
  projects/nfsv42/sys/contrib/zstd/   (props changed)
  projects/nfsv42/sys/gnu/dts/arm/   (props changed)

Modified: projects/nfsv42/sys/amd64/amd64/cpu_switch.S
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/cpu_switch.S	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/cpu_switch.S	Mon Sep  9 00:46:22 2019	(r352051)
@@ -45,18 +45,6 @@
 
 	.text
 
-#ifdef SMP
-#define LK	lock ;
-#else
-#define LK
-#endif
-
-#if defined(SCHED_ULE) && defined(SMP)
-#define	SETLK	xchgq
-#else
-#define	SETLK	movq
-#endif
-
 /*
  * cpu_throw()
  *
@@ -150,17 +138,15 @@ ctx_switch_xsave:
 	movq	%rdx,%r15
 	movq	%rsi,%rdi
 	callq	pmap_activate_sw
-	SETLK	%r15,TD_LOCK(%r13)		/* Release the old thread */
+	movq	%r15,TD_LOCK(%r13)		/* Release the old thread */
 sw1:
 	movq	TD_PCB(%r12),%r8
 #if defined(SCHED_ULE) && defined(SMP)
-	/* Wait for the new thread to become unblocked */
 	movq	$blocked_lock, %rdx
-1:
 	movq	TD_LOCK(%r12),%rcx
 	cmpq	%rcx, %rdx
-	pause
-	je	1b
+	je	sw1wait
+sw1cont:
 #endif
 	/*
 	 * At this point, we've switched address spaces and are ready
@@ -496,3 +482,14 @@ ENTRY(resumectx)
 	xorl	%eax,%eax
 	ret
 END(resumectx)
+
+/* Wait for the new thread to become unblocked */
+#if defined(SCHED_ULE) && defined(SMP)
+sw1wait:
+1:
+	pause
+	movq	TD_LOCK(%r12),%rcx
+	cmpq	%rcx, %rdx
+	je	1b
+	jmp	sw1cont
+#endif

Modified: projects/nfsv42/sys/amd64/amd64/elf_machdep.c
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/elf_machdep.c	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/elf_machdep.c	Mon Sep  9 00:46:22 2019	(r352051)
@@ -82,6 +82,7 @@ struct sysentvec elf64_freebsd_sysvec = {
 	.sv_schedtail	= NULL,
 	.sv_thread_detach = NULL,
 	.sv_trap	= NULL,
+	.sv_stackgap	= elf64_stackgap,
 };
 INIT_SYSENTVEC(elf64_sysvec, &elf64_freebsd_sysvec);
 

Modified: projects/nfsv42/sys/amd64/amd64/exception.S
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/exception.S	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/exception.S	Mon Sep  9 00:46:22 2019	(r352051)
@@ -105,14 +105,32 @@ MCOUNT_LABEL(btrap)
 
 /* Traps that we leave interrupts disabled for. */
 	.macro	TRAP_NOEN	l, trapno
-	PTI_ENTRY	\l,X\l
+	PTI_ENTRY	\l,\l\()_pti_k,\l\()_pti_u
+\l\()_pti_k:
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	jmp	alltraps_noen_k
+\l\()_pti_u:
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	jmp	alltraps_noen_u
+	
 	.globl	X\l
 	.type	X\l,@function
-X\l:	subq $TF_RIP,%rsp
-	movl $\trapno,TF_TRAPNO(%rsp)
-	movq $0,TF_ADDR(%rsp)
-	movq $0,TF_ERR(%rsp)
-	jmp alltraps_noen
+X\l:
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	testb	$SEL_RPL_MASK,TF_CS(%rsp)
+	jz	alltraps_noen_k
+	swapgs
+	lfence
+	jmp	alltraps_noen_u
 	.endm
 
 	TRAP_NOEN	bpt, T_BPTFLT
@@ -122,15 +140,32 @@ X\l:	subq $TF_RIP,%rsp
 
 /* Regular traps; The cpu does not supply tf_err for these. */
 	.macro	TRAP	l, trapno
-	PTI_ENTRY	\l,X\l
+	PTI_ENTRY	\l,\l\()_pti_k,\l\()_pti_u
+\l\()_pti_k:
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	jmp	alltraps_k
+\l\()_pti_u:
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	jmp	alltraps_u
+
 	.globl	X\l
 	.type	X\l,@function
 X\l:
-	subq $TF_RIP,%rsp
-	movl $\trapno,TF_TRAPNO(%rsp)
-	movq $0,TF_ADDR(%rsp)
-	movq $0,TF_ERR(%rsp)
-	jmp alltraps
+	subq	$TF_RIP,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	movq	$0,TF_ERR(%rsp)
+	testb	$SEL_RPL_MASK,TF_CS(%rsp)
+	jz	alltraps_k
+	swapgs
+	lfence
+	jmp	alltraps_u
 	.endm
 
 	TRAP	div, T_DIVIDE
@@ -145,42 +180,64 @@ X\l:
 
 /* This group of traps have tf_err already pushed by the cpu. */
 	.macro	TRAP_ERR	l, trapno
-	PTI_ENTRY	\l,X\l,has_err=1
+	PTI_ENTRY	\l,\l\()_pti_k,\l\()_pti_u,has_err=1
+\l\()_pti_k:
+	subq	$TF_ERR,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	jmp	alltraps_k
+\l\()_pti_u:
+	subq	$TF_ERR,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	jmp	alltraps_u
 	.globl	X\l
 	.type	X\l,@function
 X\l:
-	subq $TF_ERR,%rsp
-	movl $\trapno,TF_TRAPNO(%rsp)
-	movq $0,TF_ADDR(%rsp)
-	jmp alltraps
+	subq	$TF_ERR,%rsp
+	movl	$\trapno,TF_TRAPNO(%rsp)
+	movq	$0,TF_ADDR(%rsp)
+	testb	$SEL_RPL_MASK,TF_CS(%rsp)
+	jz	alltraps_k
+	swapgs
+	lfence
+	jmp	alltraps_u
 	.endm
 
 	TRAP_ERR	tss, T_TSSFLT
 	TRAP_ERR	align, T_ALIGNFLT
 
 	/*
-	 * alltraps entry point.  Use swapgs if this is the first time in the
-	 * kernel from userland.  Reenable interrupts if they were enabled
-	 * before the trap.  This approximates SDT_SYS386TGT on the i386 port.
+	 * alltraps_u/k entry points.
+	 * SWAPGS must be already performed by prologue,
+	 * if this is the first time in the kernel from userland.
+	 * Reenable interrupts if they were enabled before the trap.
+	 * This approximates SDT_SYS386TGT on the i386 port.
 	 */
 	SUPERALIGN_TEXT
-	.globl	alltraps
-	.type	alltraps,@function
-alltraps:
+	.globl	alltraps_u
+	.type	alltraps_u,@function
+alltraps_u:
 	movq	%rdi,TF_RDI(%rsp)
-	testb	$SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */
-	jz	1f		/* already running with kernel GS.base */
-	swapgs
+	movq	%rdx,TF_RDX(%rsp)
+	movq	%rax,TF_RAX(%rsp)
+	movq	%rcx,TF_RCX(%rsp)
 	movq	PCPU(CURPCB),%rdi
 	andl	$~PCB_FULL_IRET,PCB_FLAGS(%rdi)
-1:	SAVE_SEGS
+	call	handle_ibrs_entry
+	jmp	alltraps_save_segs
+	SUPERALIGN_TEXT
+	.globl	alltraps_k
+	.type	alltraps_k,@function
+alltraps_k:
+	lfence
+	movq	%rdi,TF_RDI(%rsp)
 	movq	%rdx,TF_RDX(%rsp)
 	movq	%rax,TF_RAX(%rsp)
 	movq	%rcx,TF_RCX(%rsp)
-	testb	$SEL_RPL_MASK,TF_CS(%rsp)
-	jz	2f
-	call	handle_ibrs_entry
-2:	testl	$PSL_I,TF_RFLAGS(%rsp)
+alltraps_save_segs:
+	SAVE_SEGS
+	testl	$PSL_I,TF_RFLAGS(%rsp)
 	jz	alltraps_pushregs_no_rax
 	sti
 alltraps_pushregs_no_rax:
@@ -234,21 +291,27 @@ calltrap:
 	jmp	doreti			/* Handle any pending ASTs */
 
 	/*
-	 * alltraps_noen entry point.  Unlike alltraps above, we want to
-	 * leave the interrupts disabled.  This corresponds to
-	 * SDT_SYS386IGT on the i386 port.
+	 * alltraps_noen_u/k entry points.
+	 * Again, SWAPGS must be already performed by prologue, if needed.
+	 * Unlike alltraps above, we want to leave the interrupts disabled.
+	 * This corresponds to SDT_SYS386IGT on the i386 port.
 	 */
 	SUPERALIGN_TEXT
-	.globl	alltraps_noen
-	.type	alltraps_noen,@function
-alltraps_noen:
+	.globl	alltraps_noen_u
+	.type	alltraps_noen_u,@function
+alltraps_noen_u:
 	movq	%rdi,TF_RDI(%rsp)
-	testb	$SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */
-	jz	1f /* already running with kernel GS.base */
-	swapgs
 	movq	PCPU(CURPCB),%rdi
 	andl	$~PCB_FULL_IRET,PCB_FLAGS(%rdi)
-1:	SAVE_SEGS
+	jmp	alltraps_noen_save_segs
+	SUPERALIGN_TEXT
+	.globl	alltraps_noen_k
+	.type	alltraps_noen_k,@function
+alltraps_noen_k:
+	lfence
+	movq	%rdi,TF_RDI(%rsp)
+alltraps_noen_save_segs:
+	SAVE_SEGS
 	movq	%rdx,TF_RDX(%rsp)
 	movq	%rax,TF_RAX(%rsp)
 	movq	%rcx,TF_RCX(%rsp)
@@ -285,7 +348,7 @@ IDTVEC(dblfault)
 	testb	$SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */
 	jz	1f			/* already running with kernel GS.base */
 	swapgs
-1:
+1:	lfence
 	movq	PCPU(KCR3),%rax
 	cmpq	$~0,%rax
 	je	2f
@@ -297,34 +360,43 @@ IDTVEC(dblfault)
 
 	ALIGN_TEXT
 IDTVEC(page_pti)
-	testb	$SEL_RPL_MASK,PTI_CS-2*8(%rsp)
-	jz	Xpage
+	testb	$SEL_RPL_MASK,PTI_CS-PTI_ERR(%rsp)
+	jz	page_k
 	swapgs
+	lfence
 	pushq	%rax
 	movq	%cr3,%rax
 	movq	%rax,PCPU(SAVED_UCR3)
 	cmpq	$~0,PCPU(UCR3)
 	jne	1f
 	popq	%rax
-	jmp	2f
+	jmp	page_u
 1:	pushq	%rdx
 	PTI_UUENTRY has_err=1
-2:	subq	$TF_ERR,%rsp
-	movq	%rdi,TF_RDI(%rsp)
-	movq	%rax,TF_RAX(%rsp)
-	movq	%rdx,TF_RDX(%rsp)
-	movq	%rcx,TF_RCX(%rsp)
 	jmp	page_u
+	ALIGN_TEXT
 IDTVEC(page)
+	testb	$SEL_RPL_MASK,TF_CS-TF_ERR(%rsp) /* Did we come from kernel? */
+	jnz	page_u_swapgs		/* already running with kernel GS.base */
+page_k:
+	lfence
 	subq	$TF_ERR,%rsp
 	movq	%rdi,TF_RDI(%rsp)	/* free up GP registers */
 	movq	%rax,TF_RAX(%rsp)
 	movq	%rdx,TF_RDX(%rsp)
 	movq	%rcx,TF_RCX(%rsp)
-	testb	$SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */
-	jz	page_cr2		/* already running with kernel GS.base */
+	jmp	page_cr2
+	ALIGN_TEXT
+page_u_swapgs:
 	swapgs
-page_u:	movq	PCPU(CURPCB),%rdi
+	lfence
+page_u:
+	subq	$TF_ERR,%rsp
+	movq	%rdi,TF_RDI(%rsp)
+	movq	%rax,TF_RAX(%rsp)
+	movq	%rdx,TF_RDX(%rsp)
+	movq	%rcx,TF_RCX(%rsp)
+	movq	PCPU(CURPCB),%rdi
 	andl	$~PCB_FULL_IRET,PCB_FLAGS(%rdi)
 	movq	PCPU(SAVED_UCR3),%rax
 	movq	%rax,PCB_SAVED_UCR3(%rdi)
@@ -355,6 +427,7 @@ page_cr2:
 	.macro PROTF_ENTRY name,trapno
 \name\()_pti_doreti:
 	swapgs
+	lfence
 	cmpq	$~0,PCPU(UCR3)
 	je	1f
 	pushq	%rax
@@ -377,9 +450,9 @@ IDTVEC(\name\()_pti)
 	cmpq	$doreti_iret,PTI_RIP-2*8(%rsp)
 	je	\name\()_pti_doreti
 	testb	$SEL_RPL_MASK,PTI_CS-2*8(%rsp) /* %rax, %rdx not yet pushed */
-	jz	X\name
+	jz	X\name		/* lfence is not needed until %gs: use */
 	PTI_UENTRY has_err=1
-	swapgs
+	swapgs	/* fence provided by PTI_UENTRY */
 IDTVEC(\name)
 	subq	$TF_ERR,%rsp
 	movl	$\trapno,TF_TRAPNO(%rsp)
@@ -412,6 +485,7 @@ prot_addrf:
 	jne	2f
 	rdgsbase %rdx
 2:	swapgs
+	lfence
 	movq	PCPU(CURPCB),%rdi
 	testb	$CPUID_STDEXT_FSGSBASE,cpu_stdext_feature(%rip)
 	jz	4f
@@ -431,7 +505,8 @@ prot_addrf:
 	jmp	alltraps_pushregs_no_rax
 
 5:	swapgs
-6:	movq	PCPU(CURPCB),%rdi
+6:	lfence
+	movq	PCPU(CURPCB),%rdi
 	jmp	4b
 
 /*
@@ -446,6 +521,7 @@ prot_addrf:
 	SUPERALIGN_TEXT
 IDTVEC(fast_syscall_pti)
 	swapgs
+	lfence
 	movq	%rax,PCPU(SCRATCH_RAX)
 	cmpq	$~0,PCPU(UCR3)
 	je	fast_syscall_common
@@ -455,6 +531,7 @@ IDTVEC(fast_syscall_pti)
 	SUPERALIGN_TEXT
 IDTVEC(fast_syscall)
 	swapgs
+	lfence
 	movq	%rax,PCPU(SCRATCH_RAX)
 fast_syscall_common:
 	movq	%rsp,PCPU(SCRATCH_RSP)
@@ -583,6 +660,7 @@ IDTVEC(dbg)
 	popfq
 	testb	$SEL_RPL_MASK,TF_CS(%rsp)
 	jnz	dbg_fromuserspace
+	lfence
 	/*
 	 * We've interrupted the kernel.  Preserve GS.base in %r12,
 	 * %cr3 in %r13, and possibly lower half of MSR_IA32_SPEC_CTL in %r14d.
@@ -638,6 +716,7 @@ dbg_fromuserspace:
 	 * in trap().
 	 */
 	swapgs
+	lfence
 	movq	PCPU(KCR3),%rax
 	cmpq	$~0,%rax
 	je	1f
@@ -723,6 +802,7 @@ IDTVEC(nmi)
 	 * We've interrupted the kernel.  Preserve GS.base in %r12,
 	 * %cr3 in %r13, and possibly lower half of MSR_IA32_SPEC_CTL in %r14d.
 	 */
+	lfence
 	movl	$MSR_GSBASE,%ecx
 	rdmsr
 	movq	%rax,%r12
@@ -748,6 +828,7 @@ IDTVEC(nmi)
 nmi_fromuserspace:
 	incl	%ebx
 	swapgs
+	lfence
 	movq	%cr3,%r13
 	movq	PCPU(KCR3),%rax
 	cmpq	$~0,%rax

Modified: projects/nfsv42/sys/amd64/amd64/machdep.c
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/machdep.c	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/machdep.c	Mon Sep  9 00:46:22 2019	(r352051)
@@ -210,27 +210,13 @@ int cold = 1;
 long Maxmem = 0;
 long realmem = 0;
 
-/*
- * The number of PHYSMAP entries must be one less than the number of
- * PHYSSEG entries because the PHYSMAP entry that spans the largest
- * physical address that is accessible by ISA DMA is split into two
- * PHYSSEG entries.
- */
-#define	PHYSMAP_SIZE	(2 * (VM_PHYSSEG_MAX - 1))
-
-vm_paddr_t phys_avail[PHYSMAP_SIZE + 2];
-vm_paddr_t dump_avail[PHYSMAP_SIZE + 2];
-
-/* must be 2 less so 0 0 can signal end of chunks */
-#define	PHYS_AVAIL_ARRAY_END (nitems(phys_avail) - 2)
-#define	DUMP_AVAIL_ARRAY_END (nitems(dump_avail) - 2)
-
 struct kva_md_info kmi;
 
 static struct trapframe proc0_tf;
 struct region_descriptor r_gdt, r_idt;
 
-struct pcpu __pcpu[MAXCPU];
+struct pcpu *__pcpu;
+struct pcpu temp_bsp_pcpu;
 
 struct mtx icu_lock;
 
@@ -1036,7 +1022,7 @@ add_physmap_entry(uint64_t base, uint64_t length, vm_p
 
 	physmap_idx += 2;
 	*physmap_idxp = physmap_idx;
-	if (physmap_idx == PHYSMAP_SIZE) {
+	if (physmap_idx == PHYS_AVAIL_ENTRIES) {
 		printf(
 		"Too many segments in the physical address map, giving up\n");
 		return (0);
@@ -1229,7 +1215,7 @@ static void
 getmemsize(caddr_t kmdp, u_int64_t first)
 {
 	int i, physmap_idx, pa_indx, da_indx;
-	vm_paddr_t pa, physmap[PHYSMAP_SIZE];
+	vm_paddr_t pa, physmap[PHYS_AVAIL_ENTRIES];
 	u_long physmem_start, physmem_tunable, memtest;
 	pt_entry_t *pte;
 	quad_t dcons_addr, dcons_size;
@@ -1446,7 +1432,7 @@ skip_memtest:
 				phys_avail[pa_indx] += PAGE_SIZE;
 			} else {
 				pa_indx++;
-				if (pa_indx == PHYS_AVAIL_ARRAY_END) {
+				if (pa_indx == PHYS_AVAIL_ENTRIES) {
 					printf(
 		"Too many holes in the physical address space, giving up\n");
 					pa_indx--;
@@ -1462,7 +1448,7 @@ do_dump_avail:
 				dump_avail[da_indx] += PAGE_SIZE;
 			} else {
 				da_indx++;
-				if (da_indx == DUMP_AVAIL_ARRAY_END) {
+				if (da_indx == PHYS_AVAIL_ENTRIES) {
 					da_indx--;
 					goto do_next;
 				}
@@ -1558,13 +1544,68 @@ amd64_conf_fast_syscall(void)
 	wrmsr(MSR_SF_MASK, PSL_NT | PSL_T | PSL_I | PSL_C | PSL_D | PSL_AC);
 }
 
+void
+amd64_bsp_pcpu_init1(struct pcpu *pc)
+{
+
+	PCPU_SET(prvspace, pc);
+	PCPU_SET(curthread, &thread0);
+	PCPU_SET(tssp, &common_tss[0]);
+	PCPU_SET(commontssp, &common_tss[0]);
+	PCPU_SET(tss, (struct system_segment_descriptor *)&gdt[GPROC0_SEL]);
+	PCPU_SET(ldt, (struct system_segment_descriptor *)&gdt[GUSERLDT_SEL]);
+	PCPU_SET(fs32p, &gdt[GUFS32_SEL]);
+	PCPU_SET(gs32p, &gdt[GUGS32_SEL]);
+}
+
+void
+amd64_bsp_pcpu_init2(uint64_t rsp0)
+{
+
+	PCPU_SET(rsp0, rsp0);
+	PCPU_SET(pti_rsp0, ((vm_offset_t)PCPU_PTR(pti_stack) +
+	    PC_PTI_STACK_SZ * sizeof(uint64_t)) & ~0xful);
+	PCPU_SET(curpcb, thread0.td_pcb);
+}
+
+void
+amd64_bsp_ist_init(struct pcpu *pc)
+{
+	struct nmi_pcpu *np;
+
+	/* doublefault stack space, runs on ist1 */
+	common_tss[0].tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)];
+
+	/*
+	 * NMI stack, runs on ist2.  The pcpu pointer is stored just
+	 * above the start of the ist2 stack.
+	 */
+	np = ((struct nmi_pcpu *)&nmi0_stack[sizeof(nmi0_stack)]) - 1;
+	np->np_pcpu = (register_t)pc;
+	common_tss[0].tss_ist2 = (long)np;
+
+	/*
+	 * MC# stack, runs on ist3.  The pcpu pointer is stored just
+	 * above the start of the ist3 stack.
+	 */
+	np = ((struct nmi_pcpu *)&mce0_stack[sizeof(mce0_stack)]) - 1;
+	np->np_pcpu = (register_t)pc;
+	common_tss[0].tss_ist3 = (long)np;
+
+	/*
+	 * DB# stack, runs on ist4.
+	 */
+	np = ((struct nmi_pcpu *)&dbg0_stack[sizeof(dbg0_stack)]) - 1;
+	np->np_pcpu = (register_t)pc;
+	common_tss[0].tss_ist4 = (long)np;
+}
+
 u_int64_t
 hammer_time(u_int64_t modulep, u_int64_t physfree)
 {
 	caddr_t kmdp;
 	int gsel_tss, x;
 	struct pcpu *pc;
-	struct nmi_pcpu *np;
 	struct xstate_hdr *xhdr;
 	u_int64_t rsp0;
 	char *env;
@@ -1638,7 +1679,7 @@ hammer_time(u_int64_t modulep, u_int64_t physfree)
 	r_gdt.rd_limit = NGDT * sizeof(gdt[0]) - 1;
 	r_gdt.rd_base =  (long) gdt;
 	lgdt(&r_gdt);
-	pc = &__pcpu[0];
+	pc = &temp_bsp_pcpu;
 
 	wrmsr(MSR_FSBASE, 0);		/* User value */
 	wrmsr(MSR_GSBASE, (u_int64_t)pc);
@@ -1647,15 +1688,8 @@ hammer_time(u_int64_t modulep, u_int64_t physfree)
 	pcpu_init(pc, 0, sizeof(struct pcpu));
 	dpcpu_init((void *)(physfree + KERNBASE), 0);
 	physfree += DPCPU_SIZE;
-	PCPU_SET(prvspace, pc);
-	PCPU_SET(curthread, &thread0);
+	amd64_bsp_pcpu_init1(pc);
 	/* Non-late cninit() and printf() can be moved up to here. */
-	PCPU_SET(tssp, &common_tss[0]);
-	PCPU_SET(commontssp, &common_tss[0]);
-	PCPU_SET(tss, (struct system_segment_descriptor *)&gdt[GPROC0_SEL]);
-	PCPU_SET(ldt, (struct system_segment_descriptor *)&gdt[GUSERLDT_SEL]);
-	PCPU_SET(fs32p, &gdt[GUFS32_SEL]);
-	PCPU_SET(gs32p, &gdt[GUGS32_SEL]);
 
 	/*
 	 * Initialize mutexes.
@@ -1744,31 +1778,7 @@ hammer_time(u_int64_t modulep, u_int64_t physfree)
 	finishidentcpu();	/* Final stage of CPU initialization */
 	initializecpu();	/* Initialize CPU registers */
 
-	/* doublefault stack space, runs on ist1 */
-	common_tss[0].tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)];
-
-	/*
-	 * NMI stack, runs on ist2.  The pcpu pointer is stored just
-	 * above the start of the ist2 stack.
-	 */
-	np = ((struct nmi_pcpu *) &nmi0_stack[sizeof(nmi0_stack)]) - 1;
-	np->np_pcpu = (register_t) pc;
-	common_tss[0].tss_ist2 = (long) np;
-
-	/*
-	 * MC# stack, runs on ist3.  The pcpu pointer is stored just
-	 * above the start of the ist3 stack.
-	 */
-	np = ((struct nmi_pcpu *) &mce0_stack[sizeof(mce0_stack)]) - 1;
-	np->np_pcpu = (register_t) pc;
-	common_tss[0].tss_ist3 = (long) np;
-
-	/*
-	 * DB# stack, runs on ist4.
-	 */
-	np = ((struct nmi_pcpu *) &dbg0_stack[sizeof(dbg0_stack)]) - 1;
-	np->np_pcpu = (register_t) pc;
-	common_tss[0].tss_ist4 = (long) np;
+	amd64_bsp_ist_init(pc);
 	
 	/* Set the IO permission bitmap (empty due to tss seg limit) */
 	common_tss[0].tss_iobase = sizeof(struct amd64tss) + IOPERM_BITMAP_SIZE;
@@ -1857,10 +1867,7 @@ hammer_time(u_int64_t modulep, u_int64_t physfree)
 	/* Ensure the stack is aligned to 16 bytes */
 	rsp0 &= ~0xFul;
 	common_tss[0].tss_rsp0 = rsp0;
-	PCPU_SET(rsp0, rsp0);
-	PCPU_SET(pti_rsp0, ((vm_offset_t)PCPU_PTR(pti_stack) +
-	    PC_PTI_STACK_SZ * sizeof(uint64_t)) & ~0xful);
-	PCPU_SET(curpcb, thread0.td_pcb);
+	amd64_bsp_pcpu_init2(rsp0);
 
 	/* transfer to user mode */
 

Modified: projects/nfsv42/sys/amd64/amd64/mp_machdep.c
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/mp_machdep.c	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/mp_machdep.c	Mon Sep  9 00:46:22 2019	(r352051)
@@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/systm.h>
 #include <sys/bus.h>
 #include <sys/cpuset.h>
+#include <sys/domainset.h>
 #ifdef GPROF 
 #include <sys/gmon.h>
 #endif
@@ -59,6 +60,8 @@ __FBSDID("$FreeBSD$");
 #include <vm/pmap.h>
 #include <vm/vm_kern.h>
 #include <vm/vm_extern.h>
+#include <vm/vm_page.h>
+#include <vm/vm_phys.h>
 
 #include <x86/apicreg.h>
 #include <machine/clock.h>
@@ -75,6 +78,9 @@ __FBSDID("$FreeBSD$");
 #include <machine/cpu.h>
 #include <x86/init.h>
 
+#include <contrib/dev/acpica/include/acpi.h>
+#include <dev/acpica/acpivar.h>
+
 #define WARMBOOT_TARGET		0
 #define WARMBOOT_OFF		(KERNBASE + 0x0467)
 #define WARMBOOT_SEG		(KERNBASE + 0x0469)
@@ -88,8 +94,6 @@ __FBSDID("$FreeBSD$");
 
 #define	AP_BOOTPT_SZ		(PAGE_SIZE * 3)
 
-extern	struct pcpu __pcpu[];
-
 /* Temporary variables for init_secondary()  */
 char *doublefault_stack;
 char *mce_stack;
@@ -384,6 +388,27 @@ init_secondary(void)
  * local functions and data
  */
 
+#ifdef NUMA
+static void
+mp_realloc_pcpu(int cpuid, int domain)
+{
+	vm_page_t m;
+	vm_offset_t oa, na;
+
+	oa = (vm_offset_t)&__pcpu[cpuid];
+	if (_vm_phys_domain(pmap_kextract(oa)) == domain)
+		return;
+	m = vm_page_alloc_domain(NULL, 0, domain,
+	    VM_ALLOC_NORMAL | VM_ALLOC_NOOBJ);
+	if (m == NULL)
+		return;
+	na = PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m));
+	pagecopy((void *)oa, (void *)na);
+	pmap_qenter((vm_offset_t)&__pcpu[cpuid], &m, 1);
+	/* XXX old pcpu page leaked. */
+}
+#endif
+
 /*
  * start each AP in our list
  */
@@ -392,7 +417,7 @@ native_start_all_aps(void)
 {
 	u_int64_t *pt4, *pt3, *pt2;
 	u_int32_t mpbioswarmvec;
-	int apic_id, cpu, i;
+	int apic_id, cpu, domain, i;
 	u_char mpbiosreason;
 
 	mtx_init(&ap_boot_mtx, "ap boot", NULL, MTX_SPIN);
@@ -431,21 +456,39 @@ native_start_all_aps(void)
 	outb(CMOS_REG, BIOS_RESET);
 	outb(CMOS_DATA, BIOS_WARM);	/* 'warm-start' */
 
+	/* Relocate pcpu areas to the correct domain. */
+#ifdef NUMA
+	if (vm_ndomains > 1)
+		for (cpu = 1; cpu < mp_ncpus; cpu++) {
+			apic_id = cpu_apic_ids[cpu];
+			domain = acpi_pxm_get_cpu_locality(apic_id);
+			mp_realloc_pcpu(cpu, domain);
+		}
+#endif
+
 	/* start each AP */
+	domain = 0;
 	for (cpu = 1; cpu < mp_ncpus; cpu++) {
 		apic_id = cpu_apic_ids[cpu];
-
+#ifdef NUMA
+		if (vm_ndomains > 1)
+			domain = acpi_pxm_get_cpu_locality(apic_id);
+#endif
 		/* allocate and set up an idle stack data page */
 		bootstacks[cpu] = (void *)kmem_malloc(kstack_pages * PAGE_SIZE,
 		    M_WAITOK | M_ZERO);
 		doublefault_stack = (char *)kmem_malloc(PAGE_SIZE, M_WAITOK |
 		    M_ZERO);
 		mce_stack = (char *)kmem_malloc(PAGE_SIZE, M_WAITOK | M_ZERO);
-		nmi_stack = (char *)kmem_malloc(PAGE_SIZE, M_WAITOK | M_ZERO);
-		dbg_stack = (char *)kmem_malloc(PAGE_SIZE, M_WAITOK | M_ZERO);
-		dpcpu = (void *)kmem_malloc(DPCPU_SIZE, M_WAITOK | M_ZERO);
+		nmi_stack = (char *)kmem_malloc_domainset(
+		    DOMAINSET_PREF(domain), PAGE_SIZE, M_WAITOK | M_ZERO);
+		dbg_stack = (char *)kmem_malloc_domainset(
+		    DOMAINSET_PREF(domain), PAGE_SIZE, M_WAITOK | M_ZERO);
+		dpcpu = (void *)kmem_malloc_domainset(DOMAINSET_PREF(domain),
+		    DPCPU_SIZE, M_WAITOK | M_ZERO);
 
-		bootSTK = (char *)bootstacks[cpu] + kstack_pages * PAGE_SIZE - 8;
+		bootSTK = (char *)bootstacks[cpu] +
+		    kstack_pages * PAGE_SIZE - 8;
 		bootAP = cpu;
 
 		/* attempt to start the Application Processor */
@@ -465,7 +508,7 @@ native_start_all_aps(void)
 	outb(CMOS_DATA, mpbiosreason);
 
 	/* number of APs actually started */
-	return mp_naps;
+	return (mp_naps);
 }
 
 

Modified: projects/nfsv42/sys/amd64/amd64/pmap.c
==============================================================================
--- projects/nfsv42/sys/amd64/amd64/pmap.c	Sun Sep  8 22:52:47 2019	(r352050)
+++ projects/nfsv42/sys/amd64/amd64/pmap.c	Mon Sep  9 00:46:22 2019	(r352051)
@@ -124,6 +124,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/proc.h>
 #include <sys/rangeset.h>
 #include <sys/rwlock.h>
+#include <sys/sbuf.h>
 #include <sys/sx.h>
 #include <sys/turnstile.h>
 #include <sys/vmem.h>
@@ -421,8 +422,8 @@ static int pmap_flags = PMAP_PDE_SUPERPAGE;	/* flags f
 
 static vmem_t *large_vmem;
 static u_int lm_ents;
-#define	PMAP_LARGEMAP_MAX_ADDRESS()			\
-    (LARGEMAP_MIN_ADDRESS + NBPML4 * (u_long)lm_ents)
+#define	PMAP_ADDRESS_IN_LARGEMAP(va)	((va) >= LARGEMAP_MIN_ADDRESS && \
+	(va) < LARGEMAP_MIN_ADDRESS + NBPML4 * (u_long)lm_ents)
 
 int pmap_pcid_enabled = 1;
 SYSCTL_INT(_vm_pmap, OID_AUTO, pcid_enabled, CTLFLAG_RDTUN | CTLFLAG_NOFETCH,
@@ -1097,6 +1098,13 @@ static caddr_t crashdumpmap;
 #define	PMAP_ENTER_NORECLAIM	0x1000000	/* Don't reclaim PV entries. */
 #define	PMAP_ENTER_NOREPLACE	0x2000000	/* Don't replace mappings. */
 
+/*
+ * Internal flags for pmap_mapdev_internal() and
+ * pmap_change_attr_locked().
+ */
+#define	MAPDEV_FLUSHCACHE	0x0000001	/* Flush cache after mapping. */
+#define	MAPDEV_SETATTR		0x0000002	/* Modify existing attrs. */
+
 static void	free_pv_chunk(struct pv_chunk *pc);
 static void	free_pv_entry(pmap_t pmap, pv_entry_t pv);
 static pv_entry_t get_pv_entry(pmap_t pmap, struct rwlock **lockp);
@@ -1117,7 +1125,7 @@ static pv_entry_t pmap_pvh_remove(struct md_page *pvh,
 		    vm_offset_t va);
 
 static int pmap_change_attr_locked(vm_offset_t va, vm_size_t size, int mode,
-    bool noflush);
+    int flags);
 static boolean_t pmap_demote_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va);
 static boolean_t pmap_demote_pde_locked(pmap_t pmap, pd_entry_t *pde,
     vm_offset_t va, struct rwlock **lockp);
@@ -1582,8 +1590,8 @@ void
 pmap_bootstrap(vm_paddr_t *firstaddr)
 {
 	vm_offset_t va;
-	pt_entry_t *pte;
-	uint64_t cr4;
+	pt_entry_t *pte, *pcpu_pte;
+	uint64_t cr4, pcpu_phys;
 	u_long res;
 	int i;
 
@@ -1598,6 +1606,8 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
 	 */
 	create_pagetables(firstaddr);
 
+	pcpu_phys = allocpages(firstaddr, MAXCPU);
+
 	/*
 	 * Add a physical memory segment (vm_phys_seg) corresponding to the
 	 * preallocated kernel page table pages so that vm_page structures
@@ -1665,8 +1675,21 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
 	SYSMAP(caddr_t, CMAP1, crashdumpmap, MAXDUMPPGS)
 	CADDR1 = crashdumpmap;
 
+	SYSMAP(struct pcpu *, pcpu_pte, __pcpu, MAXCPU);
 	virtual_avail = va;
 
+	for (i = 0; i < MAXCPU; i++) {
+		pcpu_pte[i] = (pcpu_phys + ptoa(i)) | X86_PG_V | X86_PG_RW |
+		    pg_g | pg_nx | X86_PG_M | X86_PG_A;
+	}
+	STAILQ_INIT(&cpuhead);
+	wrmsr(MSR_GSBASE, (uint64_t)&__pcpu[0]);
+	pcpu_init(&__pcpu[0], 0, sizeof(struct pcpu));
+	amd64_bsp_pcpu_init1(&__pcpu[0]);
+	amd64_bsp_ist_init(&__pcpu[0]);
+	__pcpu[0].pc_dynamic = temp_bsp_pcpu.pc_dynamic;
+	__pcpu[0].pc_acpi_id = temp_bsp_pcpu.pc_acpi_id;
+
 	/*
 	 * Initialize the PAT MSR.
 	 * pmap_init_pat() clears and sets CR4_PGE, which, as a
@@ -2071,6 +2094,41 @@ pmap_cache_mask(pmap_t pmap, boolean_t is_pde)
 	return (mask);
 }
 
+static int
+pmap_pat_index(pmap_t pmap, pt_entry_t pte, bool is_pde)
+{
+	int pat_flag, pat_idx;
+
+	pat_idx = 0;
+	switch (pmap->pm_type) {
+	case PT_X86:
+	case PT_RVI:
+		/* The PAT bit is different for PTE's and PDE's. */
+		pat_flag = is_pde ? X86_PG_PDE_PAT : X86_PG_PTE_PAT;
+
+		if ((pte & pat_flag) != 0)
+			pat_idx |= 0x4;
+		if ((pte & PG_NC_PCD) != 0)
+			pat_idx |= 0x2;
+		if ((pte & PG_NC_PWT) != 0)
+			pat_idx |= 0x1;
+		break;
+	case PT_EPT:
+		if ((pte & EPT_PG_IGNORE_PAT) != 0)
+			panic("EPT PTE %#lx has no PAT memory type", pte);
+		pat_idx = (pte & EPT_PG_MEMORY_TYPE(0x7)) >> 3;
+		break;
+	}
+
+	/* See pmap_init_pat(). */
+	if (pat_idx == 4)
+		pat_idx = 0;
+	if (pat_idx == 7)
+		pat_idx = 3;
+
+	return (pat_idx);
+}
+
 bool
 pmap_ps_enabled(pmap_t pmap)
 {
@@ -3050,8 +3108,7 @@ pmap_kextract(vm_offset_t va)
 
 	if (va >= DMAP_MIN_ADDRESS && va < DMAP_MAX_ADDRESS) {
 		pa = DMAP_TO_PHYS(va);
-	} else if (LARGEMAP_MIN_ADDRESS <= va &&
-	    va < PMAP_LARGEMAP_MAX_ADDRESS()) {
+	} else if (PMAP_ADDRESS_IN_LARGEMAP(va)) {
 		pa = pmap_large_map_kextract(va);
 	} else {
 		pde = *vtopde(va);
@@ -3774,6 +3831,49 @@ SYSCTL_PROC(_vm, OID_AUTO, kvm_free, CTLTYPE_LONG|CTLF
     0, 0, kvm_free, "LU", "Amount of KVM free");
 
 /*
+ * Allocate physical memory for the vm_page array and map it into KVA,
+ * attempting to back the vm_pages with domain-local memory.
+ */
+void
+pmap_page_array_startup(long pages)
+{
+	pdp_entry_t *pdpe;
+	pd_entry_t *pde, newpdir;
+	vm_offset_t va, start, end;
+	vm_paddr_t pa;
+	long pfn;
+	int domain, i;
+
+	vm_page_array_size = pages;
+
+	start = va = VM_MIN_KERNEL_ADDRESS;
+	end = va + pages * sizeof(struct vm_page);
+	while (va < end) {
+		pfn = first_page + (va - start) / sizeof(struct vm_page);
+		domain = _vm_phys_domain(ptoa(pfn));
+		pdpe = pmap_pdpe(kernel_pmap, va);
+		if ((*pdpe & X86_PG_V) == 0) {
+			pa = vm_phys_early_alloc(domain, PAGE_SIZE);
+			dump_add_page(pa);
+			pagezero((void *)PHYS_TO_DMAP(pa));
+			*pdpe = (pdp_entry_t)(pa | X86_PG_V | X86_PG_RW |
+			    X86_PG_A | X86_PG_M);
+		}
+		pde = pmap_pdpe_to_pde(pdpe, va);
+		if ((*pde & X86_PG_V) != 0)
+			panic("Unexpected pde");
+		pa = vm_phys_early_alloc(domain, NBPDR);
+		for (i = 0; i < NPDEPG; i++)
+			dump_add_page(pa + i * PAGE_SIZE);
+		newpdir = (pd_entry_t)(pa | X86_PG_V | X86_PG_RW | X86_PG_A |
+		    X86_PG_M | PG_PS | pg_g | pg_nx);
+		pde_store(pde, newpdir);
+		va += NBPDR;
+	}
+	vm_page_array = (vm_page_t)start;
+}
+
+/*
  * grow the number of kernel page table entries, if needed
  */
 void
@@ -7444,7 +7544,7 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t 
 	pt_entry_t *pte, PG_A, PG_G, PG_M, PG_RW, PG_V;
 	vm_offset_t va, va_next;
 	vm_page_t m;
-	boolean_t anychanged;
+	bool anychanged;
 
 	if (advice != MADV_DONTNEED && advice != MADV_FREE)
 		return;
@@ -7463,7 +7563,7 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t 
 	PG_M = pmap_modified_bit(pmap);
 	PG_V = pmap_valid_bit(pmap);
 	PG_RW = pmap_rw_bit(pmap);
-	anychanged = FALSE;
+	anychanged = false;
 	pmap_delayed_invl_start();
 	PMAP_LOCK(pmap);
 	for (; sva < eva; sva = va_next) {
@@ -7505,17 +7605,25 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t 
 			/*
 			 * Unless the page mappings are wired, remove the
 			 * mapping to a single page so that a subsequent
-			 * access may repromote.  Since the underlying page
-			 * table page is fully populated, this removal never
-			 * frees a page table page.
+			 * access may repromote.  Choosing the last page
+			 * within the address range [sva, min(va_next, eva))
+			 * generally results in more repromotions.  Since the
+			 * underlying page table page is fully populated, this
+			 * removal never frees a page table page.
 			 */
 			if ((oldpde & PG_W) == 0) {
-				pte = pmap_pde_to_pte(pde, sva);
+				va = eva;
+				if (va > va_next)
+					va = va_next;
+				va -= PAGE_SIZE;
+				KASSERT(va >= sva,
+				    ("pmap_advise: no address gap"));
+				pte = pmap_pde_to_pte(pde, va);
 				KASSERT((*pte & PG_V) != 0,
 				    ("pmap_advise: invalid PTE"));
-				pmap_remove_pte(pmap, pte, sva, *pde, NULL,
+				pmap_remove_pte(pmap, pte, va, *pde, NULL,
 				    &lock);
-				anychanged = TRUE;
+				anychanged = true;
 			}
 			if (lock != NULL)
 				rw_wunlock(lock);
@@ -7547,7 +7655,7 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t 
 				if (va == va_next)
 					va = sva;
 			} else
-				anychanged = TRUE;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201909090046.x890kONB082069>