Updated default config with new sym (CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y).
Manually rebased:
generic/hack-5.10/220-arm-gc_sections.patch
All other patches automatically rebased.
Build system: x86_64
Build-tested: bcm2711/RPi4B, mt7622/RT3200
Run-tested: bcm2711/RPi4B, mt7622/RT3200
Signed-off-by: John Audia <graysky@archlinux.us>
-LINUX_VERSION-5.10 = .104
-LINUX_KERNEL_HASH-5.10.104 = 394a9267ea8e24d0f0cfaad3439bf43abe7bcf6479dc9548e485b48a0ac562f1
+LINUX_VERSION-5.10 = .105
+LINUX_KERNEL_HASH-5.10.105 = 3ddc0e0ab2b9cadb64df43141e0a1e5432b5963ed50f34d586c065ac8d4fcb85
#include <linux/personality.h>
#include <linux/preempt.h>
#include <linux/printk.h>
-@@ -137,6 +138,10 @@ static int c_show(struct seq_file *m, vo
+@@ -140,6 +141,10 @@ static int c_show(struct seq_file *m, vo
{
int i, j;
bool compat = personality(current->personality) == PER_LINUX32;
for_each_online_cpu(i) {
struct cpuinfo_arm64 *cpuinfo = &per_cpu(cpu_data, i);
-@@ -197,6 +202,26 @@ static int c_show(struct seq_file *m, vo
+@@ -200,6 +205,26 @@ static int c_show(struct seq_file *m, vo
seq_printf(m, "CPU revision\t: %d\n\n", MIDR_REVISION(midr));
}
# CONFIG_MICROCHIP_T1_PHY is not set
# CONFIG_MICROSEMI_PHY is not set
# CONFIG_MIGRATION is not set
+CONFIG_HARDEN_BRANCH_HISTORY=y
+CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
CONFIG_MII=y
# CONFIG_MIKROTIK is not set
# CONFIG_MIKROTIK_RB532 is not set
--- a/arch/arm/include/asm/vmlinux.lds.h
+++ b/arch/arm/include/asm/vmlinux.lds.h
-@@ -29,13 +29,13 @@
+@@ -42,13 +42,13 @@
#define PROC_INFO \
. = ALIGN(4); \
__proc_info_begin = .; \
__idmap_text_end = .; \
#define ARM_DISCARD \
-@@ -96,12 +96,12 @@
+@@ -109,12 +109,12 @@
. = ALIGN(8); \
.ARM.unwind_idx : { \
__start_unwind_idx = .; \
__stop_unwind_tab = .; \
}
-@@ -112,14 +112,14 @@
- #define ARM_VECTORS \
- __vectors_start = .; \
- .vectors 0xffff0000 : AT(__vectors_start) { \
-- *(.vectors) \
-+ KEEP(*(.vectors)) \
- } \
- . = __vectors_start + SIZEOF(.vectors); \
- __vectors_end = .; \
+@@ -126,7 +126,7 @@
+ __vectors_lma = .; \
+ OVERLAY 0xffff0000 : NOCROSSREFS AT(__vectors_lma) { \
+ .vectors { \
+- *(.vectors) \
++ KEEP(*(.vectors)) \
+ } \
+ .vectors.bhb.loop8 { \
+ *(.vectors.bhb.loop8) \
+@@ -144,7 +144,7 @@
\
- __stubs_start = .; \
- .stubs ADDR(.vectors) + 0x1000 : AT(__stubs_start) { \
+ __stubs_lma = .; \
+ .stubs ADDR(.vectors) + 0x1000 : AT(__stubs_lma) { \
- *(.stubs) \
+ KEEP(*(.stubs)) \
} \
- . = __stubs_start + SIZEOF(.stubs); \
- __stubs_end = .; \
+ ARM_LMA(__stubs, .stubs); \
+ . = __stubs_lma + SIZEOF(.stubs); \