|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 2/3] x86/intel-family: Resync with Linux
On 16.07.2025 15:28, Andrew Cooper wrote:
> This snapshot is prior to Linux commit db4001f9cc32 ("x86/cpu/vfm: Delete all
> the *_FAM6_ CPU #defines") at the end of their conversion phase.
>
> In addition to non-FAM6 infixed names, defines are added for the Pentium Pro,
> ArrowLake U, and reintroduced the PHI defines which were incorrectly deleted
> in the past.
>
> In cpufeature.h, provide VFM_* macros to transform constants to/from the
> cpuinfo_x86 representation.
>
> No functional change.
>
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> ---
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx>
>
> I meant to object to deleting PHI at the time, but was too late. Just because
> Xen has stopped supporting the PHI doesn't mean the model numbers have ceased
> existing.
I don't mind their re-introduction, yet I wonder what value their presence has
when we don't use them anywhere. In the public cpufeatureset.h they serve a
documentation purpose, to have less holes there. This could be view the same
here, yes, but it still seems (yet) less relevant.
> --- a/xen/arch/x86/include/asm/intel-family.h
> +++ b/xen/arch/x86/include/asm/intel-family.h
> @@ -13,8 +13,8 @@
> * INTEL_FAM6{OPTFAMILY}_{MICROARCH}{OPTDIFF}
> * where:
> * OPTFAMILY Describes the family of CPUs that this belongs to. Default
> - * is assumed to be "_CORE" (and should be omitted). The other
> - * value currently in use is _ATOM.
> + * is assumed to be "_CORE" (and should be omitted). Other values
> + * currently in use are _ATOM and _XEON_PHI
Nit: You lost the full stop.
> @@ -40,131 +40,223 @@
> * their own names :-(
> */
>
> +#define IFM(_fam, _model) VFM_MAKE(X86_VENDOR_INTEL, _fam, _model)
> +
> /* Wildcard match for FAM6 so X86_MATCH_INTEL_FAM6_MODEL(ANY) works */
> #define INTEL_FAM6_ANY X86_MODEL_ANY
> +/* Wildcard match for FAM6 so X86_MATCH_VFM(ANY) works */
> +#define INTEL_ANY IFM(X86_FAMILY_ANY, X86_MODEL_ANY)
> +
> +#define INTEL_PENTIUM_PRO IFM(6, 0x01)
>
> #define INTEL_FAM6_CORE_YONAH 0x0E
> +#define INTEL_CORE_YONAH IFM(6, 0x0E)
Here and below I assume it is deliberate that you use a raw number again,
rather than making use of the immediately preceding #define? Perhaps for
the sake of brevity?
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |