From: Jan Beulich <jbeulich@suse.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: "Roger Pau Monné" <roger.pau@citrix.com>,
Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH v1.1 6/6] x86/apic: Convert the TSC deadline errata table to X86_MATCH_*()
Date: Fri, 18 Jul 2025 16:15:18 +0200 [thread overview]
Message-ID: <e7dda6db-b09a-4b0b-9366-ee847ad5acba@suse.com> (raw)
In-Reply-To: <9c820057-3e36-45dc-b71a-95c9d2dc4398@citrix.com>
On 18.07.2025 12:23, Andrew Cooper wrote:
> On 18/07/2025 11:19 am, Jan Beulich wrote:
>> On 18.07.2025 12:07, Andrew Cooper wrote:
>>> With the ability to match on steppings, introduce a new X86_MATCH_VFMS()
>>> helper to match a specific stepping, and use it to rework deadline_match[].
>>>
>>> Notably this removes the overloading of driver_data possibly being a function
>>> pointer, and removes the latent bug where the target functions are missing
>>> ENDBR instructions owing to the lack of the cf_check attribute.
>>>
>>> No functional change.
>>>
>>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> Reviewed-by: Jan Beulich <jbeulich@suse.com>
>
> Thanks.
>
>>
>>> -static const struct x86_cpu_id __initconstrel deadline_match[] = {
>> Seeing this transformation ...
>>
>>> static void __init check_deadline_errata(void)
>>> {
>>> + static const struct x86_cpu_id __initconst deadline_match[] = {
>> ... of the section placement, we may want to investigate whether with the
>> toolchain baseline bump we can actually do away with __initconstrel, using
>> __initconst uniformly everywhere.
>
> To be honest, I'm not even sure why we needed the split in the first
> place. We merge both sections together, so it isn't about section
> attributes.
It is about section attributes, but at assembly time. Even an up-to-date
gas will choke on certain conflicting section attributes, when multiple
section "declarations" are present. (Oddly enough I did fiddle with that
code earlier in the day, hence why I have a fresh impression of this
error appearing in practice.)
When you have only constant data (no relocations), the compiler ought to
request an "a" section, whereas when there are relocations it would
request an "aw" one (along the lines of why there is .data.rel.ro). Some
gcc versions and/or some gas versions conflicted in how custom
(__attribute__((section(...)))) sections would have their attributes
specified, causing assembly to fail.
> But, if you think it's safe to remove, it will definitely be a good
> amplification.
As to "think" - I'm not sure, but my recollection is that the issue was
with some gcc 4.x only (or binutils from that time frame).
Jan
prev parent reply other threads:[~2025-07-18 14:15 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-16 17:31 [PATCH 0/6] x86: Convert x86_cpu_id to VFM Andrew Cooper
2025-07-16 17:31 ` [PATCH 1/6] x86: Sort headers Andrew Cooper
2025-07-17 7:10 ` Jan Beulich
2025-07-16 17:31 ` [PATCH 2/6] x86: Break struct x86_cpu_id out of processor.h Andrew Cooper
2025-07-17 7:23 ` Jan Beulich
2025-07-17 17:33 ` Andrew Cooper
2025-07-16 17:31 ` [PATCH 3/6] x86/match-cpu: Introduce X86_MATCH_VFM() and convert intel_idle_ids[] Andrew Cooper
2025-07-17 7:35 ` Jan Beulich
2025-07-17 17:39 ` Andrew Cooper
2025-07-18 5:38 ` Jan Beulich
2025-07-16 17:31 ` [PATCH 4/6] x86: Convert users of INTEL_FAM6_MODEL() to X86_MATCH_VFM() Andrew Cooper
2025-07-17 7:44 ` Jan Beulich
2025-07-17 17:57 ` Andrew Cooper
2025-07-18 5:40 ` Jan Beulich
2025-07-16 17:31 ` [PATCH 5/6] x86/match-cpu: Support matching on steppings Andrew Cooper
2025-07-17 8:11 ` Jan Beulich
2025-07-17 19:39 ` Andrew Cooper
2025-07-18 5:53 ` Jan Beulich
2025-07-18 10:29 ` Andrew Cooper
2025-07-18 13:28 ` Jan Beulich
2025-07-18 13:48 ` Andrew Cooper
2025-07-16 17:31 ` [PATCH 6/6] x86/apic: Convert the TSC deadline errata table to X86_MATCH_*() Andrew Cooper
2025-07-17 8:26 ` Jan Beulich
2025-07-17 9:02 ` Andrew Cooper
2025-07-17 9:33 ` Jan Beulich
2025-07-17 19:40 ` Andrew Cooper
2025-07-17 8:31 ` Jan Beulich
2025-07-17 19:45 ` Andrew Cooper
2025-07-18 10:07 ` [PATCH v1.1 " Andrew Cooper
2025-07-18 10:19 ` Jan Beulich
2025-07-18 10:23 ` Andrew Cooper
2025-07-18 10:55 ` Andrew Cooper
2025-07-18 14:06 ` Jan Beulich
2025-07-18 14:10 ` Andrew Cooper
2025-07-18 14:15 ` Jan Beulich [this message]
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=e7dda6db-b09a-4b0b-9366-ee847ad5acba@suse.com \
--to=jbeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=roger.pau@citrix.com \
--cc=xen-devel@lists.xenproject.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.