linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL] Housekeeping subsystem v6
@ 2017-10-27  2:42 Frederic Weisbecker
  2017-10-27  2:42 ` [PATCH 01/12] housekeeping: Move housekeeping related code to its own file Frederic Weisbecker
                   ` (11 more replies)
  0 siblings, 12 replies; 41+ messages in thread
From: Frederic Weisbecker @ 2017-10-27  2:42 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, Frederic Weisbecker, Peter Zijlstra, Linus Torvalds,
	Chris Metcalf, Thomas Gleixner, Luiz Capitulino,
	Christoph Lameter, Paul E . McKenney, Mike Galbraith,
	Rik van Riel, Wanpeng Li

Ingo,

Please pull the core/isolation-v7 branch that can be found at:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	core/isolation-v7

HEAD: 69dc2180d1f17ff1f861c7231f4a07423c30842a

Changes since last take:

* Move kernel/housekeeping.c to kernel/sched/isolation.c
  and linux/housekeeping.h to linux/sched/isolation.h

* Fix tilegx build error reported by Kbuild test robot

* Rebase against latest tip:sched/core

Thanks,
	Frederic
---

Frederic Weisbecker (12):
      housekeeping: Move housekeeping related code to its own file
      watchdog: Use housekeeping_cpumask() instead of ad-hoc version
      housekeeping: Provide a dynamic off-case to housekeeping_any_cpu()
      housekeeping: Make housekeeping cpumask private
      housekeeping: Use its own static key
      housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu
      housekeeping: Move it under its own config, independent from NO_HZ
      housekeeping: Introduce housekeeping flags
      housekeeping: Handle the nohz_full= parameter
      housekeeping: Move isolcpus to housekeeping
      housekeeping: Add basic isolcpus flags
      housekeeping: Document isolcpus flags


 Documentation/admin-guide/kernel-parameters.txt |  33 +++--
 drivers/base/cpu.c                              |  11 +-
 drivers/net/ethernet/tile/tilegx.c              |   6 +-
 include/linux/sched.h                           |   2 -
 include/linux/sched/isolation.h                 |  51 ++++++++
 include/linux/tick.h                            |  39 +-----
 init/Kconfig                                    |   7 ++
 init/main.c                                     |   2 +
 kernel/cgroup/cpuset.c                          |  15 +--
 kernel/rcu/tree_plugin.h                        |   3 +-
 kernel/rcu/update.c                             |   3 +-
 kernel/sched/Makefile                           |   1 +
 kernel/sched/core.c                             |  25 +---
 kernel/sched/fair.c                             |   3 +-
 kernel/sched/isolation.c                        | 155 ++++++++++++++++++++++++
 kernel/sched/topology.c                         |  24 +---
 kernel/time/tick-sched.c                        |  31 +----
 kernel/watchdog.c                               |  13 +-
 18 files changed, 282 insertions(+), 142 deletions(-)

^ permalink raw reply	[flat|nested] 41+ messages in thread
* [GIT PULL] Introduce housekeeping subsystem v5
@ 2017-10-24 13:06 Frederic Weisbecker
  2017-10-24 13:06 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
  0 siblings, 1 reply; 41+ messages in thread
From: Frederic Weisbecker @ 2017-10-24 13:06 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, Frederic Weisbecker, Peter Zijlstra, Chris Metcalf,
	Thomas Gleixner, Luiz Capitulino, Christoph Lameter,
	Paul E . McKenney, Mike Galbraith, Rik van Riel, Wanpeng Li

(No significant change since v4, only a rebase against -rc6)

Ingo,

Please pull the core/isolation-v5 branch that can be found at:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	core/isolation-v5

HEAD: 64b71f4e9bffef1d7c9ffd2fae9b688be6da95b5

Summary of changes:

* Move the housekeeping code that was tied to NO_HZ to its own subsystem.
  Currently NO_HZ governs the other isolation features which is not right
  as dynticks is just an isolation feature like the others. We want to
  centralize the CPU isolation decisions to a subsystem of its own instead.

* Integrate isolcpus code to housekeeping and treat it as a CPU isolation
  feature.

