Page MenuHomeFreeBSD

exterr: allow exterr to fit pointers on CHERI targets
AcceptedPublic

Authored by brooks on Mon, Jul 6, 4:05 PM.
Tags
None
Referenced Files
F162059570: D58056.id181369.diff
Thu, Jul 9, 8:25 AM
F162010494: D58056.diff
Wed, Jul 8, 9:37 PM
F162008491: D58056.diff
Wed, Jul 8, 9:17 PM
Unknown Object (File)
Tue, Jul 7, 5:56 AM
Unknown Object (File)
Tue, Jul 7, 3:17 AM
Subscribers

Details

Reviewers
kib
mckusick
Group Reviewers
cheri
Summary

Switch to uint64ptr_t which is a uint64_t on traditional architectures
and a uintptr_t on CHERI architectures. This has no ABI impact on
non-CHERI kernels.

Fix truncation of 64-bit values on 32-bit kernels.

Effort: CHERI upstreaming
Sponsored by: Innovate UK

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 74549
Build 71432: arc lint + arc unit

Event Timeline

brooks requested review of this revision.Mon, Jul 6, 4:05 PM
sys/sys/_uexterror.h
25

Probably these should also be __uint64ptr_t. On CHERI there's also an 8-byte gap above p1 which should maybe be explicit.

sys/sys/exterrvar.h
62

This was truncating 64-bit values on 32-bit kernels.

This revision is now accepted and ready to land.Tue, Jul 7, 1:55 AM