OpenBSD/src S4kFIUssys/arch/mips64/include pmap.h, sys/arch/mips64/mips64 pmap.c context.S

   Fix a race in invalidation of remote TLB entries.

   If a CPU updates a pmap concurrently with the activation of that pmap
   on another CPU, invalidation of TLB entries might be incomplete.
   It is also possible that a CPU altogether stops updating its TLB.

   Prevent the race by synchronizing pmap activations and logic that
   determines where to send TLB invalidation IPIs.

   To avoid mutex wait without ability to process IPIs, the context switch
   code is adjusted to call pmap_activate() with interrupts enabled.
   In practice, interrupts up to IPL_SCHED are still disabled on context
   switch.
VersionDeltaFile
1.113+24-1sys/arch/mips64/mips64/pmap.c
1.61+12-11sys/arch/mips64/mips64/context.S
1.48+2-1sys/arch/mips64/include/pmap.h
+38-133 files

UnifiedSplitRaw