Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753253AbdHWBvW (ORCPT ); Tue, 22 Aug 2017 21:51:22 -0400 Received: from mail-wr0-f194.google.com ([209.85.128.194]:36370 "EHLO mail-wr0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753095AbdHWBvU (ORCPT ); Tue, 22 Aug 2017 21:51:20 -0400 From: Frederic Weisbecker 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 Subject: [RFC 00/12] Introduce housekeeping subsystem v2 Date: Wed, 23 Aug 2017 03:50:59 +0200 Message-Id: <1503453071-952-1-git-send-email-fweisbec@gmail.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2328 Lines: 52 So after the feedback from the v1, I decided to take it one step further and propose to re-implement isolcpus= on top of housekeeping. I expect it to be controversial because it brings a behaviour change: isolcpus= won't disable load balancing anymore. So you change the affinity of a task at your own risk. OTOH it might make the implementation of isolcpus more extendable, maybe more acceptable for a cpuset interface. I leave you judge. git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git core/isolation-v2 HEAD: 79ef9a911551a4f700b057ed794c223bd3a97d7b 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 workqueue: Affine unbound workqueues to housekeeping cpumask housekeeping: Affine unbound kthreads housekeeping: Handle nohz_full= parameter housekeeping: Reimplement isolcpus on housekeeping drivers/base/cpu.c | 10 ++- drivers/net/ethernet/tile/tilegx.c | 6 +- include/linux/housekeeping.h | 52 +++++++++++++++ include/linux/sched.h | 2 - include/linux/tick.h | 38 +---------- init/Kconfig | 7 +++ init/main.c | 2 + kernel/Makefile | 1 + kernel/cgroup/cpuset.c | 13 +--- kernel/housekeeping.c | 126 +++++++++++++++++++++++++++++++++++++ kernel/kthread.c | 5 +- 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 | 19 +----- kernel/time/tick-sched.c | 31 +-------- kernel/watchdog.c | 13 ++-- kernel/workqueue.c | 3 +- 19 files changed, 230 insertions(+), 132 deletions(-)