mips: Kconfig: add QEMUMIPS64 option
In 5.4+ mips has switched to using the generic VDSO implementation, in particular the following commits are the bulk of the changes: 932bb934 mips: compat: vdso: Use legacy syscalls as fallback cdab7e2c mips: vdso: Fix flip/flop vdso building bug b4c0f7fa mips: vdso: Fix source path 1f66c45d mips: Add clock_gettime64 entry point abed3d82 mips: Add clock_getres entry point 6393e606 mips: fix vdso32 build, again 24640f23 mips: Add support for generic vDSO 8919975b MIPS: VDSO: Fix build for binutils < 2.25 90800281 MIPS: VDSO: Remove unused gettimeofday.c There is a (currently) unknown interaction between qemumips64, the mti_malta64 platform, glibc and VDSO that causes a segfault when gettimeofday is called during boot. It appears that the VDSO configuration of the gic address is incorrect, and hence when read_gic_count() is called during do_hres() initialization, the page is not properly mapped and a segfault is triggered. If we avoid reading the gic, and let the vdso syscall fallbacks be enabled, we are find for boot. The most flexible way to avoid these reads is to make the two malta clocksources not be selected when we are booting under qemumips64. This allows other platforms to not be impacted. Once a root cause of this bad mapping is found, we can drop the new CONFIG_QEMUMIPS64 option and behaviour will revert to using the git automatically. Signed-off-by:Bruce Ashfield <bruce.ashfield@gmail.com>
Loading
Please register or sign in to comment