From d1b6f8c7af0eb9a0a44b2d4723e58dde5eafa236 Mon Sep 17 00:00:00 2001 From: Jeremy Cline Date: Thu, 23 Apr 2020 16:47:21 -0400 Subject: kernel-5.7.0-0.rc2.20200423git7adc4b399952.1 * Thu Apr 23 2020 CKI@GitLab [5.7.0-0.rc2.20200423git7adc4b399952.1] - 7adc4b399952 rebase - Match template format in kernel.spec.template ("Justin M. Forbes") - Break out the Patches into individual files for dist-git ("Justin M. Forbes") - Break the Red Hat patch into individual commits (Jeremy Cline) - Adjust module filtering so CONFIG_DRM_DP_CEC can be set (Jeremy Cline) - Add a script to generate release tags and branches (Jeremy Cline) - Set CONFIG_VDPA for fedora ("Justin M. Forbes") - Provide defaults in ark-rebase-patches.sh (Jeremy Cline) - Default ark-rebase-patches.sh to not report issues (Jeremy Cline) Resolves: rhbz# Signed-off-by: Jeremy Cline --- 0001-Add-support-for-deprecating-processors.patch | 303 ++++++++++++++++++++++ 1 file changed, 303 insertions(+) create mode 100644 0001-Add-support-for-deprecating-processors.patch (limited to '0001-Add-support-for-deprecating-processors.patch') diff --git a/0001-Add-support-for-deprecating-processors.patch b/0001-Add-support-for-deprecating-processors.patch new file mode 100644 index 000000000..d16c1459f --- /dev/null +++ b/0001-Add-support-for-deprecating-processors.patch @@ -0,0 +1,303 @@ +From 8d47dd05633e96999b9bcff01544a19dec69094c Mon Sep 17 00:00:00 2001 +From: Laura Abbott +Date: Wed, 13 Nov 2019 14:44:30 -0500 +Subject: [PATCH] Add support for deprecating processors + +Message-id: <20191113144431.9403-4-labbott@redhat.com> +Patchwork-id: 286081 +O-Subject: [ARK INTERNAL PATCHv2 3/4] [redhat] Add support for deprecating processors +Bugzilla: +RH-Acked-by: Don Zickus +RH-Acked-by: Prarit Bhargava +RH-Acked-by: Jiri Benc + +This is the squashed version of the following patches +modifed to use the new CONFIG_RH_DISABLE_DEPRECATED option + +add rh_check_supported + +Message-id: <1525313397-75200-1-git-send-email-darcari@redhat.com> +Patchwork-id: 212189 +O-Subject: [RHEL8.0 BZ 1565717 v2] x86: add rh_check_supported +Bugzilla: 1565717 +RH-Acked-by: Steve Best +RH-Acked-by: Mikulas Patocka + +Description: + +Add code to verify that the booted x86 processor is supported by +Red Hat. In cases where the processor is not supported a critical +message is logged. + +Initially the supported set of processors for RHEL8 remains the same +as RHEL7. + +Bugzilla: http://bugzilla.redhat.com/1565717 +Brew: https://brewweb.devel.redhat.com/taskinfo?taskID=15966242 + +Test: Booted brew build on supported (Haswell) and unsupported processor (CNL) + and achieved desired results. + +Upstream: RHEL Only + +Cc: David Arcari +Cc: Mikulas Patocka +Cc: Dave Young +Cc: Josh Poimboeuf +Signed-off-by: Herton R. Krzesinski + +update rh_check_supported processor list + +Message-id: <1530618602-17477-1-git-send-email-darcari@redhat.com> +Patchwork-id: 223452 +O-Subject: [RHEL8.0 BZ 1595918] x86: update rh_check_supported processor list +Bugzilla: 1595918 +RH-Acked-by: Jarod Wilson +RH-Acked-by: Prarit Bhargava +RH-Acked-by: Steve Best + +Bugzilla: http://bugzilla.redhat.com/1595918 +Upstream Status: RHEL_only +Build Info: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=16916208 +Tested: Verified on a varity of supported and unsupported Intel and AMD systems. + Results as expected. + +In RHEL8, we are marking some of the older processors as unsupported. No code +is being removed; however, the older processors are not supported and as such +are not candidates for certification. + +Cc: David Arcari +Cc: Prarit Bhargava +Cc: Steve Best +Signed-off-by: Herton R. Krzesinski +Signed-off-by: Jakub Racek +refresh: rename FAM6_ATOM again, see f2c4db1bd + +mark whiskey-lake processor supported + +Message-id: <1533125629-12870-1-git-send-email-darcari@redhat.com> +Patchwork-id: 225809 +O-Subject: [ BZ 1609604] mark whiskey-lake processor supported +Bugzilla: 1609604 +RH-Acked-by: Steve Best +RH-Acked-by: Tony Camuso +RH-Acked-by: Prarit Bhargava + +Bugzilla: http://bugzilla.redhat.com/1609604 +Build Info: https://brewweb.devel.redhat.com/taskinfo?taskID=17474338 +Upstream Status: RHEL Only +Tested: Successful excecution of platform-test suite. + +Whiskey Lake is cpu model 142 with stepping 11. Stepping > 11 for cpu model +142 is not supported. + +For model 158, the highest supported stepping is 10. + +Cc: Prarit Bhargava +Cc: David Arcari +Cc: Dave Young +Signed-off-by: Herton R. Krzesinski + +mark intel knights landing and knights mill unsupported + +Message-id: <1533580277-126323-1-git-send-email-darcari@redhat.com> +Patchwork-id: 226187 +O-Subject: [RHEL8.0 BZ 1610493] mark intel knights landing and knights mill unsupported +Bugzilla: 1610493 +RH-Acked-by: Tony Camuso +RH-Acked-by: Prarit Bhargava +RH-Acked-by: Steve Best + +Bugzilla: http://bugzilla.redhat.com/1610493 +Build Info: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=17625348 + +Tested: verified on KNL/KNM system +Upstream Status: RHEL Only +Depends: http://bugzilla.redhat.com/1609604 + +We are marking KNL/KNM processors as unsupported. No code is being removed; +however, the older processors are not supported and as such are not +candidates for certification. + +Upstream Status: RHEL only +Cc: Prarit Bhargava +Cc: David Arcari +Cc: Dave Young +Signed-off-by: Herton R. Krzesinski +--- + arch/x86/kernel/cpu/common.c | 1 + + arch/x86/kernel/setup.c | 132 ++++++++++++++++++++++++++++++++++- + 2 files changed, 132 insertions(+), 1 deletion(-) + +diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c +index bed0cb83fe24..a15622e0d79f 100644 +--- a/arch/x86/kernel/cpu/common.c ++++ b/arch/x86/kernel/cpu/common.c +@@ -1205,6 +1205,7 @@ static void __init early_identify_cpu(struct cpuinfo_x86 *c) + cpu_detect(c); + get_cpu_vendor(c); + get_cpu_cap(c); ++ get_model_name(c); /* RHEL: get model name for unsupported check */ + get_cpu_address_sizes(c); + setup_force_cpu_cap(X86_FEATURE_CPUID); + +diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c +index 4b3fa6cd3106..e39ec0f88d28 100644 +--- a/arch/x86/kernel/setup.c ++++ b/arch/x86/kernel/setup.c +@@ -44,6 +44,7 @@ + #include + #include + #include ++#include + + /* + * max_low_pfn_mapped: highest directly mapped pfn < 4 GB +@@ -747,7 +748,132 @@ static void __init trim_low_memory_range(void) + { + memblock_reserve(0, ALIGN(reserve_low, PAGE_SIZE)); + } +- ++ ++static bool valid_amd_processor(__u8 family, const char *model_id) ++{ ++ bool valid; ++ ++ switch(family) { ++ case 0x15: ++ valid = true; ++ break; ++ ++ case 0x17: ++ valid = strstr(model_id, "AMD EPYC 7"); ++ break; ++ ++ default: ++ valid = false; ++ break; ++ } ++ ++ return valid; ++} ++ ++static bool valid_intel_processor(__u8 family, __u8 model, __u8 stepping) ++{ ++ bool valid; ++ ++ if (family != 6) ++ return false; ++ ++ switch(model) { ++ case INTEL_FAM6_ATOM_GOLDMONT_D: ++ case INTEL_FAM6_ATOM_GOLDMONT_PLUS: ++ ++ case INTEL_FAM6_BROADWELL: ++ case INTEL_FAM6_BROADWELL_G: ++ case INTEL_FAM6_BROADWELL_X: ++ case INTEL_FAM6_BROADWELL_D: ++ ++ case INTEL_FAM6_HASWELL: ++ case INTEL_FAM6_HASWELL_G: ++ case INTEL_FAM6_HASWELL_L: ++ case INTEL_FAM6_HASWELL_X: ++ valid = true; ++ break; ++ ++ case INTEL_FAM6_KABYLAKE: ++ valid = (stepping <= 10); ++ break; ++ ++ case INTEL_FAM6_KABYLAKE_L: ++ valid = (stepping <= 11); ++ break; ++ ++ case INTEL_FAM6_SKYLAKE_L: ++ case INTEL_FAM6_SKYLAKE: ++ case INTEL_FAM6_SKYLAKE_X: ++ /* stepping > 4 is Cascade Lake and is not supported */ ++ valid = (stepping <= 4); ++ break; ++ ++ default: ++ valid = false; ++ break; ++ } ++ ++ return valid; ++} ++ ++static void rh_check_supported(void) ++{ ++ bool guest; ++ ++ guest = (x86_hyper_type != X86_HYPER_NATIVE || boot_cpu_has(X86_FEATURE_HYPERVISOR)); ++ ++ /* RHEL supports single cpu on guests only */ ++ if (((boot_cpu_data.x86_max_cores * smp_num_siblings) == 1) && ++ !guest && is_kdump_kernel()) { ++ pr_crit("Detected single cpu native boot.\n"); ++ pr_crit("Important: In this kernel, single threaded, single CPU 64-bit physical systems are unsupported."); ++ } ++ ++ /* ++ * If the RHEL kernel does not support this hardware, the kernel will ++ * attempt to boot, but no support is provided for this hardware ++ */ ++ switch (boot_cpu_data.x86_vendor) { ++ case X86_VENDOR_AMD: ++ if (!valid_amd_processor(boot_cpu_data.x86, ++ boot_cpu_data.x86_model_id)) { ++ pr_crit("Detected CPU family %xh model %d\n", ++ boot_cpu_data.x86, ++ boot_cpu_data.x86_model); ++ mark_hardware_unsupported("AMD Processor"); ++ } ++ break; ++ ++ case X86_VENDOR_INTEL: ++ if (!valid_intel_processor(boot_cpu_data.x86, ++ boot_cpu_data.x86_model, ++ boot_cpu_data.x86_stepping)) { ++ pr_crit("Detected CPU family %d model %d stepping %d\n", ++ boot_cpu_data.x86, ++ boot_cpu_data.x86_model, ++ boot_cpu_data.x86_stepping); ++ mark_hardware_unsupported("Intel Processor"); ++ } ++ break; ++ ++ default: ++ pr_crit("Detected processor %s %s\n", ++ boot_cpu_data.x86_vendor_id, ++ boot_cpu_data.x86_model_id); ++ mark_hardware_unsupported("Processor"); ++ break; ++ } ++ ++ /* ++ * Due to the complexity of x86 lapic & ioapic enumeration, and PCI IRQ ++ * routing, ACPI is required for x86. acpi=off is a valid debug kernel ++ * parameter, so just print out a loud warning in case something ++ * goes wrong (which is most of the time). ++ */ ++ if (acpi_disabled && !guest) ++ pr_crit("ACPI has been disabled or is not available on this hardware. This may result in a single cpu boot, incorrect PCI IRQ routing, or boot failure.\n"); ++} ++ + /* + * Dump out kernel offset information on panic. + */ +@@ -1244,6 +1370,10 @@ void __init setup_arch(char **cmdline_p) + efi_apply_memmap_quirks(); + #endif + ++#ifdef CONFIG_RH_DISABLE_DEPRECATED ++ rh_check_supported(); ++#endif ++ + unwind_init(); + } + +-- +2.26.0 + -- cgit