From: Martin Schwidefsky Date: Mon, 20 Oct 2014 08:24:39 +0000 (+0200) Subject: s390/time: use stck clock fast for do_account_vtime X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=1f759bb3a2a0d75ceeeec729b1c66a7f443631ba;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git s390/time: use stck clock fast for do_account_vtime The last high frequency call site of the STCK instruction is do_account_vtime. Replace it with the faster STCKF instruction. Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c index 416f2a323ba5..7f0089d9a4aa 100644 --- a/arch/s390/kernel/vtime.c +++ b/arch/s390/kernel/vtime.c @@ -66,7 +66,11 @@ static int do_account_vtime(struct task_struct *tsk, int hardirq_offset) clock = S390_lowcore.last_update_clock; asm volatile( " stpt %0\n" /* Store current cpu timer value */ +#ifdef CONFIG_HAVE_MARCH_Z9_109_FEATURES + " stckf %1" /* Store current tod clock value */ +#else " stck %1" /* Store current tod clock value */ +#endif : "=m" (S390_lowcore.last_update_timer), "=m" (S390_lowcore.last_update_clock)); S390_lowcore.system_timer += timer - S390_lowcore.last_update_timer;