freebsd-src/sys/riscv/include
Mark Johnston 35c91b0c27 Implement per-CPU pmap activation tracking for RISC-V.
This reduces the overhead of TLB invalidations by ensuring that we
only interrupt CPUs which are using the given pmap.  Tracking is
performed in pmap_activate(), which gets called during context switches:
from cpu_throw(), if a thread is exiting or an AP is starting, or
cpu_switch() for a regular context switch.

For now, pmap_sync_icache() still must interrupt all CPUs.

Reviewed by:	kib (earlier version), jhb
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D18874
2019-02-13 17:50:01 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
asm.h Permit supervisor to access user VA space for certain functions only. 2018-09-05 11:34:58 +00:00
atomic.h Implement atomic_swap_{int,long,ptr}(9). 2018-08-07 18:56:51 +00:00
bus_dma.h
bus.h
clock.h
counter.h Back pcpu zone with domain correct pages 2018-07-06 02:06:03 +00:00
cpu.h RISC-V: Implement get_cyclecount(9). 2018-11-13 18:20:27 +00:00
cpufunc.h Rename sptbr to satp per v1.10 of the privileged architecture spec. 2018-12-07 15:55:23 +00:00
db_machdep.h
dump.h
efi.h
elf.h Consolidate identical ELF auxargs type defintions. 2018-10-22 22:24:32 +00:00
encoding.h Add RISC-V instructions encoding. 2018-08-13 16:07:18 +00:00
endian.h
exec.h
float.h
floatingpoint.h
fpe.h Various fixes for floating point on RISC-V. 2018-09-19 23:45:18 +00:00
frame.h Replace uses of sbadaddr with stval. 2018-12-19 17:52:09 +00:00
ieeefp.h
in_cksum.h
intr.h o Add driver for PLIC (Platform-Level Interrupt Controller) device. 2018-06-12 17:45:15 +00:00
kdb.h Various fixes for TLB management on RISC-V. 2018-10-15 18:56:54 +00:00
machdep.h
md_var.h
memdev.h
minidump.h
ofw_machdep.h
param.h Implement transparent 2MB superpage promotion for RISC-V. 2019-02-13 17:19:37 +00:00
pcb.h Implement per-CPU pmap activation tracking for RISC-V. 2019-02-13 17:50:01 +00:00
pcpu.h Implement per-CPU pmap activation tracking for RISC-V. 2019-02-13 17:50:01 +00:00
pmap.h Implement per-CPU pmap activation tracking for RISC-V. 2019-02-13 17:50:01 +00:00
pmc_mdep.h
proc.h
profile.h SPDX: Consider code from Carnegie-Mellon University. 2017-11-30 15:48:35 +00:00
psl.h
pte.h Implement transparent 2MB superpage promotion for RISC-V. 2019-02-13 17:19:37 +00:00
ptrace.h
reg.h
reloc.h
resource.h
riscvreg.h Optimize RISC-V copyin(9)/copyout(9) routines. 2019-01-21 19:38:53 +00:00
runq.h
sbi.h Various fixes for TLB management on RISC-V. 2018-10-15 18:56:54 +00:00
setjmp.h Fix setjmp for RISC-V: 2018-07-23 09:54:28 +00:00
sf_buf.h
sigframe.h Follow arm[32] and sparc64 KAPI and provide the FreeBSD standard spelling 2019-01-29 20:10:27 +00:00
signal.h
smp.h o Add driver for PLIC (Platform-Level Interrupt Controller) device. 2018-06-12 17:45:15 +00:00
stack.h
stdarg.h Use standard pattern for stdargs.h 2018-02-12 14:48:05 +00:00
sysarch.h
trap.h
ucontext.h
vdso.h
vm.h
vmparam.h Implement transparent 2MB superpage promotion for RISC-V. 2019-02-13 17:19:37 +00:00