From: Ingo Molnar <mingo@kernel.org>
To: Borislav Petkov <bp@alien8.de>
Cc: Uros Bizjak <ubizjak@gmail.com>,
x86@kernel.org, linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
"H. Peter Anvin" <hpa@zytor.com>
Subject: Re: [PATCH] x86/hweight: Fix and improve __arch_hweight{32,64}() assembly
Date: Mon, 10 Mar 2025 22:00:53 +0100 [thread overview]
Message-ID: <Z89TBVoRDLy66EuQ@gmail.com> (raw)
In-Reply-To: <20250310204454.GYZ89PRl3dBR-9oBIY@fat_crate.local>
* Borislav Petkov <bp@alien8.de> wrote:
> On Mon, Mar 10, 2025 at 09:35:42PM +0100, Uros Bizjak wrote:
> > On Mon, Mar 10, 2025 at 9:12 PM Borislav Petkov <bp@alien8.de> wrote:
> > >
> > > On Mon, Mar 10, 2025 at 09:08:04PM +0100, Uros Bizjak wrote:
> > > > a) Use ASM_CALL_CONSTRAINT to prevent inline asm that includes call
> > > > instruction from being scheduled before the frame pointer gets set
> > > > up by the containing function, causing objtool to print a "call
> > > > without frame pointer save/setup" warning.
> > >
> > > The other two are ok but this is new. How do you trigger this? I've never seen
> > > it in my randconfig builds...
> >
> > It is not triggered now, but without this constraint, nothing prevents
> > the compiler from scheduling the insn in front of frame creation.
>
> Can you please stop with this silliness?
>
> When we start doing git archeology months, years from now, it should
> be perfectly clear why a commit was done. This one is not. So either
> the compiler is doing the bad scheduling or it isn't. Things can't
> just work by chance.
So this particular code generation aspect seems to be working by random
implementational chance right now: objtool is basically a second,
independent layer of tooling with its own assumptions and expectations,
which is why objtool warnings are not hard build failures.
But whether unexpected instruction scheduling is known to occur or not
with current compilers should be included in the changelog and is
relevant information.
Thanks,
Ingo
next prev parent reply other threads:[~2025-03-10 21:00 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-10 20:08 [PATCH] x86/hweight: Fix and improve __arch_hweight{32,64}() assembly Uros Bizjak
2025-03-10 20:12 ` Borislav Petkov
2025-03-10 20:35 ` Uros Bizjak
2025-03-10 20:42 ` Ingo Molnar
2025-03-10 20:44 ` Borislav Petkov
2025-03-10 20:54 ` Uros Bizjak
2025-03-10 21:07 ` Borislav Petkov
2025-03-10 21:18 ` Uros Bizjak
2025-03-10 21:34 ` Borislav Petkov
2025-03-10 21:00 ` Ingo Molnar [this message]
2025-03-10 20:16 ` Ingo Molnar
2025-03-10 21:25 ` Uros Bizjak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z89TBVoRDLy66EuQ@gmail.com \
--to=mingo@kernel.org \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=ubizjak@gmail.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.