All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: Saravana Kannan <skannan@codeaurora.org>,
	Ingo Molnar <mingo@elte.hu>,
	linaro-kernel@lists.linaro.org, Nicolas Pitre <nico@fluxnic.net>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Oleg Nesterov <oleg@redhat.com>,
	cpufreq@vger.kernel.org, linux-kernel@vger.kernel.org,
	Anton Vorontsov <anton.vorontsov@linaro.org>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Mike Chan <mike@android.com>, Dave Jones <davej@redhat.com>,
	Todd Poynor <toddpoynor@google.com>,
	kernel-team@android.com, linux-arm-kernel@lists.infradead.org,
	Arjan Van De Ven <arjan@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [PATCH RFC 0/4] Scheduler idle notifiers and users
Date: Wed, 15 Feb 2012 17:09:07 +0100	[thread overview]
Message-ID: <1329322147.2293.145.camel@twins> (raw)
In-Reply-To: <20120215160028.GD27825@n2100.arm.linux.org.uk>

On Wed, 2012-02-15 at 16:00 +0000, Russell King - ARM Linux wrote:
> 
> > A third possibility is to self-IPI and take it from there.. assuming
> > these platforms can actually self-IPI.
> 
> Even if there was an IPI (not talking about SMP anyway) I'm not sure
> what good it would be.  We can (and do) get an IRQ from the LCD
> controller when its shutdown is complete, but that would have to be
> somehow propagated back up to the cpufreq code.  And the cpufreq code
> would have to know that the LCD controller was alive and therefore had
> to be waited for.  All sounds rather yucky to me. 

If can self-ipi from the scheduler context (which has IRQs disabled),
once you get to the ipi handler your scheduler locks are gone and you
can queue a worklet or wake some kthread to do all the sleeping stuff.



WARNING: multiple messages have this Message-ID (diff)
From: a.p.zijlstra@chello.nl (Peter Zijlstra)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH RFC 0/4] Scheduler idle notifiers and users
Date: Wed, 15 Feb 2012 17:09:07 +0100	[thread overview]
Message-ID: <1329322147.2293.145.camel@twins> (raw)
In-Reply-To: <20120215160028.GD27825@n2100.arm.linux.org.uk>

On Wed, 2012-02-15 at 16:00 +0000, Russell King - ARM Linux wrote:
> 
> > A third possibility is to self-IPI and take it from there.. assuming
> > these platforms can actually self-IPI.
> 
> Even if there was an IPI (not talking about SMP anyway) I'm not sure
> what good it would be.  We can (and do) get an IRQ from the LCD
> controller when its shutdown is complete, but that would have to be
> somehow propagated back up to the cpufreq code.  And the cpufreq code
> would have to know that the LCD controller was alive and therefore had
> to be waited for.  All sounds rather yucky to me. 

