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
Unknown Object (File)
Tue, Apr 21, 6:48 AM
Unknown Object (File)
Mon, Apr 20, 8:16 AM
Unknown Object (File)
Wed, Apr 15, 2:02 AM
Unknown Object (File)
Fri, Apr 10, 12:19 AM
Unknown Object (File)
Mon, Apr 6, 11:57 AM
Unknown Object (File)
Sun, Apr 5, 11:22 AM
Unknown Object (File)
Thu, Apr 2, 11:01 AM
Unknown Object (File)
Tue, Mar 24, 4:38 AM
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
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 37617
Build 34506: arc lint + arc unit