* Reuse the "isolcpus=" kernel parameter to control the CPU isolation.
  For now only tick and domains can be isolated after this patchset:

       isolcpus=1-7         # isolate domains on CPU range 1 to 7
                            # "domain" flag is implicit by default to
                            # keep the current behaviour

       isolcpus=domain,1-7  # do the same

       isolcpus=nohz,1-7    # apply nohz_full to CPU range 1 to 7

       isolcpus=nohz,domain,1-7  # apply nohz_full and isolate domains of
                                 # CPU range 1 to 7

Thanks,
	Frederic
---

Frederic Weisbecker (12):
      housekeeping: Move housekeeping related code to its own file
      watchdog: Use housekeeping_cpumask() instead of ad-hoc version
      housekeeping: Provide a dynamic off-case to housekeeping_any_cpu()
      housekeeping: Make housekeeping cpumask private
      housekeeping: Use its own static key
      housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu
      housekeeping: Move it under its own config, independant from NO_HZ
      housekeeping: Introduce housekeeping flags
      housekeeping: Handle nohz_full= parameter
      housekeeping: Move isolcpus to housekeeping
      housekeeping: Add basic isolcpus flags
      housekeeping: Document isolcpus flags


 Documentation/admin-guide/kernel-parameters.txt |  33 +++---
 drivers/base/cpu.c                              |  11 +-
 drivers/net/ethernet/tile/tilegx.c              |   6 +-
 include/linux/housekeeping.h                    |  51 ++++++++
 include/linux/sched.h                           |   2 -
 include/linux/tick.h                            |  39 +------
 init/Kconfig                                    |   7 ++
 init/main.c                                     |   2 +
 kernel/Makefile                                 |   1 +
 kernel/cgroup/cpuset.c                          |  15 +--
 kernel/housekeeping.c                           | 149 ++++++++++++++++++++++++
 kernel/rcu/tree_plugin.h                        |   3 +-
 kernel/rcu/update.c                             |   3 +-
 kernel/sched/core.c                             |  25 +---
 kernel/sched/fair.c                             |   3 +-
 kernel/sched/topology.c                         |  24 +---
 kernel/time/tick-sched.c                        |  31 +----
 kernel/watchdog.c                               |  13 +--
 18 files changed, 276 insertions(+), 142 deletions(-)

^ permalink raw reply	[flat|nested] 41+ messages in thread
* [GIT PULL] Introduce housekeeping subsystem v4
@ 2017-09-18 13:53 Frederic Weisbecker
  2017-09-18 13:54 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
  0 siblings, 1 reply; 41+ messages in thread
From: Frederic Weisbecker @ 2017-09-18 13:53 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: LKML, Frederic Weisbecker, Peter Zijlstra, Chris Metcalf,
	Thomas Gleixner, Luiz Capitulino, Christoph Lameter,
	Paul E . McKenney, Mike Galbraith, Rik van Riel, Wanpeng Li

Ingo,

Please pull the core/isolation-v4 branch that can be found at:

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	core/isolation-v4

HEAD: cf4c55aad44251369c8507c3823f9f9c51d4dc77

Summary of changes:

* Move the housekeeping code that was tied to NO_HZ to its own subsystem.
  Currently NO_HZ governs the other isolation features which is not right
  as dynticks is just an isolation feature like the others. We want to
  centralize the CPU isolation decisions to a subsystem of its own instead.

* Integrate isolcpus code to housekeeping and treat it as a CPU isolation
  feature.

* Reuse the "isolcpus=" kernel parameter to control the CPU isolation.
  For now only tick and domains can be isolated after this patchset:

       isolcpus=1-7         # isolate domains on CPU range 1 to 7
                            # "domain" flag is implicit by default to
                            # keep the current behaviour
                            
       isolcpus=domain,1-7  # do the same

       isolcpus=nohz,1-7    # apply nohz_full to CPU range 1 to 7

       isolcpus=nohz,domain,1-7  # apply nohz_full and isolate domains of
                                 # CPU range 1 to 7

Thanks,
	Frederic
---

