Page MenuHomeFreeBSD

arm64: Enable FEAT_E0PD when supported
ClosedPublic

Authored by andrew on Sep 6 2023, 11:25 AM.
Tags
None
Referenced Files
F96427117: D41760.id126976.diff
Tue, Sep 24, 10:19 PM
F96427106: D41760.id126951.diff
Tue, Sep 24, 10:19 PM
F96427069: D41760.id126969.diff
Tue, Sep 24, 10:19 PM
F96427021: D41760.id.diff
Tue, Sep 24, 10:19 PM
F96424665: D41760.diff
Tue, Sep 24, 10:07 PM
Unknown Object (File)
Sat, Sep 21, 1:52 PM
Unknown Object (File)
Fri, Sep 20, 10:54 PM
Unknown Object (File)
Mon, Sep 16, 3:36 PM
Subscribers

Details

Summary

FEAT_E0PD adds two fields to the tcr_el1 special register that, when
set, cause userspace access to either the top or bottom half of the
address spaces without a page walk.

This can be used to stop userspace probing the kernel address space
as the CPU will raise an exception in the same time if the probed
address is in the TLB or not.

Sponsored by: Arm Ltd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 53464
Build 50355: arc lint + arc unit

Event Timeline

kevans added inline comments.
sys/arm64/arm64/identcpu.c
2249

I note this will only get called on the boot AP since SI_SUB_CPU is pretty early, was that intentional or should it be run after other APs are running regularly @ SI_SUB_SMP?

This revision is now accepted and ready to land.Sep 6 2023, 5:03 PM
This revision was automatically updated to reflect the committed changes.