Take an effort to recode the arm64 vdso code from assembler to C previously submitted by Andrew Pinski <[email protected]>, rework it for use in both arm and arm64, overlapping any optimizations for each architecture. But instead of landing it in arm64, land the result into lib/vdso and unify both implementations to simplify future maintenance.
Make sure kasan and ubsan profiling, and kcov instrumentation, is turned off for VDSO code. Signed-off-by: Mark Salyzyn <[email protected]> Cc: James Morse <[email protected]> Cc: Russell King <[email protected]> Cc: Catalin Marinas <[email protected]> Cc: Will Deacon <[email protected]> Cc: Andy Lutomirski <[email protected]> Cc: Dmitry Safonov <[email protected]> Cc: John Stultz <[email protected]> Cc: Mark Rutland <[email protected]> Cc: Laura Abbott <[email protected]> Cc: Kees Cook <[email protected]> Cc: Ard Biesheuvel <[email protected]> Cc: Andy Gross <[email protected]> Cc: Kevin Brodsky <[email protected]> Cc: Andrew Pinski <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: [email protected] Cc: [email protected] v2: - Added this to the split up of first CL, based on comments in second CL v4: - update commit message to reflect overall reasoning --- arch/arm/vdso/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/arm/vdso/Makefile b/arch/arm/vdso/Makefile index 59a8fa7b8a3b..1ce912ab47cc 100644 --- a/arch/arm/vdso/Makefile +++ b/arch/arm/vdso/Makefile @@ -26,8 +26,11 @@ CFLAGS_REMOVE_vdso.o = -pg CFLAGS_REMOVE_vgettimeofday.o = -pg -Os CFLAGS_vgettimeofday.o = -O2 -# Disable gcov profiling for VDSO code +# Disable gcov, kasan, ubsan and kcov profiling for VDSO code GCOV_PROFILE := n +KASAN_SANITIZE := n +UBSAN_SANITIZE := n +KCOV_INSTRUMENT := n # Force dependency $(obj)/vdso.o : $(obj)/vdso.so -- 2.15.0.rc2.357.g7e34df9404-goog

