From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756803AbdERRrZ (ORCPT ); Thu, 18 May 2017 13:47:25 -0400 Received: from a2nlsmtp01-04.prod.iad2.secureserver.net ([198.71.225.38]:37492 "EHLO a2nlsmtp01-04.prod.iad2.secureserver.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756767AbdERRrL (ORCPT ); Thu, 18 May 2017 13:47:11 -0400 x-originating-ip: 107.180.71.197 From: kys@exchange.microsoft.com To: gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, olaf@aepfle.de, apw@canonical.com, vkuznets@redhat.com, jasowang@redhat.com, leann.ogasawara@canonical.com, marcelo.cerri@canonical.com, sthemmin@microsoft.com Cc: "K. Y. Srinivasan" Subject: [PATCH 1/6] Drivers: hv: vmbus: Get the current time from the current clocksource Date: Thu, 18 May 2017 10:46:02 -0700 Message-Id: <1495129567-13744-1-git-send-email-kys@exchange.microsoft.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1495129534-13628-1-git-send-email-kys@exchange.microsoft.com> References: <1495129534-13628-1-git-send-email-kys@exchange.microsoft.com> Reply-To: kys@microsoft.com X-CMAE-Envelope: MS4wfFdJSWfZ37IHbcIH/joH/4fGUz/IWZ4Th/U6B7hEnuwD1MEXnGofGOh1Q4OL9Hp9I26zNf7MroaLIaLd0/3sc26x73CACqMGpSFRHnBQ2R0yZrV8kuHa 1t3Q7BUzNOFCWydTASiLGsiEM4TlCzYslVykd3z+4JPfIpjKtgI9ESe0aSbn5XcEo490JJZT0eh30FX/2ZHHU+P1RFqCSN5Uj1AilxUbLGifLrdvmmg5xFHS LNPdPlj6C4oz6vTYEaXeUi4fy1chbJ0CQsulNftjg968pa6jE+NhGEdHj+f8ztXoDsXo7rE39Pmi1rDujWKLX+MCAHNhTZPuzfF1wjG9uyNlEF81yJbX1KR7 ih9aWV6yQ8md3yEkHQIg0ZGqU0/Mcs/jTyZ8j3hD96BXzRX5F1DANbCp+9D04mjV5wHr2YXSjLVE+T+2tY0p4Pli6qIztwl7z79tVtmy9NbKRXz6ZpiXYSsa 9H4JY5N04lD5VjqWkzou3mAD4rtgoyxYpyBmVsrBCNE7+PjqhS8I0pZmGiEXeVCT5I4LJjx3yKtYWtTo Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: K. Y. Srinivasan 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 --- arch/x86/include/asm/mshyperv.h | 1 - drivers/hv/hv.c | 2 +- 2 files changed, 1 insertions(+), 2 deletions(-) diff --git a/arch/x86/include/asm/mshyperv.h b/arch/x86/include/asm/mshyperv.h index 7c9c895..7b07853 100644 --- a/arch/x86/include/asm/mshyperv.h +++ b/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) diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c index 12e7bae..61fc8ce 100644 --- a/drivers/hv/hv.c +++ b/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; -- 1.7.1