Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754491AbbHCP7Z (ORCPT ); Mon, 3 Aug 2015 11:59:25 -0400 Received: from mail-am1on0076.outbound.protection.outlook.com ([157.56.112.76]:36480 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752783AbbHCP7X (ORCPT ); Mon, 3 Aug 2015 11:59:23 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=cmetcalf@ezchip.com; Subject: Re: [PATCH 08/10] posix-cpu-timers: Migrate to use new tick dependency mask model To: Frederic Weisbecker References: <1437669735-8786-1-git-send-email-fweisbec@gmail.com> <1437669735-8786-9-git-send-email-fweisbec@gmail.com> <55B26E74.5040803@ezchip.com> <20150729132343.GC11554@lerouge> <55B90C40.5090000@ezchip.com> <20150730004444.GA14744@lerouge> <55BA7C6A.1050602@ezchip.com> <20150730194519.GA24607@lerouge> <55BA8096.7030601@ezchip.com> <20150731144954.GB27875@lerouge> CC: LKML , Peter Zijlstra , Thomas Gleixner , Preeti U Murthy , Christoph Lameter , Ingo Molnar , Viresh Kumar , Rik van Riel From: Chris Metcalf Message-ID: <55BF8FCB.6060409@ezchip.com> Date: Mon, 3 Aug 2015 11:59:07 -0400 User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: <20150731144954.GB27875@lerouge> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [12.216.194.146] X-ClientProxiedBy: DM3PR14CA0037.namprd14.prod.outlook.com (25.164.193.175) To DB5PR02MB0775.eurprd02.prod.outlook.com (25.161.243.146) X-Microsoft-Exchange-Diagnostics: 1;DB5PR02MB0775;2:XqodeBP5haKG/cGFu2bVW2V5L/qxQ85RsWPeDIFjlQ8cDh1WNcSBoZCD3okJF87Jb8dpSEh8Lu8nxAI4qqdxoNKFaJjq9FnTVdSZlq00ARjRH6lCjA5TTa9o3kA7r1XKisrAn3tL4qJHwnNNwtygvgWbn0sbVHN7g7T3No1Bhdk=;3:/xUX6dkmoi7nfve4uG+yi/Wlhios+9Utg7JT0R3mBDxQd1m+3PneHS5TNdqIStoXhH63SYKXKEB7c7D7pJcpok3Hdbf5tjI4sbsNhTB7k1cQloCPa69uvIuV6VU2Nf2Z+BRerXry6DCuEKjQ9IuTFw==;25:VtM80f/bVRMEQ+AiXAuWLPBHbBJpJocGmrW0Pbr53AAIz06xdZx6egrA952S4gwbeNyO7WrXgZoVyoWDvpHpCoIjNBG54jbrgAg5dPKXWFZcgboJqKwh1ild95/Q3T1btpGPKjBOQl0MRe3HNvoqpPofWOX7bStoVmCuFEzzzyzoIwgv1m5GHtA4FAxOj2PI35gV5kG2jl3KztBhF92YuoTmVgem9rJ/at7pmlW1U/HoeAzLu0FMiLdJMpu/KgpdJ19fuLFANZOTUYmIFseS0g==;20:GPy6VeXPCeyDy7Da8RZS7fEeKS3+1HrhCuorhCk0ClwtMwcvw0KFzpsz48nGtQ9+CdO2bFFHhvjPmBQCCINlJ8ui7jvX7V+NHE/avaJ8mgddGVNVWZtUaqHlniUV40P9cPg1AEE7F1hn7fnOSk5JPwCnNHsISeZ6/0LwJ2y4OF8= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB5PR02MB0775; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:DB5PR02MB0775;BCL:0;PCL:0;RULEID:;SRVR:DB5PR02MB0775; X-Microsoft-Exchange-Diagnostics: 1;DB5PR02MB0775;4:8P0qgG1a13MAQ3J1NW8mybzp80mdDjc3JPMxqVT7I8u2bxQjVEK1gHwNz1jB0CWOihave5HIC0WoVUZZVEuHZS2JLN3ifawoWYSLDQv/45evkheIyHa2GApySCVzXrU7rhkSViQ9hl6yUwEqtfC5GNnGM8n0irvmRv5V6Y29Qw56EkVAcjiJkm6Td/TqHcUBECLoMhV1jamzXi14Plw/J1zLNfgmklOU7aG7GeSnQPRbrWbezRejAiCJWH0yNRYc14vq3Ka5PBH+ROV3T4arRxoj1MX+0P7WgRmlB9yUY9A= X-Forefront-PRVS: 0657D528EC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(6049001)(377454003)(189002)(24454002)(479174004)(199003)(4001350100001)(64126003)(36756003)(50986999)(106356001)(87266999)(105586002)(54356999)(76176999)(65816999)(5001830100001)(5001860100001)(4001540100001)(110136002)(97736004)(15975445007)(77096005)(92566002)(68736005)(5001960100002)(81156007)(2950100001)(23746002)(66066001)(40100003)(93886004)(87976001)(86362001)(122386002)(83506001)(77156002)(65956001)(19580395003)(65806001)(47776003)(80316001)(64706001)(50466002)(1411001)(33656002)(46102003)(59896002)(101416001)(189998001)(230783001)(42186005)(62966003)(18886065003);DIR:OUT;SFP:1101;SCL:1;SRVR:DB5PR02MB0775;H:[10.7.0.41];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;DB5PR02MB0775;23:2vcY/vqTLC57Q1kr90dw49p7xM6xxn9GwWZE2?= =?Windows-1252?Q?DMm3emPFio4LtcSJqO+3boL1+rN7k3shdZ1dx08cnm6c13+he8wjIIea?= =?Windows-1252?Q?ONhTDS/pYcKGUBDj5MDy5Ck/Pk1emVUwXV3IPf/qZW0vndnbqYAHH0rl?= =?Windows-1252?Q?PTmh3fyiNki/PIONDD93MbrVA3Qqkv4334iK6/C4jGMCTs6pJl8owRAh?= =?Windows-1252?Q?/BWX5MDda/AVc7RPIaj374YLtbT1yQVaQYL295GH5OGxK3YwuoItYQhb?= =?Windows-1252?Q?80gMiLYh2l94ePkKJ1iNye7xG5zaMytlgojNCacPU7ZR8Jr4OzcMyXV5?= =?Windows-1252?Q?AUsg7dS4sNaEPtLqsq93Z1Vi0c0wmpJl1zxdp4ijDdqwGJR2l6MMFDl5?= =?Windows-1252?Q?snR/e5jToi0m48EYx+tkUBJRGWUPS8PmucPqWmCUWe/PRczIKjAruQ4I?= =?Windows-1252?Q?Plh5RZLeMbEi1eY7fIotAXML5XAKyaPCc2GWy98LGX0uKpR+SVy7Ej4a?= =?Windows-1252?Q?7VCpzejDt37gdHwbvC4pOCX1aBZO6Uce7Au8GGOmbGTbqxJo0TmPV6J/?= =?Windows-1252?Q?yccSStuMZI6PAeP6b2SBv0uW1w+kSjaBuYRo2PaeRK/9CXoWwYizvCtm?= =?Windows-1252?Q?NeHnUYz3cqiMR4keMfpfIPPVSaqEcJf7a4hpBm0bKmuwrV/rkm4S0ovf?= =?Windows-1252?Q?tjbu8oJo4BfCk3gsUPA8+rVlCxU7mdyCVlYQdrKSED9takP28Xb/lThJ?= =?Windows-1252?Q?X1sHlCzRGAGl9lx+nGLDe1mt4xOaLuBoe/18LUgRTopQvQU7vUgINc3U?= =?Windows-1252?Q?SEyb090tkb1czZrXVKotPUOi0H3cUQMESJIjQhEElq4AvsjeVnxcx6XI?= =?Windows-1252?Q?eaN/3cuQtXwyB6VLWIls9FIrQc6t/C3Y7OiuXbod+rIN77brWSiWyoHP?= =?Windows-1252?Q?Z/4eqrLQ1FOev4MjyHLgqkLq4OePT0MXv9uWNGNRAfOZkI1wlyqoRgqf?= =?Windows-1252?Q?xFx0djK1nS99jqu6t+UIDxoVxetG43hPk82HmjzjAAMzUz5UZ4uFM2hf?= =?Windows-1252?Q?LX04mFD3MCUddZJG12E8960ErvrLABXJZ3AFm8FGa2DC7U0bYkYwVtCD?= =?Windows-1252?Q?zI2noaGW7W29YN8DeWIIETl+M6qFJb1j3ioJEOTP1sHQ45rf7qowP7/e?= =?Windows-1252?Q?gh3XAwFlBpZ3wWtMtrjq5U2cwWTuTD56oAkIPzYbyZ/Hx7ERRPL7kmW/?= =?Windows-1252?Q?cPlrTTR2fbV1/ukLKoBQDTqchS3xkRVUV+vqH1LBCPnP5cxSyoq6IpEp?= =?Windows-1252?Q?qfVeXAeCbm6Dvlax6frSnY1H+0ns3bfg4j5DfuSeS7jBmiev2Xar5p4l?= =?Windows-1252?Q?D020CFPjUzdT1T953nTrf2n7+PBj2Il86h809k8Xi4cq5Dj6gmeggy5A?= =?Windows-1252?Q?3mIf63ntLwnXVM0whNRQbPej3q/HQGUICLfxirhlB+goiH9MbRLOXMY0?= =?Windows-1252?Q?b0Yp4SBdWyK30BU/1Vn5wykMZXG?= X-Microsoft-Exchange-Diagnostics: 1;DB5PR02MB0775;5:Wdg0Cm+wTrL2X27ITVPs4SysGJA1veeRELEp2vyog/w5JGDRl9YB9y6skWJKV2KQSJ2/ojHf84DT4/YqSBh5MK1xD+Qjppn5ASe1sLFO0tqmVpMeudhQFeuYn2uhMWkFECDehSJXlZrM0WWX0ALJBA==;24:TZQ6MhbJVbU9Mxcd6Wtd1evBPX51eCF8qJ9kcIaJzyN1o1yhegHGqAkwIPIGlI586KU/KGwyjROPkChJAowhOj3wV7pqjPNt9aEV6ubciB0=;20:Fbrb/pw5FBq2N4Cd9Yz7H5W2M2TYq+OGGf2JYDNh6eOZZwNoYrgKulCMqSwIh3MCj/YdXjediW7hLGc8DDbKlw== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: ezchip.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2015 15:59:19.3444 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR02MB0775 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1321 Lines: 29 On 07/31/2015 10:49 AM, Frederic Weisbecker wrote: > Instead of doing a per signal dependency, I'm going to use a per task > one. Which means that if a per-process timer is enqueued, every thread > of that process will have the tick dependency. But if the timer is > enqueued to a single thread, only the thread is concerned. > > We'll see if offloading becomes really needed. It's not quite free because > the housekeepers will have to poll on all nohz CPUs at a Hz frequency. Seems reasonable for now! Why would we need the Hz frequency polling, though? I would think it should be possible to just arrange it such that the timer for posix cpu timers would just always be placed either on the core that requested it, or if that core is nohz_full, on a housekeeping core. Then it would eventually fire from the housekeeping core, and the logic could be such that (for a process-wide timer) it would preferentially interrupt threads from that process that were running on the housekeeping cores. No polling. -- Chris Metcalf, EZChip Semiconductor http://www.ezchip.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/