From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933039AbcCKW1P (ORCPT ); Fri, 11 Mar 2016 17:27:15 -0500 Received: from mail-db3on0067.outbound.protection.outlook.com ([157.55.234.67]:5019 "EHLO emea01-db3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932959AbcCKW1I (ORCPT ); Fri, 11 Mar 2016 17:27:08 -0500 Authentication-Results: spf=fail (sender IP is 12.216.194.146) smtp.mailfrom=ezchip.com; mellanox.com; dkim=none (message not signed) header.d=none;mellanox.com; dmarc=fail action=none header.from=mellanox.com; From: Chris Metcalf To: Gilad Ben Yossef , Steven Rostedt , Ingo Molnar , Peter Zijlstra , Andrew Morton , "Rik van Riel" , Tejun Heo , Frederic Weisbecker , Thomas Gleixner , "Paul E. McKenney" , Christoph Lameter , Viresh Kumar , Catalin Marinas , Will Deacon , Andy Lutomirski , , CC: Chris Metcalf Subject: [PATCH v11 05/13] task_isolation: support CONFIG_TASK_ISOLATION_ALL Date: Fri, 11 Mar 2016 17:10:15 -0500 Message-ID: <1457734223-26209-6-git-send-email-cmetcalf@mellanox.com> X-Mailer: git-send-email 2.7.2 In-Reply-To: <1457734223-26209-1-git-send-email-cmetcalf@mellanox.com> References: <1457734223-26209-1-git-send-email-cmetcalf@mellanox.com> X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:12.216.194.146;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(1110001)(1109001)(339900001)(6806005)(85426001)(2950100001)(87936001)(104016004)(5001970100001)(48376002)(19580405001)(86362001)(586003)(107886002)(19580395003)(1220700001)(1096002)(92566002)(5003940100001)(5001770100001)(4326007)(189998001)(11100500001)(4001430100002)(50226001)(2906002)(50986999)(36756003)(76176999)(47776003)(50466002)(2201001)(105606002)(42186005)(33646002)(960300001)(5008740100001)(106466001)(229853001)(921003)(83996005)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR05MB1689;H:ld-1.internal.tilera.com;FPR:;SPF:Fail;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;DB3FFO11FD004;1:OKjGxbFtI0H8jjWnnD/b0Vl03nwpiZ4RecE4c2uDfPig9j7nB8vNB+Dt75HC9f5sk0Da5fy4g++3/kbIjtCmnQ/21Ldq6tEXYaxNVNZvhdjZNT7UMaxTLSzjgQfV6hp3Jue/hcHb6Z56ziiZiXSMcwg3sqv0AqXpAFpbMg2JGHQh/Qu1p/kjjNQjEYK48JaKbzE6yj32UhF6Zgbbd4WLQwBZJFe7KCFQtMAFFQY58olbOgLrQ+vvrQdQNQ5JwNTG3g8CLoATCqtBzC92/FTpqHngrT9IOA9l6mzC6J2JK+8UuE3eMHgDtiSPY4nxB9/+T3u5QDxpEjRCw96vXU7nBMo+AVtlGvi5CmbWowG80JYfMI04NFtiKxHBkD4TmPqxJOdh0s0fYoys4yJq7nP6EAKl8ZxT5B8/FV9w3x/KYr1bhei/B/I2bq10gDXm5V5U9EQygLP56DxQ6EU24475Guis1lbUGHT4pRYwzyCmVeJLIWTyok50QD+8zsAHITz3BPmUYkMwZrnsMjyETZ2y1K1LYGDyXlCSqJ9iQOuIWg8Bf3ahP5txhz1uvcT5hpXI MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 983485a8-5cc7-4e7e-5394-08d349fa136c X-Microsoft-Exchange-Diagnostics: 1;HE1PR05MB1689;2:WkfBw6wP6u0KG2GfTKxSgjs9BJqTFqqg5eQA+MtbvXHnGVxFtxNjKsrO0gtoqyzCRXLHQ/CvIIbzxZt0h6+wWB7Yd8JhUL6heJZPf2z8t8sbZEtnyj1LLxOx0RS5P3gidZQtwJefXPYhKd2/faEpgyQpYTIpFbcKiaNe97vsFRYdMB+ww3ZzMoXb7seKDPSA;3:sWkxSi+yey9aR9+FnyGfyuzPl1k4P+jNiOgOLF5L4K8b24xi/9pqwzhfTdYpo6pvHvf/6M7K0say7OhxkgSjJxw6WaAQXGZ0V2mtxEm7vuUP3Wl937jed3BwAoNABcOMJh1qeRo4h3dXikmAEr2dYoqD0bB6Ut9fSixJWdUyhhW7y5WGYMS9OxEElGSHvjvB8cMdq2+nE/tzjLVMtjqQZLu2OchCZpkPqeWvfOV5rgA=;25:XIx7q/+9E8z3qoPCVpqGQcWvoFi5x7WJncCCcKOFMFbsVzXfXrsDlqW7DyQ3vvQM5k0kMgGf+7tPgoaBP2L0iqC9h/qmW8WcahLRA9hfGWag1H1PFUQNbC0jy8HZ8t4BpmgElMR6S/wvggQpLv3wtklJl+RDfe7xKQFByMLk+W2FMnQKhSolVw14ar2tV1qHakG/9KnszqMtQvVwf3vt2SKeDkuIN8NWB9VX0f286A14KwnS03MDNMcSxB+tbuf7xCmczrKlUuZYH1itaSXjXZFFDtr/Oh1hQu5+2I7xXotW7TJ9QvxtS8+H//4DhF+fjghjeXCA7I+QIzt0ezF9tw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR05MB1689; X-MLNXRule-EZCH-Linux: Rule triggered X-Microsoft-Exchange-Diagnostics: 1;HE1PR05MB1689;20:3UKs7CL6lMzFhvwvOrnWXuMMvE3OtJOpFTfhvs/B6zRBhR3kyVlVlaYl+3HB1024LD7qyvIBbJ+3ZM575Qj46Q2RRlH/uOusYEvNOMj+VpAZ0Lx+hcQT6LkLD17wsqPbe4qZKPH5DHg2X9M/QuO1u/fD3Gm2T+SxApPJPdGdr7mumnTUH5COuyqjyJL+v7v4SOP10VDK8wjXlOa4TERcFywS2VPXknbJJayOHhwbLXBVluCJsRUtY6nWk09lfQqZYr2CWLJPswYpRgcN+b7YP8nqpqYUO6zTxv43yYgp+hbJLNwhHk3wwn3kHf3m85cD9oTu9Ni5QVpX+7CydTWqSffhXK6PdzvsSDE4FbcGwu4IWmy+eF/+tls1VheRHdpswVqUp8Xeo9qRIAQ237EQilWnw09XFEpU7LxJBr4tl/WikQC+K67XgKXjgyvKeUDeWkia64HZkVjrS+W9cH5gYLvbhuQZyQII+7WCTvG/GabEh+GQiAGvkAX5rM6JQSOF X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(13017025)(8121501046)(13023025)(13024025)(13015025)(5005006)(13018025)(3002001)(10201501046);SRVR:HE1PR05MB1689;BCL:0;PCL:0;RULEID:;SRVR:HE1PR05MB1689; X-Microsoft-Exchange-Diagnostics: 1;HE1PR05MB1689;4:JylzrStSGaOYFBBM+9/084pLsX9hd/aPNNAE3ThxaJVCI0FlFCG3Q9IcOngfl2ZZp6UUWKf/7n2gcz1aDl6iUUuzeuZrinL1uiCYYbEy/3JgRDKtayrGr3rcZr9g05HBXdGksI+f4BgXVbqHHSqC26AvVsyCIGrw5ladBzVHfXJZaXRy2c5JY+z7cJxo4mCHtpkqvzvoqPoEAKRFMxg1BuBU9JfAKRvLEM5vvSyNm0Mtf9a8GxFUb8vfbsH+UWY8EaP1dTryPc7ets0LCWPN+uNrh94AnRC/YtgLgfr51mMMTUr8qtbgMAuT0K7HSyXtZYTiOaK2zcezXax0Y+aMKw1MrlPbUCcOhNjfZTGk7mjVA2bqUpT6kB+U+W4ZX1QNpp1zEASVMzyQj3C5Q0EJ9vLrXcH0k+6Gq+pUP7yPVgPPvwy+9vD0zAaffw25K3JGU1QyzOQWpr9DWfKu+F3A9g== X-Forefront-PRVS: 087894CD3C X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR05MB1689;23:OMsWC1MUb4fjFLmsieEncjJeFx3PF2Xy8KRu2Z1ur?= =?us-ascii?Q?kyUDM3ojYzI5Ega8fiqzOaMwsZ6VhUJmrrLly7T9++PfP9Qi6nukVA2vfrfR?= =?us-ascii?Q?xsW3nn6sN3aHuvfq3fNLR3tkbMEJedTbAjM8Pc4OweB81zZ/q8tJ4/fi2KV2?= =?us-ascii?Q?NfozOcnl/dBD7QlZ6NHyU4ubMpHHyVz03zZl5Vj8eXW7ArI0hKL4Km0Yp8Sg?= =?us-ascii?Q?RZDF+9gkTcke1Zhwpo0I4oUpxLjQOzbF7Q2km4Mdz1iCgyuKdwxzfZlEeIY2?= =?us-ascii?Q?OlqICSsNPTVxTqJJMUy5zbsKsRIVGCDiTCsnL2ue52AXafYdoWLQm6ISrkim?= =?us-ascii?Q?TWB7JuZwJ8ChZfbzWeZ6Frfl67wwUcUqXA5AFmMJMFCylc7VKuyxysemqdWz?= =?us-ascii?Q?jjQLEYOlsyf4gjCi4SGxs2K4eDdoICgmvPow/+RHGgb3hLSqiNayPq8Hi+Nz?= =?us-ascii?Q?MkuQtfj248oI1TPS+h6Cwv0rE2rx1neAMde7q5GV4wTgy+1nZB2EvvJK5cnp?= =?us-ascii?Q?LXCAvaam2zy/shYq9+rIq5sR6vy8iEj/mBk6yCdxBgKlBNWR+/UKRAemIYQI?= =?us-ascii?Q?Pt9AwMoUiHIDY/RVEbuklv6oFY/U+B6K9qDe7+DL1GVvteA4sMhBSENzJctl?= =?us-ascii?Q?4zXv4JX6fSHGqokH55cCznGjFoiNA3Wv3vq+0TAP8vnyGk6zE1O82Hs4iLQc?= =?us-ascii?Q?TMUJeGDxp1pG0EnrlksoQ1oIDOcEz/WXqfY+LE/BN/8PCilbxB3as+GRXPr+?= =?us-ascii?Q?u/JtmNw5Hd376Yd7b2cxNRT3P9/18FhpnQz8f416PALo74srHVTFphCb6iZv?= =?us-ascii?Q?EitIo3JV247BXgmQNZ+ipdT11LHCDA40YofoM2uTH24XCWWrQnB9loPCyqad?= =?us-ascii?Q?+GLWFINbFKqojEZZXzJFq9crxs+nhhpBW7DVc5NzlDUx3f4mo9iAeI5B4IYq?= =?us-ascii?Q?O41N15SlkSAR4kHdS/7l7AHT1//4xCCVlZL2xSO+h3ccEYHnlrx1MtJHnwUn?= =?us-ascii?Q?37GqaFp967rh1WIxZ/Otua32SoI6KFZfJ5x/wsauTd4Ca4EgfKHUPJ7A0yGd?= =?us-ascii?Q?wV1r35lq17g82YHP6otc6R1+Zc5lrTDIs8IHPgtQ8hslEaLP8Wa36mWeyoTc?= =?us-ascii?Q?GlTzNeK+TsMgVoa6W36ydIhS4cUM9dC9e6z914o6Slt/0guiKTlcQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR05MB1689;5:+3QJfe+klzqXJrUTXfe6hSbCDvr6+wEGbal0Kw+gd8NVXfZ2wRORJ48JFp+5B04YUhaT3MgYKKS4o4t7UiEpwQEdY6ee4QOA/cpUc+cKTH7f0+v/bBTdg9K/b/329xayC/5DKPoF3zcKugpDOPaEwA==;24:QgKUPf4n8AxcgXG8wXAwGw4AGBoYKMm0x6b4m4qJ8UcLWUw1YFs55jQepdaconixz4xt7HDXIMCgaUoCMLcj0XgbyXD4b71nD+H9Z6WpsfY= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Mar 2016 22:11:13.7572 (UTC) X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=a652971c-7d2e-4d9b-a6a4-d149256f461b;Ip=[12.216.194.146];Helo=[ld-1.internal.tilera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR05MB1689 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This option, similar to NO_HZ_FULL_ALL, simplifies configuring a system to boot by default with all cores except the boot core running in task isolation mode. Signed-off-by: Chris Metcalf --- init/Kconfig | 10 ++++++++++ kernel/isolation.c | 6 ++++++ 2 files changed, 16 insertions(+) diff --git a/init/Kconfig b/init/Kconfig index 6cab348fe454..314b09347fba 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -802,6 +802,16 @@ config TASK_ISOLATION You should say "N" unless you are intending to run a high-performance userspace driver or similar task. +config TASK_ISOLATION_ALL + bool "Provide task isolation on all CPUs by default (except CPU 0)" + depends on TASK_ISOLATION + help + If the user doesn't pass the task_isolation boot option to + define the range of task isolation CPUs, consider that all + CPUs in the system are task isolation by default. + Note the boot CPU will still be kept outside the range to + handle timekeeping duty, etc. + config BUILD_BIN2C bool default n diff --git a/kernel/isolation.c b/kernel/isolation.c index c67f77d217f9..f59dcf06ba56 100644 --- a/kernel/isolation.c +++ b/kernel/isolation.c @@ -40,8 +40,14 @@ int __init task_isolation_init(void) { /* For offstack cpumask, ensure we allocate an empty cpumask early. */ if (!saw_boot_arg) { +#ifdef CONFIG_TASK_ISOLATION_ALL + alloc_cpumask_var(&task_isolation_map, GFP_KERNEL); + cpumask_copy(task_isolation_map, cpu_possible_mask); + cpumask_clear_cpu(smp_processor_id(), task_isolation_map); +#else zalloc_cpumask_var(&task_isolation_map, GFP_KERNEL); return 0; +#endif } /* -- 2.7.2