瀏覽代碼

Drivers: hv: vmbus: Get the current time from the current clocksource

The current code uses the MSR based mechanism to get the current tick.
Use the current clock source as that might be more optimal.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
K. Y. Srinivasan 8 年之前
父節點
當前提交
e546d778d6
共有 2 個文件被更改,包括 1 次插入2 次删除
  1. 0 1
      arch/x86/include/asm/mshyperv.h
  2. 1 1
      drivers/hv/hv.c

+ 0 - 1
arch/x86/include/asm/mshyperv.h

@@ -137,7 +137,6 @@ static inline void vmbus_signal_eom(struct hv_message *msg, u32 old_msg_type)
 	}
 }
 
-#define hv_get_current_tick(tick) rdmsrl(HV_X64_MSR_TIME_REF_COUNT, tick)
 #define hv_init_timer(timer, tick) wrmsrl(timer, tick)
 #define hv_init_timer_config(config, val) wrmsrl(config, val)
 

+ 1 - 1
drivers/hv/hv.c

@@ -96,7 +96,7 @@ static int hv_ce_set_next_event(unsigned long delta,
 
 	WARN_ON(!clockevent_state_oneshot(evt));
 
-	hv_get_current_tick(current_tick);
+	current_tick = hyperv_cs->read(NULL);
 	current_tick += delta;
 	hv_init_timer(HV_X64_MSR_STIMER0_COUNT, current_tick);
 	return 0;