From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752413AbcGSDZa (ORCPT ); Mon, 18 Jul 2016 23:25:30 -0400 Received: from mail-db5eur01on0070.outbound.protection.outlook.com ([104.47.2.70]:51648 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752251AbcGSDZW (ORCPT ); Mon, 18 Jul 2016 23:25:22 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=cmetcalf@mellanox.com; Subject: Re: [PATCH v13 00/12] support "task_isolation" mode To: Andy Lutomirski References: <1468529299-27929-1-git-send-email-cmetcalf@mellanox.com> <2a88da0c-b1a9-aec3-f5a6-d524e69e4731@mellanox.com> CC: 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 , Daniel Lezcano , "linux-doc@vger.kernel.org" , Linux API , "linux-kernel@vger.kernel.org" From: Chris Metcalf Message-ID: <947dc28d-c860-7fcf-210c-41a6e5a86844@mellanox.com> Date: Mon, 18 Jul 2016 18:50:32 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [108.20.173.108] X-ClientProxiedBy: CY1PR21CA0101.namprd21.prod.outlook.com (10.164.213.27) To AM4PR05MB1683.eurprd05.prod.outlook.com (10.165.245.154) X-MS-Office365-Filtering-Correlation-Id: 0946c16d-f5bc-411e-ced1-08d3af5df74b X-Microsoft-Exchange-Diagnostics: 1;AM4PR05MB1683;2:OfdsKdGVigRdndbXxboL5Tca0zMkTLUC23fDMBkyntasFFUCcjjzT2mk6SAqLyjSU8DMoxRujxCAMIsX1y9jVLaWJiLGlgO63ciF12D+mLHB6yhvr1IMAQxYJLKjEcG0gneCMfgPXTW5IAIp6LjN0XMu2nNPAeOV9V6MjFKgHHUgUAe4eZKtondIPYWC4Qnb;3:gyXrTkwmkX4eabAYOwXASJyBJL3C5rNM2tXc3FO3Sdf3uMcxd+bvKf9g66KOxKScpMp3e08EEFiFYlYicBNYbJmUd7yzkXvZMY3OCKYHEhTJgcq5rBbF2H4dvnnq1vWH;25:+sTCJWGeKuEWAUkF23aI56CuO0tu38w3kmrkZE/xpqAvhfsYgnXZA3C7IGKauF4+hSbP20LdkJuckhFQp4ZxiyRaFDo2N5rcsa65+JiSK8j+Vq/0lKLdttdMqhAhYDorCnkezrvsDZWdOYOR0uT0vEEMwSHZnDecOqBOXsyUCA2Lu3EoaoxPY90PVWyQWbT3VBTLG85SR+M/nQX/Xup9qywR9EoE6EmloX6kzH8VYa7tpOYX/2kad1cWs+p6T/s8X4UtqwXTV79pMT9cKHlh2tH/aAZxEJbToBg3AUBVoba8XzCiLk44OJTBi87gGCEYBVO/jYJlQoZ3YwadBS1Hz4w+IzvuLf7mFfeFkxcVN79EoVk+zchwKW2BoR46tMr89AgUwwR+S5bRwbcsKRw8v2CTabBaJqUOq/B+h0xHnT8=;31:Nokf3nzwVEC1jAnOf/sXmDtjg03b/V6aJxJ8PD/a3TwiLf9q2HhkNP3kQ0f8nrgallHeTN7gOwdSmMIhVp8Gd/Cp5rDJ9DkJB5ZX8cjqU4kNdd+itroHmOcUD3oBr2EQKerKwQDuDul3Wdj6D3KyVY2C3U+UyEQBdYd79psEPcMZuZ1R4Ol7gtCQwaOJmxd5FoJwXpeOR49xRp5QurS4Pw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM4PR05MB1683; X-Microsoft-Exchange-Diagnostics: 1;AM4PR05MB1683;20:2jKsz/2cdTqxlY7XSXFvxxWzhk42vx3WXQAhAoVb0sBD5QRmCYiSgl3PgTwMKjmFbnZUhKFfrQGt4AFHL1akQwE7DteKRDh9mZOjDmthlGnB862LgjXIFgX6LeqGaJXvin6AiG9CIF1/MHIpjaAzNm5+WxYkW7zZDJuhAe0mblqpRA7BSMmx4B3OibpgW4SvQFx3YFQFZQyfCpa6O0DezbkmQcmAsOxj2ynbdwMg7ol3NgyuJA0/sofQ8wMFOYPC3MZBGzceD8x++DnT6uWWOF+jiLs7FTA1QV0oMsp5qKHCMwG/yD2ov1zmVtbPi13NA1Kc8WoNDyj8hjrlQmA+VeFOhU3D/ksx2U7o+ZtWB7VCa/tl2HMNBVuY2sr51552H0OHPdVByOFPwECbZcq5MQ85lNnIfTdj5Pr+Ks7YTpVlXfChxFM55YXXUnWV3ln5pSgmdJ7FGE9Aaj0tEvbqtbWOp2QxCXsT0mOTJiB6YRVtz8iSQhzhb1ua+eaT6TQI;4:cRgKYpCBNiy/EmQ/d41Lb8eYT8weRJ2dwAHdMxOe7Ivla+MuQgAW4vQ4hc5HHwHRaU2njK2vZyv90Xs5/Cvt1I82T6YyVfi1YFER2D2ejY4ckRUEELfbGprFEBubIGaMHNlMANY+wG/tuCWsgJe1Drhun3r8+slMJEg77iQ/ruKQzht0YzJx6JDjvy5fud0RwU/3KnzzvFiGzDurURysqMvg5dkmtB2I8WsJ9VP82pyOid9lI7sq5Hyx/gDVceouv04Dyqjv9ryokfWxlbywZvF81Wt63NDCBLp3efAeV98Zu6eb8k1YlNTDZ62e17Bzx2KSLEiU1+bLCblGWsEpRJ8AJTuR3vR4Wa75OPV0Jy2ZkoyHrFIvxyfJtRAHQDuf0ddgu8q30Ujizcs7IOs3cbFDe4v7EXXH6NG0bHiP5h2pQnx4QRK78HBJhzgBYC25 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(171992500451332); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026);SRVR:AM4PR05MB1683;BCL:0;PCL:0;RULEID:;SRVR:AM4PR05MB1683; X-Forefront-PRVS: 00073DB75F X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6049001)(7916002)(377454003)(24454002)(199003)(189002)(65956001)(65806001)(50466002)(66066001)(86362001)(2906002)(33646002)(68736007)(2950100001)(4001350100001)(15975445007)(64126003)(47776003)(4326007)(230700001)(117156001)(77096005)(3846002)(6116002)(92566002)(106356001)(101416001)(23676002)(105586002)(93886004)(50986999)(76176999)(54356999)(36756003)(586003)(31696002)(83506001)(110136002)(189998001)(81156014)(81166006)(8676002)(19580395003)(97736004)(31686004)(42186005)(305945005)(7846002)(7736002)(65826006)(18886065003);DIR:OUT;SFP:1101;SCL:1;SRVR:AM4PR05MB1683;H:[192.168.1.158];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtBTTRQUjA1TUIxNjgzOzIzOjhoUjFBSDBNaDdIenplNXprOHIzdmZPUjdz?= =?utf-8?B?bzNSdVFlbTVodTVMeVNLcTR1VHZkV0JrZjNzdzZYb0hYaUZjL2hMMG54b2Zx?= =?utf-8?B?blViUVdrS29qeEIvUktMVzZITm5zOXhMZzhHNmhDMnlmd2xUK3JONnBiRW9T?= =?utf-8?B?Zkt3RDB3Y1AxZ3RDOStIVm8zdmNTU2pCbUxYRTZWb3ZiSTAzbnpYTXh0OWFF?= =?utf-8?B?TGtWdkM3UENyWlVFMGZnaFc2cW1HeStIeFVTUEtvYndnL3NrMkRKUVIrdjNZ?= =?utf-8?B?Ky9MUmV4ZnVaamNEQnFyS2ZvclVjcGRpMng2UnFwTlhVM09tdElnNnRhK1p4?= =?utf-8?B?Z2FwZEt2VmlNYkVqWFFZTHpuMFcrTTVjV3dYajNCRnFkSDhlTnhPa1BYSGFV?= =?utf-8?B?aG9JNmJQTldUQjVkd290NGNwUnZHUDlqOE1rZnpBbU9QckQ2MzV0c3lSQ3Fj?= =?utf-8?B?MTlRMytPTUgreGVvVkY5VEExU3RtUmU2MHdrdERNZG9HakZIMjdLaHIyOTJU?= =?utf-8?B?NVRLU0VzazF6Nm5WMURnNTR3ZnNZdktiMGovVGZsOXlxVGZqWjdYZ09Oa0Zp?= =?utf-8?B?MSsxVk9lU0tQWklURGV6QnY2N3hKakxzb1pBbnYyMndwSjlLNlhnSHdRZVRR?= =?utf-8?B?VHRBb3NhcGZpdk9EcXQxUXdpemdtYUd0NFVzUGhOK2htb3BiZ3hLODlkTlJa?= =?utf-8?B?elVBVlgxMVQxWXRUSS9mUDNkUGV5bWdJYnlXZVUxeElIczQxMGpyVUpNbk51?= =?utf-8?B?dnFRNW0zQzk0dk5PVmhvRjFTZjdWb2UzUk04MlEzaFRndzBWQk9NNGdLZ3NP?= =?utf-8?B?d0dYRXQxZWJ2cDBsUmwreGcwZk5YWXcvTDkxNkVTWUdYdCtGZWlXQ0srN2xH?= =?utf-8?B?NUVWZmRleVBmZ3EzYW5HTlZscWJDUnRBSWFzK05Ia3pFMTVSRmRZQ1dEME12?= =?utf-8?B?SjQzcnVhWklBU1NVOEhENEo0Y0IyM1dtaXlVTzZrTFdsS2RnaHJrS1NzTXAx?= =?utf-8?B?WlU2VnB2UWtJdGpQVjJ3RGF3ZWJ4RzNNdEZZekpaR0RERjJwcFpHbDdMK1hh?= =?utf-8?B?RDVuOE1kZzh3dGI0WmZ5R0RPd1NraFk3Ly80MmlqR2lTbmVSUUUvaktvZGMx?= =?utf-8?B?YmpCNXdOSzYzNE15WU9HOWVITFFiTnVYYXBvOTRNUHM1VGFWSVhHQmpiSEhh?= =?utf-8?B?b3puSFFncnMvb3V2RktQQlNaRU94SFJuUi9IM2NIak9JR2tSdDdZUmlVU1BS?= =?utf-8?B?c0l1YXMvdDdvVWhFamFyQTNYU25ReUxkc2lFdjNpOGNEWHBpTWZJb2RjT2dx?= =?utf-8?B?WEcxYVBobzZpeXQvbC9tcEtxa0V3dWgwZ3hpNkdYTnpSU1JvSVF5VUorajdy?= =?utf-8?B?aWh2THN5WmVPcEpqNW03cDZQYWpMRFl5bkhKWHNwU2YyV0Z0MEpWWXc1RWUw?= =?utf-8?B?VldXcWlUZnRtWWcrMW9oZTBzSzNrbHdPaXJiWFN6OGhOS1NPcGxod1VuWHI4?= =?utf-8?B?V3BOZTRIMHplQlZzYmRZSU9kRGtjT1U3RExLU2Yzb1JXeWVGUzdOckxCTTFq?= =?utf-8?B?dzFhZXVHQUpmTmpVSHVyMm9JOEhNVHNjdkRMUXFRUzlRQnZZQ1Y4ZWMyWVFq?= =?utf-8?B?ekdZV013V3l4RCsyWWZNK3ZTL0kzUmovczRiOVNFWUpJOUdzelpFcktEa0JR?= =?utf-8?B?UnUwZStrUG9DMFdtWGlBQmdiaGxlb1U1NmJNSWdEc25PQlo4NElOSU44a0Fj?= =?utf-8?B?UE1DNC9yamh3UU9TYXF2a0F2YkdRU0JQdkozd094TmFrZEFDTkVLV09CRFBE?= =?utf-8?Q?W2RTJ7eNVSxou?= X-Microsoft-Exchange-Diagnostics: 1;AM4PR05MB1683;6:IScsD1NapQOHjd6FBnEqPKb4of2a8WpZ88MJrCt6DJoqAlRqfbDZPF/HmAixv3p7kbHdy+05Hpo/BWQ3mgDhOtNIWmDWJPOq/kMZomevLvtOy4Dzo/6TRmdhYRArw4YmtnAc/ED/PY+gJwo3qGglfP82Nucx7AFDsa5nrAaxEQOm7CrCKlr1+lt8oecEtANMe8PM/+ra98AOsVeH+snnQ96OA/ZQ23CCNFSC/ogp6pCADd2Fl0cp3apePPUKhQ/CFtbBIguTrPolnMHQ85p4zvhxD/Kem/e275ej9LukYZa61O5v2bPj+N3uxSKSQCuFyCwP3aYTJ3zR8DEPOuPB6g==;5:a3Lbu/Mnfj9F3o+JR/+MK4wNM9fr/2kZ84tbUMSuT2kY4SXqFj2hZBpL1Q4IRI8V1jQQn4IAgYyln/QaO/SY+L+UefkwcZFq+Etj5jHH6Phk+QVowSH43I0r0dHFnNTJJgp4LgUDVs4z0ua/Sjad0w==;24:LRVatK2JE0R/mwOyPLbsJR8TBT5LLSljNxUpFIVSwsQMw2h+69gtE1bYG6QN3fAT60cCysvrBpqaZ5IAdVu5VlxKXmXIz9FYCW8q+ZEQtK4=;7:lguutCRT653gFgAv3Z7/r61otjOH/foQl7YkGFD9evP5XMnB2kSZtRaaGnHMIwA47fhhNlzkepAkQx3qN2uOnXuPMHkSY0ckKuqsTkI+gSNgImqSTAvWnHLSvcYDRgt39GHGz4YRqIh+203+xbR4PRhnG2JB/UshwG0iYX+nvK20CkYDBEoVvAeLVS2zYfr3RCDBabQtCWf4Di4VViySqqWDD7CaBgBtJ0kijvutntDAghMHRiLTdkfFHLhSdcAC SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2016 22:50:46.2816 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR05MB1683 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 7/18/2016 6:11 PM, Andy Lutomirski wrote: >>> As an example, enough vmalloc/vfree activity will eventually cause >>> flush_tlb_kernel_range to be called and*boom*, there goes your shiny >>> production dataplane application. >> >> Well, that's actually a refinement that I did not inflict on this patch >> series. > Submit it separately, perhaps? > > The "kill the process if it goofs" thing while there are known goofs > in the kernel, apparently with patches written but unsent, seems > questionable. Sure, that's a good idea. I think what I will plan to do is, once the patch series is accepted into some tree, return to this piece. I'll have to go back and look at the internal Tilera version of this code, since we have diverged quite a ways from that in the 13 versions of the patch series, but my memory is that the kernel TLB flush management was the only substantial piece of additional code not in the initial batch of changes. The extra requirement is the need to have a hook very early on in the kernel entry path that you can hook in all paths; arm64 has the ct_user_exit macro and tile has the finish_interrupt_save macro, but I'm not sure there's something equivalent on x86 to catch all entries. It's worth noting that the typical target application for task isolation, though (at least in our experience) is a pretty dedicated machine, with the primary application running in task isolation mode almost all of the time, and so you are generally in pretty good control of all aspects of the system, including whether or not you are generating kernel TLB flushes from your non task isolation cores. So I would argue the kernel TLB flush management piece is an improvement to, not a requirement for, the main patch series. -- Chris Metcalf, Mellanox Technologies http://www.mellanox.com