• Vincenzo Frascino's avatar
    arm64: Fix __arch_get_hw_counter() implementation · 27e11a9f
    Vincenzo Frascino authored
    Provide the following fixes for the __arch_get_hw_counter()
    implementation on arm64:
     - Fallback on syscall when an unstable counter is detected.
     - Introduce isb()s before and after the counter read to avoid
       speculation of the counter value and of the seq lock
       respectively.
       The second isb() is a temporary solution that will be revisited
       in 5.3-rc1.
    
    These fixes restore the semantics that __arch_counter_get_cntvct()
    had on arm64.
    Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Cc: linux-arch@vger.kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-mips@vger.kernel.org
    Cc: linux-kselftest@vger.kernel.org
    Cc: catalin.marinas@arm.com
    Cc: will.deacon@arm.com
    Cc: arnd@arndb.de
    Cc: linux@armlinux.org.uk
    Cc: ralf@linux-mips.org
    Cc: paul.burton@mips.com
    Cc: daniel.lezcano@linaro.org
    Cc: salyzyn@android.com
    Cc: pcc@google.com
    Cc: shuah@kernel.org
    Cc: 0x7f454c46@gmail.com
    Cc: linux@rasmusvillemoes.dk
    Cc: huw@codeweavers.com
    Cc: sthotton@marvell.com
    Cc: andre.przywara@arm.com
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Link: https://lkml.kernel.org/r/20190625161804.38713-2-vincenzo.frascino@arm.com
    27e11a9f
gettimeofday.h 2.11 KB