Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/thorpej-futex]: src/sys/uvm/pmap Sync w/ HEAD.
details: https://anonhg.NetBSD.org/src/rev/fcb9f453725a
branches: thorpej-futex
changeset: 949160:fcb9f453725a
user: thorpej <thorpej%NetBSD.org@localhost>
date: Sun Jan 03 16:34:50 2021 +0000
description:
Sync w/ HEAD.
diffstat:
sys/arch/aarch64/aarch64/bus_space.c | 34 +-
sys/arch/aarch64/aarch64/cpuswitch.S | 7 +-
sys/arch/aarch64/aarch64/locore.S | 5 +-
sys/arch/aarch64/aarch64/locore_el2.S | 5 +-
sys/arch/aarch64/aarch64/pmap.c | 6 +-
sys/arch/alpha/alpha/pmap.c | 15 +-
sys/arch/amiga/dev/event.c | 10 +-
sys/arch/arc/dev/opms.c | 10 +-
sys/arch/arm/acpi/gicv3_acpi.c | 6 +-
sys/arch/arm/amlogic/files.meson | 38 +-
sys/arch/arm/amlogic/meson_clk.h | 30 +-
sys/arch/arm/amlogic/meson_clk_pll.c | 91 +-
sys/arch/arm/amlogic/meson_dwmac.c | 34 +-
sys/arch/arm/amlogic/meson_pinctrl.c | 34 +-
sys/arch/arm/amlogic/meson_pinctrl.h | 12 +-
sys/arch/arm/amlogic/meson_pwm.c | 391 +
sys/arch/arm/amlogic/meson_resets.c | 5 +-
sys/arch/arm/amlogic/meson_thermal.c | 246 +
sys/arch/arm/amlogic/meson_usbctrl.c | 299 +
sys/arch/arm/amlogic/mesong12_aoclkc.c | 135 +
sys/arch/arm/amlogic/mesong12_aoclkc.h | 71 +
sys/arch/arm/amlogic/mesong12_clkc.c | 1534 +
sys/arch/arm/amlogic/mesong12_clkc.h | 334 +
sys/arch/arm/amlogic/mesong12_usb2phy.c | 340 +
sys/arch/arm/amlogic/mesong12_usb3pciephy.c | 356 +
sys/arch/arm/amlogic/mesong12a_pinctrl.c | 676 +
sys/arch/arm/amlogic/mesongx_mmc.c | 37 +-
sys/arch/arm/arm/efi_runtime.c | 8 +-
sys/arch/arm/arm32/bus_dma.c | 61 +-
sys/arch/arm/broadcom/bcm2835_bsc_fdt.c | 6 +-
sys/arch/arm/broadcom/bcm2835_intr.c | 8 +-
sys/arch/arm/cortex/gicv3.c | 17 +-
sys/arch/arm/cortex/gicv3_its.c | 8 +-
sys/arch/arm/dts/meson-g12b-odroid-n2-plus.dts | 228 +
sys/arch/arm/dts/rk3328-rock64.dts | 6 +-
sys/arch/arm/fdt/arm_fdt.c | 6 +-
sys/arch/arm/imx/fdt/files.imx6 | 127 -
sys/arch/arm/imx/fdt/if_enet_imx.c | 269 -
sys/arch/arm/imx/fdt/imx6_ahcisata.c | 482 -
sys/arch/arm/imx/fdt/imx6_clk.c | 141 -
sys/arch/arm/imx/fdt/imx6_com.c | 167 -
sys/arch/arm/imx/fdt/imx6_dwhdmi.c | 285 -
sys/arch/arm/imx/fdt/imx6_gpc.c | 158 -
sys/arch/arm/imx/fdt/imx6_gpio.c | 274 -
sys/arch/arm/imx/fdt/imx6_i2c.c | 83 -
sys/arch/arm/imx/fdt/imx6_iomux.c | 185 -
sys/arch/arm/imx/fdt/imx6_pcie.c | 272 -
sys/arch/arm/imx/fdt/imx6_platform.c | 233 -
sys/arch/arm/imx/fdt/imx6_platform.h | 35 -
sys/arch/arm/imx/fdt/imx6_pwm.c | 142 -
sys/arch/arm/imx/fdt/imx6_sdhc.c | 241 -
sys/arch/arm/imx/fdt/imx6_spi.c | 169 -
sys/arch/arm/imx/fdt/imx6_usb.c | 279 -
sys/arch/arm/imx/fdt/imx6_usbphy.c | 163 -
sys/arch/arm/imx/fdt/imx7_gpc.c | 264 -
sys/arch/arm/imx/fdt/imx7d_ccm.c | 329 -
sys/arch/arm/imx/fdt/imx7d_ccm.h | 482 -
sys/arch/arm/imx/fdt/imx8mq_ccm.c | 207 -
sys/arch/arm/imx/fdt/imx8mq_ccm.h | 321 -
sys/arch/arm/imx/fdt/imx8mq_usbphy.c | 184 -
sys/arch/arm/imx/fdt/imx_ccm.c | 309 -
sys/arch/arm/imx/fdt/imx_ccm.h | 351 -
sys/arch/arm/imx/fdt/imx_ccm_composite.c | 201 -
sys/arch/arm/imx/fdt/imx_ccm_div.c | 124 -
sys/arch/arm/imx/fdt/imx_ccm_extclk.c | 99 -
sys/arch/arm/imx/fdt/imx_ccm_fixed.c | 48 -
sys/arch/arm/imx/fdt/imx_ccm_fixed_factor.c | 103 -
sys/arch/arm/imx/fdt/imx_ccm_gate.c | 67 -
sys/arch/arm/imx/fdt/imx_ccm_mux.c | 78 -
sys/arch/arm/imx/fdt/imx_ccm_pll.c | 114 -
sys/arch/arm/imx/files.imx7 | 99 -
sys/arch/arm/imx/if_enet.c | 6 +-
sys/arch/arm/imx/if_enet_imx6.c | 205 -
sys/arch/arm/imx/if_enet_imx7.c | 213 -
sys/arch/arm/imx/imx6_ahcisata.c | 373 -
sys/arch/arm/imx/imx6_ahcisatareg.h | 76 -
sys/arch/arm/imx/imx6_axi.c | 160 -
sys/arch/arm/imx/imx6_board.c | 284 -
sys/arch/arm/imx/imx6_ccm.c | 1559 -
sys/arch/arm/imx/imx6_ccmreg.h | 508 -
sys/arch/arm/imx/imx6_ccmvar.h | 569 -
sys/arch/arm/imx/imx6_clk.c | 94 -
sys/arch/arm/imx/imx6_clock.c | 131 -
sys/arch/arm/imx/imx6_gpcreg.h | 41 -
sys/arch/arm/imx/imx6_gpio.c | 137 -
sys/arch/arm/imx/imx6_i2c.c | 99 -
sys/arch/arm/imx/imx6_intr.h | 206 -
sys/arch/arm/imx/imx6_iomux.c | 202 -
sys/arch/arm/imx/imx6_iomuxreg.h | 2301 --
sys/arch/arm/imx/imx6_mmdcreg.h | 212 -
sys/arch/arm/imx/imx6_ocotp.c | 125 -
sys/arch/arm/imx/imx6_ocotpreg.h | 80 -
sys/arch/arm/imx/imx6_ocotpvar.h | 34 -
sys/arch/arm/imx/imx6_pcie.c | 233 -
sys/arch/arm/imx/imx6_pciereg.h | 295 -
sys/arch/arm/imx/imx6_reg.h | 225 -
sys/arch/arm/imx/imx6_snvs.c | 73 -
sys/arch/arm/imx/imx6_snvsreg.h | 88 -
sys/arch/arm/imx/imx6_srcreg.h | 105 -
sys/arch/arm/imx/imx6_uart.c | 73 -
sys/arch/arm/imx/imx6_usb.c | 139 -
sys/arch/arm/imx/imx6_usbphy.c | 166 -
sys/arch/arm/imx/imx6_usbphyreg.h | 64 -
sys/arch/arm/imx/imx6_usbreg.h | 113 -
sys/arch/arm/imx/imx6_usdhc.c | 209 -
sys/arch/arm/imx/imx6_wdog.c | 67 -
sys/arch/arm/imx/imx6var.h | 84 -
sys/arch/arm/imx/imx7_axi.c | 157 -
sys/arch/arm/imx/imx7_board.c | 244 -
sys/arch/arm/imx/imx7_ccm.c | 1613 -
sys/arch/arm/imx/imx7_ccmreg.h | 5261 -----
sys/arch/arm/imx/imx7_ccmvar.h | 159 -
sys/arch/arm/imx/imx7_gpcreg.h | 163 -
sys/arch/arm/imx/imx7_gpio.c | 125 -
sys/arch/arm/imx/imx7_intr.h | 169 -
sys/arch/arm/imx/imx7_iomux.c | 188 -
sys/arch/arm/imx/imx7_iomuxreg.h | 614 -
sys/arch/arm/imx/imx7_ocotp.c | 124 -
sys/arch/arm/imx/imx7_ocotpreg.h | 112 -
sys/arch/arm/imx/imx7_ocotpvar.h | 34 -
sys/arch/arm/imx/imx7_rdcreg.h | 643 -
sys/arch/arm/imx/imx7_snvs.c | 69 -
sys/arch/arm/imx/imx7_srcreg.h | 77 -
sys/arch/arm/imx/imx7_uart.c | 77 -
sys/arch/arm/imx/imx7_usb.c | 250 -
sys/arch/arm/imx/imx7_usbreg.h | 108 -
sys/arch/arm/imx/imx7_usdhc.c | 224 -
sys/arch/arm/imx/imx7_wdog.c | 65 -
sys/arch/arm/imx/imx7reg.h | 202 -
sys/arch/arm/imx/imx7var.h | 140 -
sys/arch/arm/imx/imxpcie.c | 844 -
sys/arch/arm/imx/imxusb.c | 5 +-
sys/arch/arm/nvidia/tegra_ahcisata.c | 5 +-
sys/arch/arm/nvidia/tegra_i2c.c | 20 +-
sys/arch/arm/nxp/files.imx | 152 +
sys/arch/arm/nxp/if_enet_imx.c | 269 +
sys/arch/arm/nxp/imx6_ccm.c | 1557 +
sys/arch/arm/nxp/imx6_ccmreg.h | 508 +
sys/arch/arm/nxp/imx6_ccmvar.h | 569 +
sys/arch/arm/nxp/imx6_clk.c | 146 +
sys/arch/arm/nxp/imx6_dwhdmi.c | 285 +
sys/arch/arm/nxp/imx6_gpc.c | 157 +
sys/arch/arm/nxp/imx6_gpcreg.h | 41 +
sys/arch/arm/nxp/imx6_iomux.c | 185 +
sys/arch/arm/nxp/imx6_iomuxreg.h | 2301 ++
sys/arch/arm/nxp/imx6_ocotp.c | 141 +
sys/arch/arm/nxp/imx6_ocotpreg.h | 80 +
sys/arch/arm/nxp/imx6_ocotpvar.h | 34 +
sys/arch/arm/nxp/imx6_pcie.c | 272 +
sys/arch/arm/nxp/imx6_platform.c | 236 +
sys/arch/arm/nxp/imx6_platform.h | 35 +
sys/arch/arm/nxp/imx6_pwm.c | 142 +
sys/arch/arm/nxp/imx6_reg.h | 226 +
sys/arch/arm/nxp/imx6_spi.c | 174 +
sys/arch/arm/nxp/imx6_srcreg.h | 105 +
sys/arch/arm/nxp/imx6_usb.c | 279 +
sys/arch/arm/nxp/imx6_usbphy.c | 163 +
sys/arch/arm/nxp/imx6_usbphyreg.h | 64 +
sys/arch/arm/nxp/imx6_usbreg.h | 113 +
sys/arch/arm/nxp/imx6var.h | 84 +
sys/arch/arm/nxp/imx7_gpc.c | 264 +
sys/arch/arm/nxp/imx7d_ccm.c | 329 +
sys/arch/arm/nxp/imx7d_ccm.h | 482 +
sys/arch/arm/nxp/imx8mq_ccm.c | 207 +
sys/arch/arm/nxp/imx8mq_ccm.h | 321 +
sys/arch/arm/nxp/imx8mq_usbphy.c | 184 +
sys/arch/arm/nxp/imx_ahcisata.c | 482 +
sys/arch/arm/nxp/imx_ahcisatareg.h | 76 +
sys/arch/arm/nxp/imx_ccm.c | 309 +
sys/arch/arm/nxp/imx_ccm.h | 351 +
sys/arch/arm/nxp/imx_ccm_composite.c | 201 +
sys/arch/arm/nxp/imx_ccm_div.c | 124 +
sys/arch/arm/nxp/imx_ccm_extclk.c | 99 +
sys/arch/arm/nxp/imx_ccm_fixed.c | 48 +
sys/arch/arm/nxp/imx_ccm_fixed_factor.c | 103 +
sys/arch/arm/nxp/imx_ccm_gate.c | 67 +
sys/arch/arm/nxp/imx_ccm_mux.c | 78 +
sys/arch/arm/nxp/imx_ccm_pll.c | 114 +
sys/arch/arm/nxp/imx_com.c | 166 +
sys/arch/arm/nxp/imx_gpio.c | 275 +
sys/arch/arm/nxp/imx_i2c.c | 85 +
sys/arch/arm/nxp/imx_sdhc.c | 240 +
sys/arch/arm/nxp/imx_snvs.c | 72 +
sys/arch/arm/nxp/imxpcie.c | 843 +
sys/arch/arm/nxp/imxwdog.c | 232 +
sys/arch/arm/rockchip/rk3328_cru.c | 78 +-
sys/arch/arm/rockchip/rk3328_cru.h | 4 +-
sys/arch/arm/rockchip/rk_i2c.c | 18 +-
sys/arch/arm/rockchip/rk_i2s.c | 18 +-
sys/arch/arm/samsung/exynos_i2c.c | 20 +-
sys/arch/arm/sociox/sni_i2c.c | 19 +-
sys/arch/arm/sunxi/sunxi_rsb.c | 18 +-
sys/arch/arm/sunxi/sunxi_twi.c | 18 +-
sys/arch/arm/ti/ti_iic.c | 20 +-
sys/arch/atari/dev/event.c | 19 +-
sys/arch/evbarm/conf/GENERIC | 157 +-
sys/arch/evbarm/conf/GENERIC.common | 5 +-
sys/arch/evbarm/conf/GENERIC64 | 13 +-
sys/arch/evbarm/conf/files.generic | 4 +-
sys/arch/evbarm/conf/files.generic64 | 4 +-
sys/arch/evbarm/evbarm/autoconf.c | 12 +-
sys/arch/evbarm/fdt/fdt_machdep.c | 20 +-
sys/arch/hp300/dev/dcm.c | 19 +-
sys/arch/hp300/dev/dnkbd.c | 15 +-
sys/arch/hp300/dev/hil_intio.c | 13 +-
sys/arch/hp300/dev/sti_sgc.c | 220 +-
sys/arch/landisk/dev/button.c | 12 +-
sys/arch/landisk/landisk/bus_dma.c | 23 +-
sys/arch/landisk/landisk/intr.c | 10 +-
sys/arch/luna68k/dev/lcd.c | 40 +-
sys/arch/luna68k/dev/siotty.c | 36 +-
sys/arch/luna68k/dev/xp.c | 28 +-
sys/arch/luna68k/luna68k/isr.c | 8 +-
sys/arch/m68k/Makefile.cmachflags | 6 +-
sys/arch/m68k/include/pmap_coldfire.h | 8 +-
sys/arch/m68k/m68k/bus_dma.c | 24 +-
sys/arch/mac68k/dev/aed.c | 11 +-
sys/arch/mac68k/dev/macfb.c | 11 +-
sys/arch/mac68k/nubus/cpi_nubus.c | 10 +-
sys/arch/mac68k/obio/iwm_fd.c | 17 +-
sys/arch/macppc/dev/aed.c | 11 +-
sys/arch/macppc/dev/apm.c | 10 +-
sys/arch/mips/include/pmap.h | 18 +-
sys/arch/mips/mips/pmap_machdep.c | 100 +-
sys/arch/powerpc/booke/booke_pmap.c | 10 +-
sys/arch/powerpc/include/booke/pmap.h | 10 +-
sys/arch/riscv/include/pmap.h | 12 +-
sys/arch/riscv/include/sysreg.h | 6 +-
sys/arch/riscv/riscv/trap.c | 7 +-
sys/arch/sparc/include/pmap.h | 11 +-
sys/arch/sparc64/dev/pcf8591_envctrl.c | 149 +-
sys/arch/sparc64/sparc64/locore.s | 4 +-
sys/arch/sparc64/sparc64/ofw_patch.c | 16 +-
sys/arch/x68k/dev/event.c | 10 +-
sys/coda/coda_psdev.c | 10 +-
sys/compat/common/bio_30.c | 20 +-
sys/conf/copyright | 2 +-
sys/ddb/TODO | 22 +-
sys/dev/apm/apm.c | 10 +-
sys/dev/ata/ata_subr.c | 9 +-
sys/dev/ata/ata_wdc.c | 24 +-
sys/dev/ata/satareg.h | 8 +-
sys/dev/audio/audio.c | 21 +-
sys/dev/bio.c | 10 +-
sys/dev/fdt/dwiic_fdt.c | 19 +-
sys/dev/fdt/fdt_gpio.c | 28 +-
sys/dev/fdt/fdt_i2c.c | 15 +-
sys/dev/fdt/fdtvar.h | 10 +-
sys/dev/fdt/files.fdt | 10 +-
sys/dev/fdt/i2cmux_fdt.c | 281 +
sys/dev/fdt/pwmregulator.c | 325 +
sys/dev/fss.c | 18 +-
sys/dev/hdaudio/hdaudio.c | 20 +-
sys/dev/hpc/apm/apmdev.c | 10 +-
sys/dev/i2c/em3027.c | 17 +-
sys/dev/i2c/files.i2c | 11 +-
sys/dev/i2c/i2cmux.c | 228 +
sys/dev/i2c/i2cmuxvar.h | 69 +
sys/dev/i2c/i2cvar.h | 20 +-
sys/dev/i2c/motoi2c.c | 20 +-
sys/dev/i2c/pcai2cmux.c | 354 +
sys/dev/i2c/pcf8574.c | 208 +-
sys/dev/i2c/tcakp.c | 6 +-
sys/dev/ic/ahcisata_core.c | 165 +-
sys/dev/ic/ahcisatavar.h | 7 +-
sys/dev/ic/dwc_gmac.c | 6 +-
sys/dev/ic/mvsata.c | 24 +-
sys/dev/ic/nvme.c | 8 +-
sys/dev/ic/siisata.c | 24 +-
sys/dev/ic/sti.c | 578 +-
sys/dev/ic/stivar.h | 21 +-
sys/dev/ir/irframe_tty.c | 16 +-
sys/dev/midi.c | 27 +-
sys/dev/ofw/ofw_subr.c | 21 +-
sys/dev/ofw/openfirm.h | 3 +-
sys/dev/pci/aceride.c | 11 +-
sys/dev/pci/ahcisata_pci.c | 8 +-
sys/dev/pci/ixgbe/ixgbe.c | 293 +-
sys/dev/pci/ixgbe/ixgbe.h | 15 +-
sys/dev/pci/ixgbe/ixgbe_type.h | 7 +-
sys/dev/pci/oboe.c | 16 +-
sys/dev/pci/pci_map.c | 326 +-
sys/dev/pci/pciconf.c | 22 +-
sys/dev/pci/pcidevs | 53 +-
sys/dev/pci/pcidevs.h | 33 +-
sys/dev/pci/pcidevs_data.h | 566 +-
sys/dev/pci/pcireg.h | 60 +-
sys/dev/pci/vio9p.c | 14 +-
sys/dev/putter/putter.c | 10 +-
sys/dev/qbus/qd.c | 11 +-
sys/dev/sbus/bpp.c | 16 +-
sys/dev/scsipi/ch.c | 11 +-
sys/dev/sequencer.c | 16 +-
sys/dev/sun/event.c | 10 +-
sys/dev/sysmon/sysmon_power.c | 12 +-
sys/dev/usb/ehci.c | 5 +-
sys/dev/usb/ohci.c | 5 +-
sys/dev/usb/uaudio.c | 35 +-
sys/dev/usb/udsir.c | 16 +-
sys/dev/usb/ugen.c | 14 +-
sys/dev/usb/uhci.c | 5 +-
sys/dev/usb/uhid.c | 11 +-
sys/dev/usb/uirda.c | 16 +-
sys/dev/usb/usb.c | 10 +-
sys/dev/usb/usb_mem.c | 13 +-
sys/dev/usb/usb_mem.h | 3 +-
sys/dev/usb/usb_quirks.c | 6 +-
sys/dev/usb/usbdevs | 6 +-
sys/dev/usb/usbdevs.h | 8 +-
sys/dev/usb/usbdevs_data.h | 10167 +++++----
sys/dev/usb/uscanner.c | 12 +-
sys/dev/usb/ustir.c | 16 +-
sys/dev/usb/xhci.c | 32 +-
sys/dev/wscons/wsbell.c | 6 +-
sys/dev/wscons/wsdisplay.c | 14 +-
sys/dev/wscons/wsdisplay_vcons.c | 100 +-
sys/dev/wscons/wsevent.c | 10 +-
sys/dev/wscons/wskbd.c | 11 +-
sys/dev/wscons/wsmouse.c | 8 +-
sys/dtb/arm64/amlogic/Makefile | 5 +-
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_uvd_v4_2.c | 8 +-
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_uvd_v5_0.c | 6 +-
sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_uvd_v6_0.c | 6 +-
sys/external/bsd/drm2/dist/drm/i915/intel_pm.c | 6 +-
sys/external/bsd/drm2/dist/drm/radeon/radeon_uvd_v1_0.c | 8 +-
sys/external/bsd/drm2/dist/drm/vmwgfx/vmwgfx_drv.h | 4 +-
sys/external/bsd/drm2/drm/drm_cdevsw.c | 8 +-
sys/external/bsd/dwc2/dwc2.c | 5 +-
sys/external/isc/atheros_hal/dist/ah.h | 4 +-
sys/kern/core_elf32.c | 6 +-
sys/kern/kern_descrip.c | 7 +-
sys/kern/kern_event.c | 251 +-
sys/kern/kern_lock.c | 8 +-
sys/kern/kern_mutex.c | 14 +-
sys/kern/kern_proc.c | 7 +-
sys/kern/subr_asan.c | 13 +-
sys/kern/subr_lockdebug.c | 22 +-
sys/kern/subr_pool.c | 39 +-
sys/kern/subr_xcall.c | 18 +-
sys/kern/uipc_sem.c | 15 +-
sys/kern/vfs_lookup.c | 45 +-
sys/lib/libsa/ufs.c | 5 +-
sys/miscfs/fifofs/fifo_vnops.c | 18 +-
sys/miscfs/procfs/procfs_vfsops.c | 6 +-
sys/miscfs/specfs/spec_vnops.c | 41 +-
sys/net/bpf.c | 13 +-
sys/net/if_tap.c | 8 +-
sys/net/if_tun.c | 11 +-
sys/netinet6/nd6.c | 10 +-
sys/stand/efiboot/efifdt.c | 42 +-
sys/sys/lock.h | 37 +-
sys/ufs/ufs/ufs_quota1.c | 10 +-
sys/uvm/pmap/pmap.c | 106 +-
sys/uvm/pmap/pmap.h | 7 +-
sys/uvm/pmap/vmpagemd.h | 17 +-
sys/uvm/uvm_page.c | 8 +-
sys/uvm/uvm_page.h | 2 +-
357 files changed, 28695 insertions(+), 35732 deletions(-)
diffs (truncated from 75720 to 300 lines):
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/aarch64/aarch64/bus_space.c
--- a/sys/arch/aarch64/aarch64/bus_space.c Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/aarch64/aarch64/bus_space.c Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: bus_space.c,v 1.11.2.1 2020/12/14 14:37:44 thorpej Exp $ */
+/* $NetBSD: bus_space.c,v 1.11.2.2 2021/01/03 16:34:50 thorpej Exp $ */
/*
* Copyright (c) 2017 Ryo Shimizu <ryo%nerv.org@localhost>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: bus_space.c,v 1.11.2.1 2020/12/14 14:37:44 thorpej Exp $");
+__KERNEL_RCSID(1, "$NetBSD: bus_space.c,v 1.11.2.2 2021/01/03 16:34:50 thorpej Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -613,6 +613,36 @@
{
flags &= BUS_SPACE_BARRIER_READ|BUS_SPACE_BARRIER_WRITE;
+ /*
+ * For default mappings, which are mapped with nGnRE memory
+ * regions, all loads and stores are issued in program order
+ * (non-reordered).
+ *
+ * For strongly ordered mappings, which are mapped with nGnRnE
+ * regions, all loads and stores are issued in program order
+ * (non-reordered) and will complete at the endpoint, thus
+ * not requiring any barrier.
+ *
+ * For BUS_SPACE_MAP_PREFETCHABLE mappings, which are mapped
+ * as normal memory with the non-cacheable cacheability attr-
+ * ibute, loads and stores may be issued out of order, and
+ * writes may be buffered, potentially requiring any of the
+ * read, write, and read/write barriers.
+ *
+ * For BUS_SPACE_MAP_CACHEABLE mappings, which are mapped as
+ * normal memory with the write-back cacheability attribute
+ * (just like normal memory), the same potential for any of
+ * the barriers exists.
+ *
+ * We can't easily tell here how the region was mapped (without
+ * consulting the page tables), so just issue the barrier
+ * unconditionally. Chances are either it's necessary or the
+ * cost is small in comparison to device register I/O.
+ *
+ * The bus_space(9) man page is not clear whether barriers
+ * should enforce ordering or completion. To be safe, use dsb
+ * (ensure completion) here instead of dmb (ordering).
+ */
switch (flags) {
case BUS_SPACE_BARRIER_READ:
dsb(ld);
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/aarch64/aarch64/cpuswitch.S
--- a/sys/arch/aarch64/aarch64/cpuswitch.S Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/aarch64/aarch64/cpuswitch.S Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: cpuswitch.S,v 1.31 2020/10/22 07:36:02 skrll Exp $ */
+/* $NetBSD: cpuswitch.S,v 1.31.2.1 2021/01/03 16:34:50 thorpej Exp $ */
/*-
* Copyright (c) 2014, 2020 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
#include "opt_ddb.h"
#include "opt_kasan.h"
-RCSID("$NetBSD: cpuswitch.S,v 1.31 2020/10/22 07:36:02 skrll Exp $")
+RCSID("$NetBSD: cpuswitch.S,v 1.31.2.1 2021/01/03 16:34:50 thorpej Exp $")
ARMV8_DEFINE_OPTIONS
@@ -86,6 +86,7 @@
DISABLE_INTERRUPT
mov sp, x4 /* restore stack pointer */
msr cpacr_el1, x5 /* restore cpacr_el1 */
+ isb
#ifdef ARMV83_PAC
/* Switch the PAC key. */
@@ -191,6 +192,7 @@
mov x5, #CPACR_FPEN_NONE
msr cpacr_el1, x5 /* cpacr_el1 = CPACR_FPEN_NONE */
+ isb
#ifdef ARMV83_PAC
/* Switch the PAC key. */
@@ -223,6 +225,7 @@
mov sp, x4 /* restore pinned_lwp sp */
msr cpacr_el1, x5 /* restore pinned_lwp cpacr */
+ isb
#ifdef ARMV83_PAC
/* Restore the PAC key. */
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/aarch64/aarch64/locore.S
--- a/sys/arch/aarch64/aarch64/locore.S Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/aarch64/aarch64/locore.S Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.S,v 1.74 2020/10/22 07:16:06 ryo Exp $ */
+/* $NetBSD: locore.S,v 1.74.2.1 2021/01/03 16:34:50 thorpej Exp $ */
/*
* Copyright (c) 2017 Ryo Shimizu <ryo%nerv.org@localhost>
@@ -38,7 +38,7 @@
#include <aarch64/hypervisor.h>
#include "assym.h"
-RCSID("$NetBSD: locore.S,v 1.74 2020/10/22 07:16:06 ryo Exp $")
+RCSID("$NetBSD: locore.S,v 1.74.2.1 2021/01/03 16:34:50 thorpej Exp $")
#ifdef AARCH64_DEVICE_MEM_STRONGLY_ORDERED
#define MAIR_DEVICE_MEM MAIR_DEVICE_nGnRnE
@@ -250,6 +250,7 @@
/* No trap system register access, and Trap FP/SIMD access */
msr cpacr_el1, xzr
+ isb
/* allow to read CNTVCT_EL0 and CNTFRQ_EL0 from EL0 */
mrs x0, cntkctl_el1
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/aarch64/aarch64/locore_el2.S
--- a/sys/arch/aarch64/aarch64/locore_el2.S Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/aarch64/aarch64/locore_el2.S Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore_el2.S,v 1.7 2020/09/15 09:28:20 ryo Exp $ */
+/* $NetBSD: locore_el2.S,v 1.7.2.1 2021/01/03 16:34:50 thorpej Exp $ */
/*-
* Copyright (c) 2012-2014 Andrew Turner
@@ -32,7 +32,7 @@
#include <aarch64/hypervisor.h>
#include "assym.h"
-RCSID("$NetBSD: locore_el2.S,v 1.7 2020/09/15 09:28:20 ryo Exp $")
+RCSID("$NetBSD: locore_el2.S,v 1.7.2.1 2021/01/03 16:34:50 thorpej Exp $")
/*
* For use in #include "locore_el2.S".
@@ -85,6 +85,7 @@
bic x2, x2, #CPACR_FPEN
orr x2, x2, #CPACR_FPEN_ALL
msr cpacr_el1, x2
+ isb
/* Don't trap to EL2 on access to various registers. */
mov x2, #CPTR_RES1
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/aarch64/aarch64/pmap.c
--- a/sys/arch/aarch64/aarch64/pmap.c Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/aarch64/aarch64/pmap.c Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.94.2.1 2020/12/14 14:37:44 thorpej Exp $ */
+/* $NetBSD: pmap.c,v 1.94.2.2 2021/01/03 16:34:50 thorpej Exp $ */
/*
* Copyright (c) 2017 Ryo Shimizu <ryo%nerv.org@localhost>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.94.2.1 2020/12/14 14:37:44 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.94.2.2 2021/01/03 16:34:50 thorpej Exp $");
#include "opt_arm_debug.h"
#include "opt_ddb.h"
@@ -632,7 +632,7 @@
PMAP_COUNT(pdp_alloc);
PMAP_PAGE_INIT(VM_PAGE_TO_PP(pg));
} else {
- /* uvm_pageboot_alloc() returns AARCH64 direct mapping address */
+ /* uvm_pageboot_alloc() returns a direct mapping address */
pg = NULL;
pa = AARCH64_KVA_TO_PA(
uvm_pageboot_alloc(Ln_TABLE_SIZE));
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/alpha/alpha/pmap.c
--- a/sys/arch/alpha/alpha/pmap.c Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/alpha/alpha/pmap.c Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.273 2020/09/11 03:54:14 simonb Exp $ */
+/* $NetBSD: pmap.c,v 1.273.2.1 2021/01/03 16:34:50 thorpej Exp $ */
/*-
* Copyright (c) 1998, 1999, 2000, 2001, 2007, 2008, 2020
@@ -135,7 +135,7 @@
#include <sys/cdefs.h> /* RCS ID & Copyright macro defns */
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.273 2020/09/11 03:54:14 simonb Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.273.2.1 2021/01/03 16:34:50 thorpej Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -2309,6 +2309,7 @@
pt_entry_t *pte, opte;
pmap_t const pmap = pmap_kernel();
struct pmap_tlb_context tlbctx;
+ int count = 0;
#ifdef DEBUG
if (pmapdebug & (PDB_FOLLOW|PDB_ENTER))
@@ -2330,12 +2331,16 @@
atomic_store_relaxed(pte, PG_NV);
pmap_tlb_shootdown(pmap, va, opte, &tlbctx);
- /* Update stats. */
- PMAP_STAT_DECR(pmap->pm_stats.resident_count, 1);
- PMAP_STAT_DECR(pmap->pm_stats.wired_count, 1);
+ count++;
}
}
+ /* Update stats. */
+ if (__predict_true(count != 0)) {
+ PMAP_STAT_DECR(pmap->pm_stats.resident_count, count);
+ PMAP_STAT_DECR(pmap->pm_stats.wired_count, count);
+ }
+
pmap_tlb_shootnow(&tlbctx);
TLB_COUNT(reason_kremove);
}
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/amiga/dev/event.c
--- a/sys/arch/amiga/dev/event.c Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/amiga/dev/event.c Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: event.c,v 1.14 2017/10/25 08:12:37 maya Exp $ */
+/* $NetBSD: event.c,v 1.14.16.1 2021/01/03 16:34:50 thorpej Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: event.c,v 1.14 2017/10/25 08:12:37 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: event.c,v 1.14.16.1 2021/01/03 16:34:50 thorpej Exp $");
/*
* Internal `Firm_event' interface for the keyboard and mouse drivers.
@@ -167,7 +167,7 @@
int s;
s = splev();
- SLIST_REMOVE(&ev->ev_sel.sel_klist, kn, knote, kn_selnext);
+ selremove_knote(&ev->ev_sel, kn);
splx(s);
}
@@ -200,12 +200,10 @@
int
ev_kqfilter(struct evvar *ev, struct knote *kn)
{
- struct klist *klist;
int s;
switch (kn->kn_filter) {
case EVFILT_READ:
- klist = &ev->ev_sel.sel_klist;
kn->kn_fop = &ev_filtops;
break;
@@ -216,7 +214,7 @@
kn->kn_hook = ev;
s = splev();
- SLIST_INSERT_HEAD(klist, kn, kn_selnext);
+ selrecord_knote(&ev->ev_sel, kn);
splx(s);
return (0);
diff -r 9147d9776f2e -r fcb9f453725a sys/arch/arc/dev/opms.c
--- a/sys/arch/arc/dev/opms.c Sun Jan 03 16:14:04 2021 +0000
+++ b/sys/arch/arc/dev/opms.c Sun Jan 03 16:34:50 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: opms.c,v 1.23 2018/09/03 16:29:22 riastradh Exp $ */
+/* $NetBSD: opms.c,v 1.23.12.1 2021/01/03 16:34:50 thorpej Exp $ */
/* $OpenBSD: pccons.c,v 1.22 1999/01/30 22:39:37 imp Exp $ */
/* NetBSD: pms.c,v 1.21 1995/04/18 02:25:18 mycroft Exp */
@@ -80,7 +80,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: opms.c,v 1.23 2018/09/03 16:29:22 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: opms.c,v 1.23.12.1 2021/01/03 16:34:50 thorpej Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -459,7 +459,7 @@
int s;
s = spltty();
- SLIST_REMOVE(&sc->sc_rsel.sel_klist, kn, knote, kn_selnext);
+ selremove_knote(&sc->sc_rsel, kn);
splx(s);
}
@@ -483,12 +483,10 @@
opmskqfilter(dev_t dev, struct knote *kn)
Home |
Main Index |
Thread Index |
Old Index