Page MenuHomeFreeBSD

Only set delayed inval for procs using PTI
ClosedPublic

Authored by vangyzen on Mar 5 2021, 4:43 PM.
Tags
None
Referenced Files
F139438926: D29094.diff
Fri, Dec 12, 2:35 AM
F139436999: D29094.diff
Fri, Dec 12, 2:03 AM
Unknown Object (File)
Thu, Dec 11, 8:18 AM
Unknown Object (File)
Sat, Dec 6, 3:12 AM
Unknown Object (File)
Sat, Nov 29, 7:13 AM
Unknown Object (File)
Sat, Nov 29, 7:13 AM
Unknown Object (File)
Thu, Nov 27, 8:56 PM
Unknown Object (File)
Sun, Nov 23, 8:19 PM
Subscribers

Details

Summary

invltlb_invpcid_pti_handler() was requesting delayed TLB invalidation
even for processes that aren't using PTI. With an out-of-tree
change to avoid PTI for non-jailed root processes, this caused an
assertion failure in pmap_activate_sw_pcid_pti() when context-switching
between PTI and non-PTI processes.

Sponsored by: Dell EMC Isilon

Test Plan

With that out-of-tree change, systems using PTI always panic during boot,
soon after the first non-root process is started. With the fix, they boot.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable