[REGRESSION] rseq: refactoring in v6.19 broke everyone on arm64 and tcmalloc everywhere
Linus Torvalds
torvalds at linux-foundation.org
Thu Apr 23 14:28:35 PDT 2026
On Thu, 23 Apr 2026 at 14:03, Thomas Gleixner <tglx at kernel.org> wrote:
>
> Feel free to enforce it, but be aware that you thereby set a
> precedence that a single abuser can then rightfully own a general
> shared interface of the kernel forever and force everybody else to
> give up.
That's not a new precedent. That is *literally* the rule we have always had.
This is why system calls and ABI's need to have hard rules that they
actually check, because if they don't, they are stuck with the
semantics that people assume.
And no, "documented behavior" is BS. It has absolutely no relevance.
All that matters is hard harsh reality.
Yes, this has led to issues before.
Most new system calls have learnt their lesson, and they check for
unused bits in flags etc, and error out on bits that the lernel
doesn't really care about being randomly set - so that one day we
*can* extend on things and start caring about them.
But they do it because we've been burnt so many times before because
we haven't checked those bits, and then we were forced to just live
with the fact that people passed in random values.
> // Note: this makes __rseq_abi.cpu_id_start unusable for its original purpose.
>
> Do you seriously want to proliferate that?
Absolutely.
That's how clever hacks work - they take advantage of things past
their design parameters. "If it works, it's not stupid".
We don't then turn around and say "you were clever, and we did
something stupid, so now we'll hurt you".
This is all 100% on the RSEQ kernel code, not on users who took advantage of it.
Linus
More information about the linux-arm-kernel
mailing list