[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250304182132.fcn62i4ry5ndli7l@jpoimboe>
Date: Tue, 4 Mar 2025 10:21:32 -0800
From: Josh Poimboeuf <jpoimboe@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Ingo Molnar <mingo@...nel.org>, linux-kernel@...r.kernel.org,
linux-tip-commits@...r.kernel.org,
"Peter Zijlstra (Intel)" <peterz@...radead.org>,
Brian Gerst <brgerst@...il.com>, "H. Peter Anvin" <hpa@...or.com>,
x86@...nel.org
Subject: Re: [tip: x86/asm] x86/asm: Make ASM_CALL_CONSTRAINT conditional on
frame pointers
On Tue, Mar 04, 2025 at 08:01:58AM -1000, Linus Torvalds wrote:
> On Tue, 4 Mar 2025 at 07:51, Linus Torvalds
> <torvalds@...ux-foundation.org> wrote:
> >
> > Put another way: the old code has years of testing and is
> > significantly simpler. The new code is new and untested and more
> > complicated and has already caused known new problems, never mind any
> > unknown ones.
> >
> > It really doesn't sound like a good trade-off to me.
I'm utterly confused, what are these new problems you're referring to?
And how specifically is this more fragile?
AFAICT, there was one known bug before the patches. Now there are zero
known bugs.
Of course, it's entirely possible the build bots will shake out new
objtool warnings over the next weeks. But as of now, I haven't seen
anything.
> Side note: it's not clear that we should need to do that
> ASM_CALL_CONSTRAINT thing _at_all_ any more.
>
> Iirc, the only reason we did it was for old versions of gcc, and we're
> already in the process of switching minimum gcc versions up to past
> where the whole thing is relevant at all. There's another tip bot
> commit that makes the minimum gcc version be 8.1 due to the (much
> MUCH) cleaner percpu section series.
>
> And afaik, that makes all of this completely pointless.
I'm excited to hear we can get rid of a lot of old GCC cruft, but this
has nothing to do with the compiler version.
It's needed for CONFIG_UNWINDER_FRAME_POINTER, for all compiler
versions. Otherwise the callee may skip the frame pointer setup before
doing the call.
> So tell me again - why are we making the kernel code worse?
Again I don't see how this is worse, please spell it out for me...
--
Josh
Powered by blists - more mailing lists