Thread (5 messages) flat view 5 messages, 3 authors, 2019-08-22

Re: [PATCH] x86/hyper-v: enable TSC page clocksource on 32bit

From: Thomas Gleixner <hidden>
Date: 2019-08-21 21:23:17
Also in: lkml

On Wed, 21 Aug 2019, Thomas Gleixner wrote:
On Wed, 21 Aug 2019, Vitaly Kuznetsov wrote:
quoted
There is no particular reason to not enable TSC page clocksource
on 32-bit. mul_u64_u64_shr() is available and despite the increased
computational complexity (compared to 64bit) TSC page is still a huge
win compared to MSR-based clocksource.

In-kernel reads:
  MSR based clocksource: 3361 cycles
  TSC page clocksource: 49 cycles

Reads from userspace (unilizing vDSO in case of TSC page):
  MSR based clocksource: 5664 cycles
  TSC page clocksource: 131 cycles

Enabling TSC page on 32bits allows us to get rid of CONFIG_HYPERV_TSCPAGE
s/allows us/allows/
quoted
as it is now not any different from CONFIG_HYPERV_TIMER.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
---
 arch/x86/include/asm/vdso/gettimeofday.h |  6 +++---
 drivers/clocksource/hyperv_timer.c       | 11 -----------
 drivers/hv/Kconfig                       |  3 ---
 include/clocksource/hyperv_timer.h       |  6 ++----
 4 files changed, 5 insertions(+), 21 deletions(-)
Really nice cleanup as a side effect of adding functionality.
That said, could you please rebase that on

  git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/core

as I just applied the TSC page patches there and this conflicts left and
right.

Thanks,

	tglx
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help