LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Frederic Weisbecker <fweisbec@gmail.com>
To: LKML <linux-kernel@vger.kernel.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Alexander Graf <agraf@suse.de>,
Luiz Capitulino <lcapitulino@redhat.com>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Marcelo Tosatti <mtosatti@redhat.com>,
"Paul E . McKenney" <paulmck@linux.vnet.ibm.com>,
Andy Lutomirski <luto@amacapital.net>,
Will deacon <will.deacon@arm.com>, Rik van Riel <riel@redhat.com>
Subject: [PATCH 0/7] nohz/rcu: Consider guest context as extended quiescent state (ie: enable full nohz on guest)
Date: Thu, 5 Mar 2015 03:14:49 +0100 [thread overview]
Message-ID: <1425521696-4471-1-git-send-email-fweisbec@gmail.com> (raw)
Hi,
Rik sent out this patchset a few weeks ago. It appears to be interesting
to disable the tick on the host while the guest is running. 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 need to take part of
RCU grace period completion as long as RCU may be used, which is the
case in kernel context. However guest is similar to userspace and idle
in that we know RCU is unused in such context. As such a
guest/userspace/idle CPU can let other CPUs report its 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 brings it for
guest.
Before pushing to Ingo, I've just cleaned out a few boring details on
naming and changelogs. So I'm just posting the whole in case somebody
has a comment before doing the pull request in a few days
Thanks.
Frederic Weisbecker (2):
ppc: Remove unused cpp symbols in kvm headers
context_tracking: Rename context symbols to prepare for transition
state
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
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(-)
--
2.1.4
next reply other threads:[~2015-03-05 2:15 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-05 2:14 Frederic Weisbecker [this message]
2015-03-05 2:14 ` [PATCH 1/7] ppc: Remove unused cpp symbols in kvm headers Frederic Weisbecker
2015-03-05 16:06 ` Rik van Riel
2015-03-05 2:14 ` [PATCH 2/7] context_tracking: Rename context symbols to prepare for transition state Frederic Weisbecker
2015-03-05 16:07 ` Rik van Riel
2015-03-05 2:14 ` [PATCH 3/7] context_tracking: Generalize context tracking APIs to support user and guest Frederic Weisbecker
2015-03-05 2:14 ` [PATCH 4/7] context_tracking: Add stub context_tracking_is_enabled Frederic Weisbecker
2015-03-05 2:14 ` [PATCH 5/7] context_tracking: Run vtime_user_enter/exit only when state == CONTEXT_USER Frederic Weisbecker
2015-03-05 2:14 ` [PATCH 6/7] context_tracking: Export context_tracking_user_enter/exit Frederic Weisbecker
2015-03-05 2:14 ` [PATCH 7/7] kvm,rcu,nohz: use RCU extended quiescent state when running KVM guest Frederic Weisbecker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1425521696-4471-1-git-send-email-fweisbec@gmail.com \
--to=fweisbec@gmail.com \
--cc=agraf@suse.de \
--cc=benh@kernel.crashing.org \
--cc=borntraeger@de.ibm.com \
--cc=lcapitulino@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=mtosatti@redhat.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=pbonzini@redhat.com \
--cc=riel@redhat.com \
--cc=will.deacon@arm.com \
--subject='Re: [PATCH 0/7] nohz/rcu: Consider guest context as extended quiescent state (ie: enable full nohz on guest)' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).