Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1610486

Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE

From Vincent Guittot <vincent.guittot@linaro.org>
Newsgroups linux.kernel
Subject Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE
Date 2017-03-28 11:40 +0200
Message-ID <tpVLz-5we-15@gated-at.bofh.it> (permalink)
References <toy4F-2Fu-9@gated-at.bofh.it> <toyeo-2LK-71@gated-at.bofh.it> <tpG9Q-2Hb-33@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 27 March 2017 at 18:50, Peter Zijlstra <peterz@infradead.org> wrote:
> On Fri, Mar 24, 2017 at 02:08:58PM +0000, Juri Lelli wrote:
>> Worker kthread needs to be able to change frequency for all other
>> threads.
>>
>> Make it special, just under STOP class.
>
> *yuck* ;-)
>
> So imagine our I2C/SPI bus is 'busy' and its mutex taken, then this
> 'soecial' task will need to boost it. Now add BWI to your thinking and
> shudder.
>
>
> On IRC broonie mentioned that:
>
>  - most PMIC operations are fire and forget (no need to wait for a
>    response).
>  - PMIC 'packets' are 'small'.
>  - SPI has the possibility to push stuff on the queue.
>
> Taken together this seems to suggest we can rework cpufreq drivers to
> function in-context, either directly push the packet on the bus if
> available, or queue it and let whoever owns it sort it without blocking.
>
> It might be possible to rework/augment I2C to also support pushing stuff
> on a queue.

But sending new voltage value to PMIC is only part of the sequence.
When cpufreq set a new opp, it does

-set new voltage
-wait for the voltage to settle down.
-set the new clock frequency

you can even have to switch to an intermediate clock source.

When such sequence is managed by the kernel, we can't easily git ride
of a kthread

>
>
> So if we can make all that work, we can do away with this horrible
> horrible kthread. Which is, IMO, a much better solution.
>
> Thoughts?

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFD PATCH 0/5] SCHED_DEADLINE freq/cpu invariance and OPP selection Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:10 +0100
  [RFD PATCH 2/5] sched/deadline: move cpu frequency selection triggering points Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:10 +0100
  [RFD PATCH 5/5] sched/deadline: make bandwidth enforcement scale-invariant Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:20 +0100
  [RFD PATCH 1/5] sched/cpufreq_schedutil: make use of DEADLINE utilization signal Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:20 +0100
  [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:20 +0100
    Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Peter Zijlstra <peterz@infradead.org> - 2017-03-27 19:00 +0200
      Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Juri Lelli <juri.lelli@arm.com> - 2017-03-27 19:20 +0200
        Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2017-03-27 19:50 +0200
          Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Mark Brown <broonie@kernel.org> - 2017-03-27 20:20 +0200
          Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Vikram Mulukutla <markivx@codeaurora.org> - 2017-03-30 18:00 +0200
            Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2017-03-30 22:30 +0200
              Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Juri Lelli <juri.lelli@arm.com> - 2017-03-31 09:30 +0200
      Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Juri Lelli <juri.lelli@arm.com> - 2017-03-27 19:20 +0200
        Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2017-03-27 19:20 +0200
      Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Mark Brown <broonie@kernel.org> - 2017-03-27 20:10 +0200
      Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be SCHED_DEADLINE Vincent Guittot <vincent.guittot@linaro.org> - 2017-03-28 11:40 +0200
        Re: [RFD PATCH 3/5] sched/cpufreq_schedutil: make worker kthread be  SCHED_DEADLINE Peter Zijlstra <peterz@infradead.org> - 2017-03-28 12:30 +0200
  [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all CPUs when deciding next freq Juri Lelli <juri.lelli@arm.com> - 2017-03-24 15:20 +0100
    Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all CPUs when deciding next freq "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2017-03-30 00:50 +0200
      Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all  CPUs when deciding next freq Juri Lelli <juri.lelli@arm.com> - 2017-03-30 11:00 +0200
        Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all CPUs  when deciding next freq Vincent Guittot <vincent.guittot@linaro.org> - 2017-03-30 15:30 +0200
        Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all CPUs  when deciding next freq "Rafael J. Wysocki" <rafael@kernel.org> - 2017-03-30 22:20 +0200
          Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all  CPUs when deciding next freq Juri Lelli <juri.lelli@arm.com> - 2017-03-31 09:40 +0200
            Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all CPUs  when deciding next freq "Rafael J. Wysocki" <rafael@kernel.org> - 2017-03-31 11:10 +0200
              Re: [RFD PATCH 4/5] sched/cpufreq_schedutil: always consider all  CPUs when deciding next freq Juri Lelli <juri.lelli@arm.com> - 2017-03-31 11:20 +0200

csiph-web