From patchwork Thu Feb 1 16:51:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mathieu Poirier X-Patchwork-Id: 126554 Delivered-To: patch@linaro.org Received: by 10.46.124.24 with SMTP id x24csp1877900ljc; Thu, 1 Feb 2018 08:51:16 -0800 (PST) X-Google-Smtp-Source: AH8x224dtxpte1vGsbfDPO0udAZWB3eXMFmtXCcq6w9TrmB3UPAdbj1BM65FqrWYvlAuW6kZV94l X-Received: by 2002:a17:902:69c5:: with SMTP id m5-v6mr31813883pln.347.1517503875910; Thu, 01 Feb 2018 08:51:15 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517503875; cv=none; d=google.com; s=arc-20160816; b=pUxYERBqNT2TE7xCkHE3W5OrQun8HykrQYTh3UnRW5z3UY7JxajqsMjZGFQY8E4F1/ zrPKVDruIVIw/9KX3GoaTPYr1qcVZtynGzlp3vS1qV5gcytYhrdmwwe5TcxghCH+g6CV PacOzBgv5jZ/A84+Rjf5xM63B2uvMyV2lQVuz0slBkZ6hVctGb09RgH4rtY0V/6pV+RV fCjE1Pa3JsUIzVQzscCKb5DjQDxachY8H0EviaIbVeprqYRv7dtpfl8Of0zSP9mJlb+e maPCbIlYlP7pP/GgzmWRrJJhiGRIABBMy0ZZYg4coPRUWGTL/JIF5STK0zuWGKgyfEKj WDkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=DHNzvLXOuMNCPgCz6ZJaCyWoR6qETfcQIic8LmouIu4=; b=Z9KDkD9kUYGGVqvBrmsHunHfb6UlkJ066+5CDLfAeFFHp1dqx8Q37TUJgg0FacZell ugH/vF06V4CO3uTff4RJDB8qHt/qpKp2bWjK+DAFszi1691FM527GEmGNKUt1sCVmxLm yPH39JyHiWyV4znCiJacmoaNuNIJbi5JhPJ4/7hGApm4F6PzdPsP+FiSe7wq69WIxvN3 EIw58Hak2rHRyZZZU/rN9JCAzhbb5pnFyQflL9ZuA9MQq1qFdX8u5YED9O/bO9ruRQOE 6tX02OlZmSX9eO6ZavBOlF2HVglzJbprkth2p5VDJDg1OxWbWEMA2CUxvcnfzRElYDk9 wLOQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=heJU3Gv6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 95-v6si4565934ple.831.2018.02.01.08.51.15; Thu, 01 Feb 2018 08:51:15 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=heJU3Gv6; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752763AbeBAQvO (ORCPT + 28 others); Thu, 1 Feb 2018 11:51:14 -0500 Received: from mail-it0-f67.google.com ([209.85.214.67]:51796 "EHLO mail-it0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751783AbeBAQvM (ORCPT ); Thu, 1 Feb 2018 11:51:12 -0500 Received: by mail-it0-f67.google.com with SMTP id p139so5010357itb.1 for ; Thu, 01 Feb 2018 08:51:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=DHNzvLXOuMNCPgCz6ZJaCyWoR6qETfcQIic8LmouIu4=; b=heJU3Gv6vWY43xQKBcRQ+g/6gr58MCah27ZJDKHTyFtgr+JDDLgdAFTkuPnVRD7KeE KqfwOC5Pm6yR/QT5yW/yxPqIStdZJe9kIVrOu2b3wBH+9J3x4AzMD5YkaygmiUaV0V22 4aM3N1KeFOBZ8A4jV9o/83FfuNp5Tp6xxshl0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=DHNzvLXOuMNCPgCz6ZJaCyWoR6qETfcQIic8LmouIu4=; b=AolTLvqtR0Ewg+VyA+bDIftQ1KHV71U3AuOZbeZ+3b22FUC69oasPMVHNQJPRko6zs GMz0Puf78O0EoPTAHg3ktDBTHksIt9eaLpCiEkSGXHm1RUqIfPE1P8OE8bCPA4nVmycK ivAwNMrHjt4KAtjpmUb7qlAGImQ2C60HgCAulEoaO45qWeaB2sKJjmIMQUVHwsJ9OP9I YpkK9G2A/F01MS12sgm65FuzWiXoECa8I/Iuai+DIPYopWUW9hBSVWTL0jDS/qwI6r5c 5GM8cZOsmpdR7/tOtiG+cfP7qh+9Nu1sO3T4hx3po6CV6TUWInfRnsGjjM8ghEZRkzR8 M33A== X-Gm-Message-State: AKwxyteFNdDMGgwkcSsnDC9iULscEc0D2AqDHYx4eJ5hyYfJMgS0bfXj +JzH8i7tw/sX3jIrTAiPN+6Pdg== X-Received: by 10.36.74.194 with SMTP id k185mr39067608itb.23.1517503872184; Thu, 01 Feb 2018 08:51:12 -0800 (PST) Received: from xps15.cg.shawcable.net (S0106002369de4dac.cg.shawcable.net. [68.147.8.254]) by smtp.gmail.com with ESMTPSA id e83sm9270773iof.71.2018.02.01.08.51.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 01 Feb 2018 08:51:11 -0800 (PST) From: Mathieu Poirier To: peterz@infradead.org Cc: lizefan@huawei.com, mingo@redhat.com, rostedt@goodmis.org, claudio@evidence.eu.com, bristot@redhat.com, tommaso.cucinotta@santannapisa.it, juri.lelli@redhat.com, luca.abeni@santannapisa.it, linux-kernel@vger.kernel.org Subject: [PATCH V2 0/7] sched/deadline: fix cpusets bandwidth accounting Date: Thu, 1 Feb 2018 09:51:02 -0700 Message-Id: <1517503869-3179-1-git-send-email-mathieu.poirier@linaro.org> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is the follow-up patchset to [1] that attempt to fix a problem reported by Steve Rostedt [2] where DL bandwidth accounting is not recomputed after CPUset and CPU hotplug operations. When CPU hotplug and some CUPset manipulation take place root domains are destroyed and new ones created, loosing at the same time DL accounting information pertaining to utilisation. Please see [1] for a full description of the approach. In this revision a shortcoming identified by Luca is addressed, with most of the solution kept unchanged. A notable addition is patch 7/7 - it addresses a problem seen when hot plugging out a CPU where a DL task is running (see changelog for full details). The issue is unrelated to this patchset and will manifest itself on a mainline kernel. I will start working on that problem once done with this set but lumping it in here to raise awareness and provide a stop-gap measure while a better solution is designed. This set is also available here [3] with the instrumentation for patch 7/7 in this commit [4]. This set applies cleanly on top of v4.15. Best regards, Mathieu ------ Change for V2: . Addressing a problem found by Luca Abeni where the mask of a DL task isn't modified when cpuset are collapsed. [1]. https://groups.google.com/forum/#!topic/linux.kernel/uakbvOQE6rc [2]. https://lkml.org/lkml/2016/2/3/966 [3]. https://git.linaro.org/people/mathieu.poirier/linux.git/log/?h=v4.15-bandwidth-accounting-v2 [4]. af68563a6c21 ("sched/debug: Add 'rq_debug' proc entry") Mathieu Poirier (7): sched/topology: Adding function partition_sched_domains_locked() cpuset: Rebuild root domain deadline accounting information sched/deadline: Keep new DL task within root domain's boundary cgroup: Constrain 'sched_load_balance' flag when DL tasks are present cgroup: Constrain the addition of CPUs to a new CPUset sched/core: Don't change the affinity of DL tasks sched/deadline: Prevent CPU hotplug operation if DL task on CPU include/linux/cpuset.h | 6 ++ include/linux/sched.h | 3 + include/linux/sched/deadline.h | 8 ++ include/linux/sched/topology.h | 9 ++ kernel/cgroup/cpuset.c | 232 ++++++++++++++++++++++++++++++++++++++++- kernel/sched/core.c | 32 +++++- kernel/sched/deadline.c | 36 +++++++ kernel/sched/sched.h | 3 - kernel/sched/topology.c | 31 +++++- 9 files changed, 346 insertions(+), 14 deletions(-) -- 2.7.4