This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.310-rc1... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y and the diffstat can be found below.
thanks,
greg k-h
------------- Pseudo-Shortlog of commits:
Greg Kroah-Hartman gregkh@linuxfoundation.org Linux 4.9.310-rc1
James Morse james.morse@arm.com arm64: Use the clearbhb instruction in mitigations
James Morse james.morse@arm.com arm64: add ID_AA64ISAR2_EL1 sys register
James Morse james.morse@arm.com KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated
James Morse james.morse@arm.com arm64: Mitigate spectre style branch history side channels
James Morse james.morse@arm.com KVM: arm64: Add templates for BHB mitigation sequences
James Morse james.morse@arm.com arm64: Add percpu vectors for EL1
James Morse james.morse@arm.com arm64: entry: Add macro for reading symbol addresses from the trampoline
James Morse james.morse@arm.com arm64: entry: Add vectors that have the bhb mitigation sequences
James Morse james.morse@arm.com arm64: Move arm64_update_smccc_conduit() out of SSBD ifdef
James Morse james.morse@arm.com arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations
James Morse james.morse@arm.com arm64: entry: Allow the trampoline text to occupy multiple pages
James Morse james.morse@arm.com arm64: entry: Make the kpti trampoline's kpti sequence optional
James Morse james.morse@arm.com arm64: entry: Move trampoline macros out of ifdef'd section
James Morse james.morse@arm.com arm64: entry: Don't assume tramp_vectors is the start of the vectors
James Morse james.morse@arm.com arm64: entry: Allow tramp_alias to access symbols after the 4K boundary
James Morse james.morse@arm.com arm64: entry: Move the trampoline data page before the text page
James Morse james.morse@arm.com arm64: entry: Free up another register on kpti's tramp_exit path
James Morse james.morse@arm.com arm64: entry: Make the trampoline cleanup optional
James Morse james.morse@arm.com arm64: entry.S: Add ventry overflow sanity checks
Suzuki K Poulose suzuki.poulose@arm.com arm64: Add helper to decode register from instruction
Anshuman Khandual anshuman.khandual@arm.com arm64: Add Cortex-X2 CPU part definition
Suzuki K Poulose suzuki.poulose@arm.com arm64: Add Neoverse-N2, Cortex-A710 CPU part definition
Rob Herring robh@kernel.org arm64: Add part number for Arm Cortex-A77
Marc Zyngier marc.zyngier@arm.com arm64: Add part number for Neoverse N1
Marc Zyngier marc.zyngier@arm.com arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT
Marc Zyngier marc.zyngier@arm.com arm64: Add silicon-errata.txt entry for ARM erratum 1188873
Arnd Bergmann arnd@arndb.de arm64: arch_timer: avoid unused function warning
Marc Zyngier marc.zyngier@arm.com arm64: arch_timer: Add workaround for ARM erratum 1188873
Marc Zyngier marc.zyngier@arm.com arm64: arch_timer: Add erratum handler for CPU-specific capability
Marc Zyngier marc.zyngier@arm.com arm64: arch_timer: Add infrastructure for multiple erratum detection methods
Ding Tianhong dingtianhong@huawei.com clocksource/drivers/arm_arch_timer: Introduce generic errata handling infrastructure
Ding Tianhong dingtianhong@huawei.com clocksource/drivers/arm_arch_timer: Remove fsl-a008585 parameter
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Add support for checks based on a list of MIDRs
Suzuki K Poulose suzuki.poulose@arm.com arm64: Add helpers for checking CPU MIDR against a range
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Clean up midr range helpers
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Add flags to handle the conflicts on late CPU
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Prepare for fine grained capabilities
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Move errata processing code
Suzuki K Poulose suzuki.poulose@arm.com arm64: capabilities: Move errata work around check on boot CPU
Dave Martin dave.martin@arm.com arm64: capabilities: Update prototype for enable call back
Suzuki K Poulose suzuki.poulose@arm.com arm64: Add MIDR encoding for Arm Cortex-A55 and Cortex-A35
James Morse james.morse@arm.com arm64: Remove useless UAO IPI and describe how this gets enabled
Robert Richter rrichter@cavium.com arm64: errata: Provide macro for major and minor cpu revisions
-------------
Diffstat:
Documentation/arm64/silicon-errata.txt | 1 + Documentation/kernel-parameters.txt | 9 - Makefile | 4 +- arch/arm/include/asm/kvm_host.h | 5 + arch/arm/kvm/psci.c | 4 + arch/arm64/Kconfig | 24 ++ arch/arm64/include/asm/arch_timer.h | 44 ++- arch/arm64/include/asm/assembler.h | 34 ++ arch/arm64/include/asm/cpu.h | 1 + arch/arm64/include/asm/cpucaps.h | 4 +- arch/arm64/include/asm/cpufeature.h | 232 ++++++++++++- arch/arm64/include/asm/cputype.h | 63 ++++ arch/arm64/include/asm/fixmap.h | 6 +- arch/arm64/include/asm/insn.h | 2 + arch/arm64/include/asm/kvm_host.h | 4 + arch/arm64/include/asm/kvm_mmu.h | 2 +- arch/arm64/include/asm/mmu.h | 8 +- arch/arm64/include/asm/processor.h | 6 +- arch/arm64/include/asm/sections.h | 6 + arch/arm64/include/asm/sysreg.h | 5 + arch/arm64/include/asm/vectors.h | 74 +++++ arch/arm64/kernel/bpi.S | 55 +++ arch/arm64/kernel/cpu_errata.c | 591 ++++++++++++++++++++++++++------- arch/arm64/kernel/cpufeature.c | 167 +++++++--- arch/arm64/kernel/cpuinfo.c | 1 + arch/arm64/kernel/entry.S | 197 ++++++++--- arch/arm64/kernel/fpsimd.c | 1 + arch/arm64/kernel/insn.c | 29 ++ arch/arm64/kernel/smp.c | 6 - arch/arm64/kernel/traps.c | 4 +- arch/arm64/kernel/vmlinux.lds.S | 2 +- arch/arm64/kvm/hyp/hyp-entry.S | 4 + arch/arm64/kvm/hyp/switch.c | 9 +- arch/arm64/mm/fault.c | 17 +- arch/arm64/mm/mmu.c | 11 +- drivers/clocksource/Kconfig | 4 + drivers/clocksource/arm_arch_timer.c | 192 ++++++++--- include/linux/arm-smccc.h | 7 + 38 files changed, 1504 insertions(+), 331 deletions(-)
On 4/6/22 11:26, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.310-rc1... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y and the diffstat can be found below.
thanks,
greg k-h
On ARCH_BRCMSTB using 32-bit and 64-bit ARM kernels:
Tested-by: Florian Fainelli f.fainelli@gmail.com
Hi!
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
CIP testing did not find any problems here:
https://gitlab.com/cip-project/cip-testing/linux-stable-rc-ci/-/tree/linux-4...
Tested-by: Pavel Machek (CIP) pavel@denx.de
Best regards, Pavel
On 4/6/22 12:26 PM, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.310-rc1... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y and the diffstat can be found below.
thanks,
greg k-h
Compiled and booted on my test system. No dmesg regressions.
Tested-by: Shuah Khan skhan@linuxfoundation.org
thanks, -- Shuah
On Wed, Apr 06, 2022 at 08:26:09PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
Build results: total: 163 pass: 161 fail: 2 Failed builds: arm64:allnoconfig arm64:tinyconfig Qemu test results: total: 397 pass: 397 fail: 0
arch/arm64/kernel/cpu_errata.c: In function 'is_spectrev2_safe': arch/arm64/kernel/cpu_errata.c:829:39: error: 'arm64_bp_harden_smccc_cpus' undeclared
arch/arm64/kernel/cpu_errata.c: In function 'spectre_bhb_enable_mitigation': arch/arm64/kernel/cpu_errata.c:839:39: error: '__hardenbp_enab' undeclared
arch/arm64/kernel/cpu_errata.c:879:42: error: 'bp_hardening_data' undeclared
Guenter
On Thu, Apr 07, 2022 at 02:32:38AM -0700, Guenter Roeck wrote:
On Wed, Apr 06, 2022 at 08:26:09PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
Build results: total: 163 pass: 161 fail: 2 Failed builds: arm64:allnoconfig arm64:tinyconfig Qemu test results: total: 397 pass: 397 fail: 0
arch/arm64/kernel/cpu_errata.c: In function 'is_spectrev2_safe': arch/arm64/kernel/cpu_errata.c:829:39: error: 'arm64_bp_harden_smccc_cpus' undeclared
arch/arm64/kernel/cpu_errata.c: In function 'spectre_bhb_enable_mitigation': arch/arm64/kernel/cpu_errata.c:839:39: error: '__hardenbp_enab' undeclared
arch/arm64/kernel/cpu_errata.c:879:42: error: 'bp_hardening_data' undeclared
Ick, odds are James did not build with those two configs :(
James, any chance you can look into this and see what needs to be added or changed with your patch series?
thanks,
greg k-h
Hi Greg,
On 07/04/2022 11:23, Greg Kroah-Hartman wrote:
On Thu, Apr 07, 2022 at 02:32:38AM -0700, Guenter Roeck wrote:
On Wed, Apr 06, 2022 at 08:26:09PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
Build results: total: 163 pass: 161 fail: 2 Failed builds: arm64:allnoconfig arm64:tinyconfig Qemu test results: total: 397 pass: 397 fail: 0
arch/arm64/kernel/cpu_errata.c: In function 'is_spectrev2_safe': arch/arm64/kernel/cpu_errata.c:829:39: error: 'arm64_bp_harden_smccc_cpus' undeclared
arch/arm64/kernel/cpu_errata.c: In function 'spectre_bhb_enable_mitigation': arch/arm64/kernel/cpu_errata.c:839:39: error: '__hardenbp_enab' undeclared
arch/arm64/kernel/cpu_errata.c:879:42: error: 'bp_hardening_data' undeclared
Ick, odds are James did not build with those two configs :(
I'm sure I tried allnoconfig - but evidently messed something up.
James, any chance you can look into this and see what needs to be added or changed with your patch series?
Will do,...
Thanks,
James
On Thu, Apr 07, 2022 at 06:20:28PM +0100, James Morse wrote:
Hi Greg,
On 07/04/2022 11:23, Greg Kroah-Hartman wrote:
On Thu, Apr 07, 2022 at 02:32:38AM -0700, Guenter Roeck wrote:
On Wed, Apr 06, 2022 at 08:26:09PM +0200, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
Build results: total: 163 pass: 161 fail: 2 Failed builds: arm64:allnoconfig arm64:tinyconfig Qemu test results: total: 397 pass: 397 fail: 0
arch/arm64/kernel/cpu_errata.c: In function 'is_spectrev2_safe': arch/arm64/kernel/cpu_errata.c:829:39: error: 'arm64_bp_harden_smccc_cpus' undeclared
arch/arm64/kernel/cpu_errata.c: In function 'spectre_bhb_enable_mitigation': arch/arm64/kernel/cpu_errata.c:839:39: error: '__hardenbp_enab' undeclared
arch/arm64/kernel/cpu_errata.c:879:42: error: 'bp_hardening_data' undeclared
Ick, odds are James did not build with those two configs :(
I'm sure I tried allnoconfig - but evidently messed something up.
James, any chance you can look into this and see what needs to be added or changed with your patch series?
Will do,...
Thanks for the fixup patch, this passes my local build tests so I think I'll push out the release now.
greg k-h
On Wed, 6 Apr 2022 at 23:57, Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.310-rc1... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y and the diffstat can be found below.
thanks,
greg k-h
Results from Linaro’s test farm.
As Guenter reported, On stable rc 4.9 arm64 build configs allnoconfig and tinyconfig failed.
## Build * kernel: 4.9.310-rc1 * git: https://gitlab.com/Linaro/lkft/mirrors/stable/linux-stable-rc * git branch: linux-4.9.y * git commit: b5f0e9d665c30ceb3bee566518a1020e54d7bc1f * git describe: v4.9.309-44-gb5f0e9d665c3 * test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-4.9.y-sanity/build/...
## Test Regressions (compared to v4.9.309-163-geeae539a0d5c) * arm64, build - arm64-clang-11-allnoconfig - arm64-clang-11-tinyconfig - arm64-clang-12-allnoconfig - arm64-clang-12-tinyconfig - arm64-clang-13-allnoconfig - arm64-clang-13-tinyconfig - arm64-clang-nightly-allnoconfig - arm64-clang-nightly-tinyconfig - arm64-gcc-10-allnoconfig - arm64-gcc-10-tinyconfig - arm64-gcc-11-allnoconfig - arm64-gcc-11-tinyconfig - arm64-gcc-8-allnoconfig - arm64-gcc-8-tinyconfig - arm64-gcc-9-allnoconfig - arm64-gcc-9-tinyconfig
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
-- Linaro LKFT https://lkft.linaro.org
On Wed, 6 Apr 2022 at 23:57, Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
This is the start of the stable review cycle for the 4.9.310 release. There are 43 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Fri, 08 Apr 2022 18:24:27 +0000. Anything received after that time might be too late.
The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.310-rc1... or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y and the diffstat can be found below.
thanks,
greg k-h
Results from Linaro’s test farm.
As Guenter reported, On stable-rc 4.9 arm64 build configs allnoconfig and tinyconfig failed [1].
## Build * kernel: 4.9.310-rc1 * git: https://gitlab.com/Linaro/lkft/mirrors/stable/linux-stable-rc * git branch: linux-4.9.y * git commit: b5f0e9d665c30ceb3bee566518a1020e54d7bc1f * git describe: v4.9.309-44-gb5f0e9d665c3 * test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-4.9.y-sanity/build/...
## Test Regressions (compared to v4.9.309-163-geeae539a0d5c) * arm64, build - arm64-clang-11-allnoconfig - arm64-clang-11-tinyconfig - arm64-clang-12-allnoconfig - arm64-clang-12-tinyconfig - arm64-clang-13-allnoconfig - arm64-clang-13-tinyconfig - arm64-clang-nightly-allnoconfig - arm64-clang-nightly-tinyconfig - arm64-gcc-10-allnoconfig - arm64-gcc-10-tinyconfig - arm64-gcc-11-allnoconfig - arm64-gcc-11-tinyconfig - arm64-gcc-8-allnoconfig - arm64-gcc-8-tinyconfig - arm64-gcc-9-allnoconfig - arm64-gcc-9-tinyconfig
Build error: ------------
arch/arm64/kernel/cpu_errata.c: In function 'is_spectrev2_safe': arch/arm64/kernel/cpu_errata.c:829:39: error: 'arm64_bp_harden_smccc_cpus' undeclared (first use in this function); did you mean 'arm64_bp_harden_el1_vectors'? 829 | arm64_bp_harden_smccc_cpus); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | arm64_bp_harden_el1_vectors arch/arm64/kernel/cpu_errata.c:829:39: note: each undeclared identifier is reported only once for each function it appears in arch/arm64/kernel/cpu_errata.c: In function 'spectre_bhb_enable_mitigation': arch/arm64/kernel/cpu_errata.c:839:39: error: '__hardenbp_enab' undeclared (first use in this function) 839 | if (!is_spectrev2_safe() && !__hardenbp_enab) { | ^~~~~~~~~~~~~~~ In file included from include/asm-generic/percpu.h:6, from arch/arm64/include/asm/percpu.h:279, from include/linux/percpu.h:12, from arch/arm64/include/asm/mmu.h:23, from include/linux/mm_types.h:17, from include/linux/sched.h:27, from include/linux/ratelimit.h:5, from include/linux/device.h:27, from include/linux/node.h:17, from include/linux/cpu.h:16, from arch/arm64/include/asm/cpu.h:19, from arch/arm64/kernel/cpu_errata.c:23: arch/arm64/kernel/cpu_errata.c:879:42: error: 'bp_hardening_data' undeclared (first use in this function) 879 | __this_cpu_write(bp_hardening_data.fn, NULL); | ^~~~~~~~~~~~~~~~~ include/linux/percpu-defs.h:236:54: note: in definition of macro '__verify_pcpu_ptr' 236 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \ | ^~~ include/linux/percpu-defs.h:438:41: note: in expansion of macro '__pcpu_size_call' 438 | #define raw_cpu_write(pcp, val) __pcpu_size_call(raw_cpu_write_, pcp, val) | ^~~~~~~~~~~~~~~~ include/linux/percpu-defs.h:469:9: note: in expansion of macro 'raw_cpu_write' 469 | raw_cpu_write(pcp, val); \ | ^~~~~~~~~~~~~ arch/arm64/kernel/cpu_errata.c:879:25: note: in expansion of macro '__this_cpu_write' 879 | __this_cpu_write(bp_hardening_data.fn, NULL); | ^~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:307: arch/arm64/kernel/cpu_errata.o] Error 1
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
steps to reproduce:
# To install tuxmake on your system globally: # sudo pip3 install -U tuxmake
tuxmake --runtime podman --target-arch arm64 --toolchain gcc-11 --kconfig tinyconfig
-- Linaro LKFT https://lkft.linaro.org
[1] https://builds.tuxbuild.com/27R7yjNqw1ahQiOJ16BgcTn7BcZ/