On Fri, Apr 26, 2024 at 08:40:50AM +0100, David Howells wrote: > Kees Cook <keescook@xxxxxxxxxxxx> wrote: > > > - return i + xadd(&v->counter, i); > > + return wrapping_add(int, i, xadd(&v->counter, i)); > > Ewww. Can't you just mark the variable as wrapping in some way, either by: > > unsigned int __cyclic counter; Yeah, that's the plan now. Justin is currently working on the "wraps" attribute for Clang: https://github.com/llvm/llvm-project/pull/86618 -- Kees Cook