Frederic Weisbecker (12):
      housekeeping: Move housekeeping related code to its own file
      watchdog: Use housekeeping_cpumask() instead of ad-hoc version
      housekeeping: Provide a dynamic off-case to housekeeping_any_cpu()
      housekeeping: Make housekeeping cpumask private
      housekeeping: Use its own static key
      housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu
      housekeeping: Move it under its own config, independant from NO_HZ
      housekeeping: Introduce housekeeping flags
      housekeeping: Handle nohz_full= parameter
      housekeeping: Move isolcpus to housekeeping
      housekeeping: Add basic isolcpus flags
      housekeeping: Document isolcpus flags


 Documentation/admin-guide/kernel-parameters.txt |  33 +++---
 drivers/base/cpu.c                              |  11 +-
 drivers/net/ethernet/tile/tilegx.c              |   6 +-
 include/linux/housekeeping.h                    |  51 ++++++++
 include/linux/sched.h                           |   2 -
 include/linux/tick.h                            |  39 +------
 init/Kconfig                                    |   7 ++
 init/main.c                                     |   2 +
 kernel/Makefile                                 |   1 +
 kernel/cgroup/cpuset.c                          |  15 +--
 kernel/housekeeping.c                           | 149 ++++++++++++++++++++++++
 kernel/rcu/tree_plugin.h                        |   3 +-
 kernel/rcu/update.c                             |   3 +-
 kernel/sched/core.c                             |  25 +---
 kernel/sched/fair.c                             |   3 +-
 kernel/sched/topology.c                         |  24 +---
 kernel/time/tick-sched.c                        |  31 +----
 kernel/watchdog.c                               |  13 +--
 18 files changed, 276 insertions(+), 142 deletions(-)

^ permalink raw reply	[flat|nested] 41+ messages in thread
* [PATCH 00/12] Introduce housekeeping subsystem v3
@ 2017-09-01 16:41 Frederic Weisbecker
  2017-09-01 16:41 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
  0 siblings, 1 reply; 41+ messages in thread
From: Frederic Weisbecker @ 2017-09-01 16:41 UTC (permalink / raw)
  To: LKML
  Cc: Frederic Weisbecker, Peter Zijlstra, Chris Metcalf,
	Thomas Gleixner, Luiz Capitulino, Christoph Lameter,
	Paul E . McKenney, Ingo Molnar, Mike Galbraith, Rik van Riel,
	Wanpeng Li

So this time I didn't change the implementation of isolcpus which relies
on NULL domains, I only pulled it to the housekeeping subsystem.

Summary of changes from v2:

* "isolcpus=" takes flags, which allows us to control nohz through it.
  For example:
	isolcpus=nohz,1-7			-- enable nohz_full to CPUs 1 to 7
	isolcpus=nohz,domain,1-7	-- enable nohz_full and isolate CPUs 1 to 7

  If no flags are passed, the default flag is "domain", so the kernel
  parameter is backward compatible.

  More flags should be added in the future to isolate a CPU from more
  details. We just need to debate how finegrained we want that.

  We also want to make sure that what is passed to isolcpus is later
  modifiable through cpusets.

* Remove workqueue and kthread isolation, we'll think about those later
  once we have an interface for them in the isolcpus flags.

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
	core/isolation-v3

HEAD: f1292ff748c3f5cdff0c29a3a43b2231ac5005cf

Thanks,
	Frederic
---

Frederic Weisbecker (12):
      housekeeping: Move housekeeping related code to its own file
      watchdog: Use housekeeping_cpumask() instead of ad-hoc version
      housekeeping: Provide a dynamic off-case to housekeeping_any_cpu()
      housekeeping: Make housekeeping cpumask private
      housekeeping: Use its own static key
      housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu
      housekeeping: Move it under own config, independant from NO_HZ
      housekeeping: Introduce housekeeping flags
      housekeeping: Handle nohz_full= parameter
      housekeeping: Move isolcpus to housekeeping
      housekeeping: Add basic isolcpus flags
      housekeeping: Document isolcpus flags


 Documentation/admin-guide/kernel-parameters.txt |  33 +++---
 drivers/base/cpu.c                              |  11 +-
 drivers/net/ethernet/tile/tilegx.c              |   6 +-
 include/linux/housekeeping.h                    |  51 ++++++++
 include/linux/sched.h                           |   2 -
 include/linux/tick.h                            |  38 +-----
 init/Kconfig                                    |   7 ++
 init/main.c                                     |   2 +
 kernel/Makefile                                 |   1 +
 kernel/cgroup/cpuset.c                          |  14 +--
 kernel/housekeeping.c                           | 148 ++++++++++++++++++++++++
 kernel/rcu/tree_plugin.h                        |   3 +-
 kernel/rcu/update.c                             |   3 +-
 kernel/sched/core.c                             |  25 +---
 kernel/sched/fair.c                             |   3 +-
 kernel/sched/topology.c                         |  21 +---
 kernel/time/tick-sched.c                        |  31 +----
 kernel/watchdog.c                               |  13 +--
 18 files changed, 272 insertions(+), 140 deletions(-)

