Page MenuHomeFreeBSD

contrib/ck: keep dcas parameters thin under bounds-safety
AcceptedPublic

Authored by abhijeetsharma2002_gmail.com on Aug 19 2026, 12:03 PM.
Tags
None
Referenced Files
F175294549: D58986.diff
Fri, Oct 9, 6:04 PM
Unknown Object (File)
Fri, Oct 9, 1:57 AM
Unknown Object (File)
Thu, Oct 8, 8:22 PM
Unknown Object (File)
Wed, Oct 7, 9:13 AM
Unknown Object (File)
Tue, Oct 6, 10:54 AM
Unknown Object (File)
Tue, Oct 6, 10:20 AM
Unknown Object (File)
Thu, Oct 1, 3:43 AM
Unknown Object (File)
Tue, Sep 29, 5:58 PM
Subscribers

Details

Summary

Under -fbounds-safety a uint64_t [2] parameter becomes a bounds-carrying
pointer, which cannot be an inline assembly operand. Plain uint64_t * is
identical in C and carries no bound. Vendor declarations stay in the
#else for the next CK import.

Sponsored by: The FreeBSD Foundation

Diff Detail

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

Event Timeline

sys/contrib/ck/include/gcc/aarch64/ck_pr_llsc.h
42

Wouldn’t this work?

sys/contrib/ck/include/gcc/aarch64/ck_pr_llsc.h
42

Hey, unfortunately not. The issue is that any pointer with bounds cannot be used with inline assembly.

This revision is now accepted and ready to land.Sep 5 2026, 12:15 AM