If can self-ipi from the scheduler context (which has IRQs disabled),
once you get to the ipi handler your scheduler locks are gone and you
can queue a worklet or wake some kthread to do all the sleeping stuff.

  reply	other threads:[~2012-02-15 16:09 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-08  1:39 [PATCH RFC 0/4] Scheduler idle notifiers and users Anton Vorontsov
2012-02-08  1:39 ` Anton Vorontsov
2012-02-08  1:41 ` [PATCH 1/4] sched: Introduce idle notifiers API Anton Vorontsov
2012-02-08  1:41   ` Anton Vorontsov
2012-02-08  1:43 ` [PATCH 2/4] sched: Wire up idle notifiers Anton Vorontsov
2012-02-08  1:43   ` Anton Vorontsov
2012-02-08  1:44 ` [PATCH 3/4] cpufreq: New 'interactive' governor Anton Vorontsov
2012-02-08  1:44   ` Anton Vorontsov
2012-02-08 23:00   ` Vincent Guittot
2012-02-08 23:00     ` Vincent Guittot
2012-02-09  0:32     ` Anton Vorontsov
2012-02-09  0:32       ` Anton Vorontsov
2012-02-08  1:44 ` [PATCH 4/4] ARM: Move leds idle start/stop calls to sched idle notifiers Anton Vorontsov
2012-02-08  1:44   ` Anton Vorontsov
2012-02-08  3:05 ` [PATCH RFC 0/4] Scheduler idle notifiers and users Peter Zijlstra
2012-02-08  3:05   ` Peter Zijlstra
2012-02-08 20:23   ` Dave Jones
2012-02-08 20:23     ` Dave Jones
2012-02-08 21:33     ` Benjamin Herrenschmidt
2012-02-08 21:33       ` Benjamin Herrenschmidt
2012-02-09  7:51       ` Ingo Molnar
2012-02-09  7:51         ` Ingo Molnar
2012-02-11  3:15         ` Saravana Kannan
2012-02-11  3:15           ` Saravana Kannan
2012-02-11  3:15           ` Saravana Kannan
2012-02-11 14:39           ` Mark Brown
2012-02-11 14:39             ` Mark Brown
2012-02-11 14:53             ` Peter Zijlstra
2012-02-11 14:53               ` Peter Zijlstra
2012-02-11 15:33               ` Mark Brown
2012-02-11 15:33                 ` Mark Brown
2012-02-15 13:38                 ` Peter Zijlstra
2012-02-15 13:38                   ` Peter Zijlstra
2012-02-15 13:38                   ` Peter Zijlstra
2012-02-15 16:04                   ` Mark Brown
2012-02-15 16:04                     ` Mark Brown
2012-02-12 21:33               ` Benjamin Herrenschmidt
2012-02-12 21:33                 ` Benjamin Herrenschmidt
2012-02-11 14:45           ` Ingo Molnar
2012-02-11 14:45             ` Ingo Molnar
2012-02-14 23:20             ` Saravana Kannan
2012-02-14 23:20               ` Saravana Kannan
2012-02-15 13:38               ` Peter Zijlstra
2012-02-15 13:38                 ` Peter Zijlstra
2012-02-15 13:38                 ` Peter Zijlstra
2012-02-15 14:02                 ` Russell King - ARM Linux
2012-02-15 14:02                   ` Russell King - ARM Linux
2012-02-15 15:01                   ` Peter Zijlstra
2012-02-15 15:01                     ` Peter Zijlstra
2012-02-15 15:01                     ` Peter Zijlstra
2012-02-15 16:00                     ` Russell King - ARM Linux
2012-02-15 16:00                       ` Russell King - ARM Linux
2012-02-15 16:09                       ` Peter Zijlstra [this message]
2012-02-15 16:09                         ` Peter Zijlstra
2012-02-16  3:31                     ` Benjamin Herrenschmidt
2012-02-16  3:31                       ` Benjamin Herrenschmidt
2012-02-16 10:14                       ` Peter Zijlstra
2012-02-16 10:14                         ` Peter Zijlstra
2012-02-17  9:00                     ` Dominik Brodowski
2012-02-17  9:00                       ` Dominik Brodowski
2012-02-20 11:03                       ` Peter Zijlstra
2012-02-20 11:03                         ` Peter Zijlstra
2012-02-21 12:38                     ` Pantelis Antoniou
2012-02-21 12:38                       ` Pantelis Antoniou
2012-02-21 12:38                       ` Pantelis Antoniou
2012-02-21 12:56                       ` Peter Zijlstra
2012-02-21 12:56                         ` Peter Zijlstra
2012-02-21 13:31                         ` Pantelis Antoniou
2012-02-21 13:31                           ` Pantelis Antoniou
2012-02-21 14:52                           ` Amit Kucheria
2012-02-21 14:52                             ` Amit Kucheria
2012-02-21 17:06                             ` Pantelis Antoniou
2012-02-21 17:06                               ` Pantelis Antoniou

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=1329322147.2293.145.camel@twins \
    --to=a.p.zijlstra@chello.nl \
    --cc=anton.vorontsov@linaro.org \
    --cc=arjan@infradead.org \
    --cc=benh@kernel.crashing.org \
    --cc=cpufreq@vger.kernel.org \
    --cc=davej@redhat.com \
    --cc=kernel-team@android.com \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mike@android.com \
    --cc=mingo@elte.hu \
    --cc=nico@fluxnic.net \
    --cc=oleg@redhat.com \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=skannan@codeaurora.org \
    --cc=tglx@linutronix.de \
    --cc=toddpoynor@google.com \
    /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.