All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frederic Weisbecker <fweisbec@gmail.com>
To: Preeti U Murthy <preeti@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Christoph Lameter <cl@linux.com>, Ingo Molnar <mingo@kernel.org>,
	Viresh Kumar <viresh.kumar@linaro.org>,
	Rik van Riel <riel@redhat.com>
Subject: Re: [PATCH 5/8] nohz: Restart the tick from irq exit
Date: Tue, 7 Jul 2015 16:23:47 +0200	[thread overview]
Message-ID: <20150707142346.GD20498@lerouge> (raw)
In-Reply-To: <557D49A4.2040201@linux.vnet.ibm.com>

On Sun, Jun 14, 2015 at 03:00:12PM +0530, Preeti U Murthy wrote:
> On 06/12/2015 06:08 PM, Frederic Weisbecker wrote:
> > On Fri, Jun 12, 2015 at 09:32:45AM +0200, Peter Zijlstra wrote:
> >> On Thu, Jun 11, 2015 at 07:36:05PM +0200, Frederic Weisbecker wrote:
> >>> Restart the tick when necessary from the irq exit path. It makes nohz
> >>> full more flexible and allow it to piggyback the tick restart on the
> >>> scheduler IPI in the future instead of sending a dedicated IPI that
> >>> often doubles the scheduler IPI on task wakeup. This will require
> >>> careful review of resched_curr() callers.
> >>
> >> This seems to assume schedule_ipi() callers use irq_exit(), this is
> >> false.
> > 
> > Indeed there will be that too. Note the current patch doesn't yet rely on
> > schedule_ipi(), we are still using the nohz ipis. But introducing the
> > tick restart on irq exit prepares for later piggybacking on scheduler_ipi().
> > 
> > I think this will involve changes on got_nohz_idle_kick(), renamed to
> > got_nohz_kick() and include nohz full related checks to trigger the
> > irq_enter()/exit() pair.
> 
> I maybe saying something obvious here, nevertheless; I am not sure about
> other archs, but atleast on powerpc after handling an interrupt, we will
> call irq_exit() and reevaluate starting of ticks. So in our case even if
> scheduler_ipi() callers do not call irq_exit(), it will be called after
> handling the reschedule interrupt.

scheduler_ipi() takes care of the call to irq_enter() and irq_exit() when
necessary. Which means that the arch low level handler for scheduler_ipi()
shouldn't call these functions. If it does then it's buggy.

  reply	other threads:[~2015-07-07 14:25 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-11 17:36 [PATCH 0/8] tick/nohz: Tick dependency quick check + cleanups Frederic Weisbecker
2015-06-11 17:36 ` [PATCH 1/8] jiffies: Remove HZ > USEC_PER_SEC special case Frederic Weisbecker
2015-06-11 20:46   ` Rik van Riel
2015-06-11 17:36 ` [PATCH 2/8] apm32: Fix cputime == jiffies assumption Frederic Weisbecker
2015-06-11 20:47   ` Rik van Riel
2015-06-11 17:36 ` [PATCH 3/8] alpha: Fix jiffies based cputime assumption Frederic Weisbecker
2015-06-11 20:47   ` Rik van Riel
2015-06-11 17:36 ` [PATCH 4/8] nohz: Remove idle task special case Frederic Weisbecker
2015-06-11 20:47   ` Rik van Riel
2015-06-14  1:44   ` Preeti U Murthy
2015-07-07 14:45     ` Frederic Weisbecker
2015-06-11 17:36 ` [PATCH 5/8] nohz: Restart the tick from irq exit Frederic Weisbecker
2015-06-11 20:48   ` Rik van Riel
2015-06-12  7:32   ` Peter Zijlstra
2015-06-12 12:38     ` Frederic Weisbecker
2015-06-12 12:59       ` Peter Zijlstra
2015-06-12 13:06         ` Frederic Weisbecker
2015-06-14  9:30       ` Preeti U Murthy
2015-07-07 14:23         ` Frederic Weisbecker [this message]
2015-06-14  9:18   ` Preeti U Murthy
2015-06-14  9:19   ` Preeti U Murthy
2015-07-07 14:20     ` Frederic Weisbecker
2015-06-11 17:36 ` [PATCH 6/8] nohz: Move tick_nohz_restart_sched_tick() above its users Frederic Weisbecker
2015-06-11 20:48   ` Rik van Riel
2015-06-11 17:36 ` [PATCH 7/8] nohz: Evaluate tick dependency once on context switch Frederic Weisbecker
2015-06-11 20:46   ` Rik van Riel
2015-06-17  5:59     ` Preeti U Murthy
2015-07-07 14:30     ` Frederic Weisbecker
2015-06-12  7:36   ` Peter Zijlstra
2015-07-06 16:14     ` Frederic Weisbecker
2015-06-11 17:36 ` [PATCH 8/8] nohz: Remove useless argument on tick_nohz_task_switch() 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=20150707142346.GD20498@lerouge \
    --to=fweisbec@gmail.com \
    --cc=cl@linux.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=preeti@linux.vnet.ibm.com \
    --cc=riel@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=viresh.kumar@linaro.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.