All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: "Xin Li (Intel)" <xin@zytor.com>
Cc: linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
	tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com,
	will@kernel.org, peterz@infradead.org, yury.norov@gmail.com,
	akpm@linux-foundation.org, acme@kernel.org, namhyung@kernel.org,
	brgerst@gmail.com, andrew.cooper3@citrix.com,
	nik.borisov@suse.com
Subject: Re: [PATCH v6 0/5] x86/cpufeatures: Automatically generate required and disabled feature masks
Date: Fri, 28 Feb 2025 10:26:35 +0100	[thread overview]
Message-ID: <Z8GBS81JWP7dl5s2@gmail.com> (raw)
In-Reply-To: <20250228082338.73859-1-xin@zytor.com>


* Xin Li (Intel) <xin@zytor.com> wrote:

> The x86 build process first generates required and disabled feature
> masks based on current build config, and then uses these generated
> masks to compile the source code.  When a CPU feature is not enabled
> in a build config, e.g., when CONFIG_X86_FRED=n, its feature disable
> flag, i.e., DISABLE_FRED, needs to be properly defined and added to
> a specific disabled CPU features mask in <asm/disabled-features.h>,
> as the following patch does:
> https://lore.kernel.org/all/20231205105030.8698-8-xin3.li@intel.com/.
> As a result, the FRED feature bit is surely cleared in the generated
> kernel binary when CONFIG_X86_FRED=n.
> 
> Recently there is another case to repeat the same exercise for the
> AMD SEV-SNP CPU feature:
> https://lore.kernel.org/all/20240126041126.1927228-2-michael.roth@amd.com/.
> https://lore.kernel.org/all/20240126041126.1927228-23-michael.roth@amd.com/.
> 
> It was one thing when there were four of CPU feature masks, but with
> over 20 it is going to cause mistakes, e.g.,
> https://lore.kernel.org/lkml/aaed79d5-d683-d1bc-7ba1-b33c8d6db618@suse.com/.
> 
> We want to eliminate the stupidly repeated exercise to manually assign
> features to CPU feature words through introducing an AWK script to
> automatically generate a header with required and disabled CPU feature
> masks based on current build config, and this patch set does that.
> 
> Link to v5:
> https://lore.kernel.org/lkml/20250106070727.3211006-1-xin@zytor.com/
> 
> 
> H. Peter Anvin (Intel) (3):
>   x86/cpufeatures: Rename X86_CMPXCHG64 to X86_CX8
>   x86/cpufeatures: Add {required,disabled} feature configs
>   x86/cpufeatures: Generate a feature mask header based on build config
> 
> Xin Li (Intel) (2):
>   x86/cpufeatures: Remove {disabled,required}-features.h
>   x86/cpufeatures: Use AWK to generate {REQUIRED|DISABLED}_MASK_BIT_SET

>  24 files changed, 320 insertions(+), 634 deletions(-)

Very nice!

Reviewed-by: Ingo Molnar <mingo@kernel.org>

Thanks,

	Ingo

      parent reply	other threads:[~2025-02-28  9:26 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-28  8:23 [PATCH v6 0/5] x86/cpufeatures: Automatically generate required and disabled feature masks Xin Li (Intel)
2025-02-28  8:23 ` [PATCH v6 1/5] x86/cpufeatures: Rename X86_CMPXCHG64 to X86_CX8 Xin Li (Intel)
2025-02-28 16:53   ` [tip: x86/cpu] " tip-bot2 for H. Peter Anvin (Intel)
2025-02-28  8:23 ` [PATCH v6 2/5] x86/cpufeatures: Add {required,disabled} feature configs Xin Li (Intel)
2025-02-28 16:53   ` [tip: x86/cpu] " tip-bot2 for H. Peter Anvin (Intel)
2025-03-10  8:18   ` [tip: x86/cpu] x86/cpufeatures: Add {REQUIRED,DISABLED} " tip-bot2 for H. Peter Anvin (Intel)
2025-03-10 14:43     ` H. Peter Anvin
2025-03-10 15:06       ` Borislav Petkov
2025-03-10 18:57       ` Ingo Molnar
2025-03-19 11:04   ` [tip: x86/core] " tip-bot2 for H. Peter Anvin (Intel)
2025-02-28  8:23 ` [PATCH v6 3/5] x86/cpufeatures: Generate a feature mask header based on build config Xin Li (Intel)
2025-02-28 16:53   ` [tip: x86/cpu] " tip-bot2 for H. Peter Anvin (Intel)
2025-03-03 11:38   ` [PATCH v6 3/5] " Aithal, Srikanth
2025-03-03 12:05     ` H. Peter Anvin
2025-03-03 13:25       ` Borislav Petkov
2025-03-03 22:34         ` H. Peter Anvin
2025-03-04 10:18         ` Xin Li
2025-03-04 10:29           ` Borislav Petkov
2025-03-05  7:30             ` Xin Li
2025-03-05 22:04               ` Borislav Petkov
2025-03-22 19:58                 ` Xin Li
2025-02-28  8:23 ` [PATCH v6 4/5] x86/cpufeatures: Remove {disabled,required}-features.h Xin Li (Intel)
2025-02-28 16:53   ` [tip: x86/cpu] " tip-bot2 for Xin Li (Intel)
2025-02-28  8:23 ` [PATCH v6 5/5] x86/cpufeatures: Use AWK to generate {REQUIRED|DISABLED}_MASK_BIT_SET Xin Li (Intel)
2025-02-28 16:53   ` [tip: x86/cpu] " tip-bot2 for Xin Li (Intel)
2025-03-10  8:18   ` [tip: x86/cpu] x86/cpufeatures: Use AWK to generate {REQUIRED|DISABLED}_MASK_BIT_SET in <asm/cpufeaturemasks.h> tip-bot2 for Xin Li (Intel)
2025-03-19 11:03   ` [tip: x86/core] " tip-bot2 for Xin Li (Intel)
2025-02-28  9:26 ` Ingo Molnar [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=Z8GBS81JWP7dl5s2@gmail.com \
    --to=mingo@kernel.org \
    --cc=acme@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=andrew.cooper3@citrix.com \
    --cc=bp@alien8.de \
    --cc=brgerst@gmail.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=nik.borisov@suse.com \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    --cc=xin@zytor.com \
    --cc=yury.norov@gmail.com \
    /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.