Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752074AbdHBQtv (ORCPT ); Wed, 2 Aug 2017 12:49:51 -0400 Received: from mail-qt0-f174.google.com ([209.85.216.174]:36231 "EHLO mail-qt0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751182AbdHBQtt (ORCPT ); Wed, 2 Aug 2017 12:49:49 -0400 MIME-Version: 1.0 In-Reply-To: <1501684690-211093-1-git-send-email-dplotnikov@virtuozzo.com> References: <1501684690-211093-1-git-send-email-dplotnikov@virtuozzo.com> From: John Stultz Date: Wed, 2 Aug 2017 09:49:48 -0700 Message-ID: Subject: Re: [PATCH v4 00/10] make L2's kvm-clock stable, get rid of pvclock_gtod_copy in KVM To: Denis Plotnikov Cc: Paolo Bonzini , Radim Krcmar , kvm list , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , lkml , "x86@kernel.org" , rkagan@virtuozzo.com, den@virtuozzo.com Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1999 Lines: 47 On Wed, Aug 2, 2017 at 7:38 AM, Denis Plotnikov wrote: > V4: > * removed "is stable" function with vague definition of stability > there is the only function which does time with cycle stamp getting > * some variables renamed > * some patches split into smaller once > * atomic64_t usage is replaced with atomic_t > > V3: > Changing the timekeeper interface for clocksource reading looks like > an overkill to achive the goal of getting cycles stamp for KVM. > Instead extend the timekeeping interface and add functions which provide > necessary data: read clocksource with cycles stamp, check whether the > clock source is stable. > > Use those functions and improve existing timekeeper functionality to > replace pvclock_gtod_copy scheme in masterclock data calculation. > > V2: > The main goal is to make L2 kvm-clock be stable when it's running over L1 > with stable kvm-clock. > > The patch series is for x86 architecture only. If the series is approved > I'll do changes for other architectures but I don't have an ability to > compile and check for every single on (help needed) > > The patch series do the following: > > * change timekeeper interface to get cycles stamp value from > the timekeeper > * get rid of pvclock copy in KVM by using the changed timekeeper > interface: get time and cycles right from the timekeeper > * make KVM recognize a stable kvm-clock as stable clocksource > and use the KVM masterclock in this case, which means making > L2 stable when running over stable L1 kvm-clock So, from a brief skim, I'm not a big fan of this patchset. Though this is likely in part due to that I haven't seen anything about *why* these changes are needed. Can you briefly explain the issue you're trying to solve, and why you think this approach is the way to go? (Its usually a good idea to have such rational included in the patchset) thanks -john