summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Weißschuh <linux@weissschuh.net>2025-10-28 10:15:36 +0100
committerJohannes Berg <johannes.berg@intel.com>2025-11-06 13:02:32 +0100
commit74d438872dae44abfcfffad4daccd7f22cdf7bad (patch)
treeced01c242cf831269f7bef8793c65d902f01bbb8
parent8e03c195cc4d82100291500f772f85c686653748 (diff)
um: Split out default elf_aux_platform
Setting all auxiliary vector values to default values if one of them was not provided by the host will discard perfectly fine values. Move the elf_aux_platform fallback to its own conditional. Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Link: https://patch.msgid.link/20251028-uml-remove-32bit-pseudo-vdso-v1-1-e930063eff5f@weissschuh.net Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--arch/um/os-Linux/elf_aux.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/um/os-Linux/elf_aux.c b/arch/um/os-Linux/elf_aux.c
index 0a0f91cf4d6d..a62fe39e85c9 100644
--- a/arch/um/os-Linux/elf_aux.c
+++ b/arch/um/os-Linux/elf_aux.c
@@ -62,14 +62,16 @@ __init void scan_elf_aux( char **envp)
}
}
if ( ! __kernel_vsyscall || ! vsyscall_ehdr ||
- ! elf_aux_hwcap || ! elf_aux_platform ||
+ ! elf_aux_hwcap ||
! page_size || (vsyscall_ehdr % page_size) ) {
__kernel_vsyscall = 0;
vsyscall_ehdr = 0;
elf_aux_hwcap = 0;
- elf_aux_platform = "i586";
}
else {
vsyscall_end = vsyscall_ehdr + page_size;
}
+
+ if (!elf_aux_platform)
+ elf_aux_platform = "i586";
}