^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2017-10-30 16:58 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-27  2:42 [GIT PULL] Housekeeping subsystem v6 Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 01/12] housekeeping: Move housekeeping related code to its own file Frederic Weisbecker
2017-10-27 12:01   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 02/12] watchdog: Use housekeeping_cpumask() instead of ad-hoc version Frederic Weisbecker
2017-10-27 12:02   ` [tip:sched/core] sched/isolation, " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 03/12] housekeeping: Provide a dynamic off-case to housekeeping_any_cpu() Frederic Weisbecker
2017-10-27 12:02   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 04/12] housekeeping: Make housekeeping cpumask private Frederic Weisbecker
2017-10-27 12:03   ` [tip:sched/core] sched/isolation: Make the " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 05/12] housekeeping: Use its own static key Frederic Weisbecker
2017-10-27 12:03   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 06/12] housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu Frederic Weisbecker
2017-10-27 12:03   ` [tip:sched/core] sched/isolation: Rename is_housekeeping_cpu() to housekeeping_cpu() tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 07/12] housekeeping: Move it under its own config, independent from NO_HZ Frederic Weisbecker
2017-10-27 12:04   ` [tip:sched/core] sched/isolation: Split out new CONFIG_CPU_ISOLATION=y config from CONFIG_NO_HZ_FULL tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 08/12] housekeeping: Introduce housekeeping flags Frederic Weisbecker
2017-10-27 12:04   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 09/12] housekeeping: Handle the nohz_full= parameter Frederic Weisbecker
2017-10-27 12:05   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
2017-10-27 12:05   ` [tip:sched/core] sched/isolation: Move isolcpus= handling to the housekeeping code tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 11/12] housekeeping: Add basic isolcpus flags Frederic Weisbecker
2017-10-27 12:05   ` [tip:sched/core] sched/isolation: " tip-bot for Frederic Weisbecker
2017-10-27  2:42 ` [PATCH 12/12] housekeeping: Document " Frederic Weisbecker
2017-10-27 12:06   ` [tip:sched/core] sched/isolation: Document the isolcpus= flags tip-bot for Frederic Weisbecker
2017-10-27 13:58     ` Peter Zijlstra
2017-10-27 14:36       ` Frederic Weisbecker
2017-10-27 17:06         ` Ingo Molnar
2017-10-27 17:33           ` Frederic Weisbecker
2017-10-27 18:21             ` Ingo Molnar
2017-10-27 18:39               ` Frederic Weisbecker
2017-10-27 19:04                 ` Ingo Molnar
2017-10-27 14:38       ` Mike Galbraith
2017-10-30 15:48       ` Christopher Lameter
2017-10-30 16:11         ` Peter Zijlstra
2017-10-30 16:30           ` Christopher Lameter
2017-10-30 16:58             ` Peter Zijlstra
2017-10-30 16:56           ` Mike Galbraith
  -- strict thread matches above, loose matches on Subject: below --
2017-10-24 13:06 [GIT PULL] Introduce housekeeping subsystem v5 Frederic Weisbecker
2017-10-24 13:06 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
2017-09-18 13:53 [GIT PULL] Introduce housekeeping subsystem v4 Frederic Weisbecker
2017-09-18 13:54 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker
2017-09-01 16:41 [PATCH 00/12] Introduce housekeeping subsystem v3 Frederic Weisbecker
2017-09-01 16:41 ` [PATCH 10/12] housekeeping: Move isolcpus to housekeeping Frederic Weisbecker

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).