On Sat, 25 Jul 2020, Romain Naour wrote: > diff --git a/arch/mips/include/asm/vdso/gettimeofday.h b/arch/mips/include/asm/vdso/gettimeofday.h > index c63ddcaea54c..e377a7201a33 100644 > --- a/arch/mips/include/asm/vdso/gettimeofday.h > +++ b/arch/mips/include/asm/vdso/gettimeofday.h > @@ -30,12 +30,21 @@ static __always_inline long gettimeofday_fallback( > register long nr asm("v0") = __NR_gettimeofday; > register long error asm("a3"); > > +#if MIPS_ISA_REV >= 6 > + asm volatile( > + " syscall\n" > + : "=r" (ret), "=r" (error) > + : "r" (tv), "r" (tz), "r" (nr) > + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", > + "$14", "$15", "$24", "$25", "memory"); > +#else > asm volatile( > " syscall\n" > : "=r" (ret), "=r" (error) > : "r" (tv), "r" (tz), "r" (nr) > : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", > "$14", "$15", "$24", "$25", "hi", "lo", "memory"); > +#endif Argh, please avoid a flood of inline #ifdef's across code; let alone repeating identical parts in both legs of the conditional. We've been through this before, cf. commit b0984c43702f ("MIPS: Fix microMIPS LL/SC immediate offsets"), or commit 09abbcffb3ee ("[MIPS] cpu-bugs64.c: GCC 3.3 constraint workaround"), or the GCC_REG_ACCUM macro visible in the latter commit (originally added with historical commit f4232a2ce8f9 reachable at <git://git.linux-mips.org/pub/scm/ralf/linux> if you can have a look there). Maciej