From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754714AbaDPHhP (ORCPT ); Wed, 16 Apr 2014 03:37:15 -0400 Received: from mail-ee0-f50.google.com ([74.125.83.50]:35813 "EHLO mail-ee0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751404AbaDPHhN (ORCPT ); Wed, 16 Apr 2014 03:37:13 -0400 Date: Wed, 16 Apr 2014 09:37:08 +0200 From: Ingo Molnar To: Frederic Weisbecker Cc: Thomas Gleixner , LKML , "Paul E. McKenney" , Andrew Morton , Jens Axboe , Kevin Hilman , Peter Zijlstra Subject: Re: [GIT PULL v2] nohz: Move nohz kick out of scheduler IPI Message-ID: <20140416073708.GA5636@gmail.com> References: <1396541832-459-1-git-send-email-fweisbec@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1396541832-459-1-git-send-email-fweisbec@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Frederic Weisbecker wrote: > Ingo, Thomas, > > Please pull the timers/nohz-ipi-for-tip-v3 branch that can be found at: > > git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git > timers/nohz-ipi-for-tip-v3 > > It is based on 7a48837732f87a574ee3e1855927dc250117f565 > ("Merge branch 'for-3.15/core' of git://git.kernel.dk/linux-block") > due to dependencies on the block tree containing IPI core changes. > > This v2 addresses Paul review and add his reviewed-by tags. > > I'm trying to get these 2 patches in before the merge window ends > otherwise we'll have to do tricky branch split on the next cycle. > > --- > When a full dynticks CPU runs in single task mode then a new task gets > enqueued, we notify it through an IPI such that it restarts its tick. > > The IPI used here is the scheduler IPI. There are a few reasons for that: > it can be called when interrupts are disabled, it can be called > concurrently... These convenient properties altogether aren't yet offered > by the IPI subsystem. > > Meanwhile, bloating that way the scheduler IPI with scheduler unrelated > code is an abuse of this fast path. We certainly don't want to start a > big kernel IPI. > > So this patchset adds a small helper to the IPI subsystem that allows > to queue an IPI from interrupt disabled code while handling concurrent > callers as well. Eventually the nohz kick gets converted to this new facility. > > Partly inspired by a suggestion from Peter Zijlstra. > > * Patch 1/2 brings the IPI infrastructure to support this > * Patch 2/2 does the nohz IPI conversion > > > Thanks, > Frederic > --- > > Frederic Weisbecker (2): > smp: Non busy-waiting IPI queue > nohz: Move full nohz kick to its own IPI > > > include/linux/smp.h | 11 +++++++++++ > include/linux/tick.h | 2 ++ > kernel/sched/core.c | 5 +---- > kernel/sched/sched.h | 2 +- > kernel/smp.c | 42 ++++++++++++++++++++++++++++++++++++++++++ > kernel/time/tick-sched.c | 21 +++++++++++++++++++++ > 6 files changed, 78 insertions(+), 5 deletions(-) Pulled into tip:timers/nohz, thanks a lot Frederic! Ingo