opnsense-src/sys/mips/mips
Alan Cox 37657ad5fb Invalidate the mapping before updating its physical address.
Doing so ensures that all threads sharing the pmap have a consistent
view of the mapping.  This fixes the problem described in the commit
log message for r329254 without the overhead of an extra fault in the
common case.  (Once the riscv pmap_enter() implementation is similarly
modified, the workaround added in r329254 can be removed, reducing the
overhead of CoW faults.)

See also r335784 for amd64.  The mips implementation of pmap_enter()
already reused the PV entry from the old mapping.

Reviewed by:	kib, markj
MFC after:	3 weeks
Differential Revision:	https://reviews.freebsd.org/D16199
2018-07-13 17:12:50 +00:00
..
autoconf.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
bcopy.S Make memmove an alias for memcpy 2018-05-24 21:11:24 +00:00
bus_space_generic.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
busdma_machdep.c Garbage collect trailing whitespace. 2018-02-05 18:06:54 +00:00
cache.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cache_mipsNN.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
cpu.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
db_disasm.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
db_interface.c Remove mips MD atomic_load_64 and atomic_store_64. 2017-12-22 23:27:03 +00:00
db_trace.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
dump_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
elf_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
elf_trampoline.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
exception.S Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
fp.S Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
freebsd32_machdep.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
gdb_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
genassym.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
in_cksum.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
inckern.S Make the ELF trampoline binary ELF executable (and do some cleanup). 2010-12-16 04:56:03 +00:00
intr_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
libkern_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
locore.S Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
machdep.c Fix compilation of mips_postboot_fixup() with a C11 compiler 2018-02-07 16:58:01 +00:00
mem.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
minidump_machdep.c Print the dump progress indicator after calling dump_start(). 2018-05-01 17:32:43 +00:00
mips_pic.c bhnd(4): implement MIPS and PCI(e) interrupt support 2017-11-21 23:15:20 +00:00
mp_machdep.c Add SMP support for BERI CPU. 2018-04-12 17:43:19 +00:00
mpboot.S Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
nexus.c Preemptively map MIPS INTRNG interrupts on non-FDT MIPS targets 2017-11-21 01:54:48 +00:00
octeon_cop2.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
octeon_cop2_swtch.S Rename assym.s to assym.inc 2018-03-20 17:58:51 +00:00
ofw_machdep.c Fix a copyright glitch before it gets copy-pasted again. I think this must 2016-04-07 18:19:09 +00:00
pm_machdep.c Use %p to print uintptr_t values rather than %z in MIPS single-step code. 2018-04-27 21:22:32 +00:00
pmap.c Invalidate the mapping before updating its physical address. 2018-07-13 17:12:50 +00:00
ptrace_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
sc_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
stack_machdep.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
stdatomic.c In __sync_bool_compare_and_swap(), return true if the returned value is the 2018-03-23 17:25:19 +00:00
support.S Remove the unused fuwintr() and suiwintr() functions. 2018-04-17 18:04:28 +00:00
swtch.S Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00
sys_machdep.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
tick.c Create a new macro for static DPCPU data. 2018-07-05 17:13:37 +00:00
tlb.c sys/mips: further adoption of SPDX licensing ID tags. 2017-11-27 15:07:26 +00:00
trap.c followup to r332730/r332752: set kdb_why to "trap" for fatal traps 2018-05-16 06:52:08 +00:00
uio_machdep.c sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
uma_machdep.c vm_wait() rework. 2018-02-20 10:13:13 +00:00
vm_machdep.c Move most of the contents of opt_compat.h to opt_global.h. 2018-04-06 17:35:35 +00:00