From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965121AbbCPOxS (ORCPT ); Mon, 16 Mar 2015 10:53:18 -0400 Received: from mail-we0-f170.google.com ([74.125.82.170]:35335 "EHLO mail-we0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933243AbbCPOxP (ORCPT ); Mon, 16 Mar 2015 10:53:15 -0400 Date: Mon, 16 Mar 2015 15:53:09 +0100 From: Ingo Molnar To: Frederic Weisbecker Cc: LKML , Paolo Bonzini , Alexander Graf , Luiz Capitulino , Christian Borntraeger , Benjamin Herrenschmidt , Marcelo Tosatti , "Paul E . McKenney" , Andy Lutomirski , Will deacon , Rik van Riel , Thomas Gleixner Subject: Re: [GIT PULL] nohz: Enable full dynticks on guest mode Message-ID: <20150316145309.GA26133@gmail.com> References: <1425998238-4954-1-git-send-email-fweisbec@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1425998238-4954-1-git-send-email-fweisbec@gmail.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Frederic Weisbecker wrote: > Ingo, > > Please pull the nohz/guest branch that can be found at: > > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git > nohz/guest > > This is 4.1 material. > > HEAD: 126a6a542446f1a49b9f3c69237c87df3eb4e6e1 > > --- > Some measurements showed that disabling the tick on the host while the > guest is running can be interesting on some workloads. Indeed the > host tick is irrelevant while vcpu runs, it consumes CPU time and cache > for no good reasons. > > Full dynticks already works in every context but RCU prevents it to > be effective outside userspace because the CPU needs to take part of > RCU grace period completion as long as RCU may be used on it, which is > the case in kernel context. However guest is similar to userspace and idle > in that we know RCU is unused on such context. Therefore a CPU in > guest/userspace/idle context can let other CPUs report its own RCU > quiescent state on its behalf and shut down the tick safely, provided it > isn't needed for other reasons than RCU. This is called RCU extended > quiescent state. > > This was implemented for idle and userspace. This patchset now brings it > for guest through the following steps: > > * Generalize the context tracking APIs to also track guest > * Rename/sanitize a few CPP symbols accordingly > * Report guest entry/exit to RCU and define this context area as an RCU > extended quiescent state. > --- > > Thanks, > Frederic > --- > > Rik van Riel (5): > context_tracking: Generalize context tracking APIs to support user and guest > context_tracking: Add stub context_tracking_is_enabled > context_tracking: Run vtime_user_enter/exit only when state == CONTEXT_USER > context_tracking: Export context_tracking_user_enter/exit > kvm,rcu,nohz: use RCU extended quiescent state when running KVM guest > > Frederic Weisbecker (2): > ppc: Remove unused cpp symbols in kvm headers > context_tracking: Rename context symbols to prepare for transition state > > > arch/powerpc/include/asm/kvm_book3s.h | 4 --- > arch/x86/kernel/traps.c | 2 +- > include/linux/context_tracking.h | 15 +++++++-- > include/linux/context_tracking_state.h | 9 ++++-- > include/linux/kvm_host.h | 3 +- > kernel/context_tracking.c | 59 ++++++++++++++++++++++------------ > kernel/sched/core.c | 2 +- > 7 files changed, 61 insertions(+), 33 deletions(-) Pulled into tip:timers/nohz, thanks a lot Frederic! Ingo