mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Juri Lelli <juri.lelli@arm.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Preeti U Murthy <preeti@linux.vnet.ibm.com>,
	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 07/10] sched: Migrate sched to use new tick dependency mask model
Date: Mon, 10 Aug 2015 18:41:34 +0200	[thread overview]
Message-ID: <20150810164134.GH16853@twins.programming.kicks-ass.net> (raw)
In-Reply-To: <20150810152920.GB31251@lerouge>

On Mon, Aug 10, 2015 at 05:29:22PM +0200, Frederic Weisbecker wrote:

> Well, there could be a more proper way to do this without tying that
> to the scheduler tick. This could be some sort of
> hrtimer_cancel_soft() which more generally cancels a timer without
> cancelling the interrupt itself.

So when I looked at this last -- a long long time ago -- the whole
hrtimer rbtree took a significant amount of time. Hence the proposal
here to avoid all of it for this special timer.

> We might want to still keep track of
> that lost interrupt though in case of later clock reprogramming that
> fits the lost interrupt.  With a field like
> cpu_base->expires_interrupt. I thought about expires_soft and
> expires_hard but I think that terminology is already used :-)

Its easy enough to 'fix', but typically you'd reprogram a new sched tick
anyway, so its moot. Touching the hardware twice, once to cancel the
old, once to program the new, is double pain.

The only case where you really take that interrupt is when you cancel
and go idle I suppose, and we could special case that if the NOHZ code
doesn't already DTRT (by accident) etc..


  parent reply	other threads:[~2015-08-10 16:41 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-23 16:42 [PATCH 00/10] nohz: Tick dependency mask v2 Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 01/10] nohz: Remove idle task special case Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 02/10] nohz: Restart nohz full tick from irq exit Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 03/10] nohz: Move tick_nohz_restart_sched_tick() above its users Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 04/10] nohz: Remove useless argument on tick_nohz_task_switch() Frederic Weisbecker
2015-08-03 12:39   ` Peter Zijlstra
2015-08-03 12:49     ` Frederic Weisbecker
2015-08-03 13:04       ` Peter Zijlstra
2015-07-23 16:42 ` [PATCH 05/10] nohz: New tick dependency mask Frederic Weisbecker
2015-07-24 16:55   ` Chris Metcalf
2015-07-24 17:16     ` Frederic Weisbecker
2015-07-24 17:43       ` Chris Metcalf
2015-08-03 12:48         ` Peter Zijlstra
2015-08-03 12:43   ` Peter Zijlstra
2015-08-03 13:05     ` Frederic Weisbecker
2015-08-03 13:24       ` Peter Zijlstra
2015-08-03 13:49         ` Frederic Weisbecker
2015-08-03 12:57   ` Peter Zijlstra
2015-08-03 13:09     ` Frederic Weisbecker
2015-08-03 13:29       ` Peter Zijlstra
2015-08-03 13:55         ` Frederic Weisbecker
2015-08-03 14:11           ` Peter Zijlstra
2015-07-23 16:42 ` [PATCH 06/10] perf: Migrate perf to use new tick dependency mask model Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 07/10] sched: Migrate sched " Frederic Weisbecker
2015-07-23 16:55   ` Frederic Weisbecker
2015-07-24 16:56   ` Chris Metcalf
2015-07-29 13:01     ` Frederic Weisbecker
2015-08-03 14:00   ` Peter Zijlstra
2015-08-03 14:50     ` Frederic Weisbecker
2015-08-03 17:09       ` Peter Zijlstra
2015-08-03 17:30         ` Frederic Weisbecker
2015-08-04  7:41           ` Peter Zijlstra
2015-08-10 14:02             ` Juri Lelli
2015-08-10 14:16               ` Frederic Weisbecker
2015-08-10 14:28                 ` Peter Zijlstra
2015-08-10 15:11                   ` Peter Zijlstra
2015-08-10 15:29                     ` Frederic Weisbecker
2015-08-10 15:43                       ` Juri Lelli
2015-08-10 16:41                       ` Peter Zijlstra [this message]
2015-08-10 15:33                 ` Christoph Lameter
2015-07-23 16:42 ` [PATCH 08/10] posix-cpu-timers: Migrate " Frederic Weisbecker
2015-07-24 16:57   ` Chris Metcalf
2015-07-29 13:23     ` Frederic Weisbecker
2015-07-29 17:24       ` Chris Metcalf
2015-07-30  0:44         ` Frederic Weisbecker
2015-07-30 14:31           ` Luiz Capitulino
2015-07-30 14:46             ` Frederic Weisbecker
2015-07-30 19:35           ` Chris Metcalf
2015-07-30 19:45             ` Frederic Weisbecker
2015-07-30 19:52               ` Chris Metcalf
2015-07-31 14:49                 ` Frederic Weisbecker
2015-08-03 15:59                   ` Chris Metcalf
2015-08-03 18:01                     ` Frederic Weisbecker
2015-08-03 17:12                   ` Peter Zijlstra
2015-08-03 17:39                     ` Frederic Weisbecker
2015-08-03 19:07                       ` Peter Zijlstra
2015-08-06 17:13                       ` Chris Metcalf
2015-07-23 16:42 ` [PATCH 09/10] sched-clock: " Frederic Weisbecker
2015-07-23 16:42 ` [PATCH 10/10] nohz: Remove task switch obsolete tick dependency check 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=20150810164134.GH16853@twins.programming.kicks-ass.net \
    --to=peterz@infradead.org \
    --cc=cl@linux.com \
    --cc=fweisbec@gmail.com \
    --cc=juri.lelli@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome