From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757341AbcBWFNI (ORCPT ); Tue, 23 Feb 2016 00:13:08 -0500 Received: from mail-bl2on0066.outbound.protection.outlook.com ([65.55.169.66]:44315 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750835AbcBWFNF (ORCPT ); Tue, 23 Feb 2016 00:13:05 -0500 Authentication-Results: lists.linux-foundation.org; dkim=none (message not signed) header.d=none;lists.linux-foundation.org; dmarc=none action=none header.from=amd.com; Subject: Re: [PATCH V4 5/6] perf/amd/iommu: Enable support for multiple IOMMUs To: Peter Zijlstra References: <1455182127-17551-1-git-send-email-Suravee.Suthikulpanit@amd.com> <1455182127-17551-6-git-send-email-Suravee.Suthikulpanit@amd.com> <20160218131853.GU6357@twins.programming.kicks-ass.net> <56CAC01F.8090800@amd.com> <20160222140741.GH6357@twins.programming.kicks-ass.net> CC: , , , , , , From: Suravee Suthikulpanit Message-ID: <56CBEA4A.8070001@amd.com> Date: Tue, 23 Feb 2016 12:12:42 +0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <20160222140741.GH6357@twins.programming.kicks-ass.net> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [124.121.8.20] X-ClientProxiedBy: SIXPR04CA0029.apcprd04.prod.outlook.com (25.162.171.19) To BLUPR12MB0434.namprd12.prod.outlook.com (25.162.92.14) X-MS-Office365-Filtering-Correlation-Id: 4ac4911e-905b-4b41-49be-08d33c1001b4 X-Microsoft-Exchange-Diagnostics: 1;BLUPR12MB0434;2:TZInoZ8yKgPyldrmIswkfe3q03Fhqfjt2qSjW6a2PlSK4JXwmLW3UHNa3OtCR/w7sQVsI7Da8Ao2x6NIWKKeJF6TGQnE1g4at4jPTCMhnibIrWKkyTiJwifk4E7fipgXXOihjnFzDLfbT2Db3Ur7tcLz12AetD1m51mqVf59SKoxD4gN/toIAohMadi5BnfL;3:pPl1Iru8zztgwRa1zVzf10SK21RJMCBTXIVYtJABooeXQ4HIxGJ9Gy7g9iBIiOzdix0MQByXkYZj0J9e4FZI9CVsljBAXCVLbdVWFwnbbpC0+SoiuowB6+Cj3O5R+b3J;25:uvHHAYqHLQ1Ks1dhwXM/LabNPzzATxp9OV0S/C7KskrNCq/ELnombaoQD2ccB0wTNf6xywyCCsVYBnwhC0zfR7GwbWws/+oG7ThFiWbq/rYrx3O3gbwZRJc5Hrn9U1S866j/3snp3zy/IKGYTxJ/xaZWNXRLFoysSI3OwQIndq6ORAiUyKJtLHxA2XgiFrsB9vYJpYC4eS78ausFjJB9sq8h3a3QQKx78XPu65LNOPQ+TwjrJys5eDbNyCzYYJx/wv6eWSUH2b2A8Jyf1EWZW5Cg1MGh6Nsg3wHpOPId/ttK4SjLpkjSP53uGSVQZpZMtKmsXwexP8H9lcfEk8Xf8eDmJUHsjTotMSuDPetTb5s= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR12MB0434; X-Microsoft-Exchange-Diagnostics: 1;BLUPR12MB0434;20:M9JEXWIVbpqAV90RK+bjzeifUVDMG0bayToWwhaD9qCi+J1FfVS/fg1bMQtJGAhRNkWMkhjcJYpZR2h1XT24IgOSNU8nbOo26RN+nyvXlaD9CUdQ14/o5qRYjb9Ef0JlGvj8PdJFSY7ZTmnCG3s5ov2r/76UcQDrOJhJnwr4evpwW6FAwesUMrahvrLGSogqy4bge8hHTWP2Ju55+ZTek2a5PO1dg6L/ZIOjKlQw+/BwkyZ2QU+rca+m9XdrWIx7dlGXxg1Et//YNYcM8m7zGrsONPDNWTNlbEYbXYQkTwNr/2aEQgGUellE0g/ek4QzPV37vZaAs5VwBREVxS4tYBaU7TQiGxhMD3aY086Fc4d6ESo1yZadd9jWY6Zd0gfwIF3TSRMqTcU+HH0Qq2hB0y4AyIeGaxrbaAs9I9PuDHKsAVEce7kPqpoNPbzWrgXIL4yS4GPob3K+NbC3eHZDQf2MQJ7Cx1A96RddKVrkMtsil231Z0/vuQO7G/z0kUuS;4:80as4CqkMgZjXRAEpmKwDkLFeJkjn9/o8qnt4sdIvvHZMhdB+BNWBjhoJomfeOjb2BkZrd+9OpwdlwcDynWYdFEVv3pU5Nu46u8VhPQzHK5Xzno9q6pXHSgfqWgnnPisf27VyNuBdyW7j3amApk6khaOg6MbYg8SobSL42wToHq98xIWf6+52oAH77pl0AOHAvVCdbgMQ2q7f0/wqsw9+FRizq0oEim8T5ldLfVfBIxThzqViGmUu6PwI0CREuXkyq/rLcvZPBJXeLqJQ4VKigkI5wa5/By0FC24Ct0CG7s1BFytdSwQNXtlH220cVpzWH4NHQKJApWYHYPb4G9Vus1OE91wuh2l825NWv/KusjK6mOHcBLxYRJua4p71yUA X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);SRVR:BLUPR12MB0434;BCL:0;PCL:0;RULEID:;SRVR:BLUPR12MB0434; X-Forefront-PRVS: 08617F610C X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(164054003)(24454002)(377454003)(479174004)(230700001)(5004730100002)(33656002)(3846002)(77096005)(4326007)(2906002)(2950100001)(6116002)(80316001)(42186005)(93886004)(5008740100001)(1096002)(86362001)(40100003)(50466002)(64126003)(122386002)(36756003)(117156001)(76176999)(5001960100002)(59896002)(47776003)(87266999)(66066001)(50986999)(110136002)(23746002)(54356999)(189998001)(87976001)(586003)(92566002);DIR:OUT;SFP:1101;SCL:1;SRVR:BLUPR12MB0434;H:[192.168.0.19];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BLUPR12MB0434;23:KiWuqGWN+2Q5L5ODiH/fvMQ8cJ1YZLX24tXX1?= =?Windows-1252?Q?fzfG7g2XyLyRO459hwkJ+BQh9FfRHbywObQkE71MKxcUVohth3G8+NIY?= =?Windows-1252?Q?0CR4jDCRdeHNBlR04LVsDbHL7M9NcBWAR//rXYbNbYOm5TSrKzsmbYyH?= =?Windows-1252?Q?bUvn6gAbWbinsDjeWue3o6Px3i6n8z3ctlmKqiDTjNArImrB5xdhh9Cr?= =?Windows-1252?Q?jTSP3I0BM4G9KozOZnPJvCeZju61G8vFdgct8d7Nouei+kX2C2kKNq+v?= =?Windows-1252?Q?rVy7McFPfV7t5quVd3jqqMMp8ibdMwrB6UcY1I760YojQqj+Xe5NaN2t?= =?Windows-1252?Q?jm4zwDI2FimIP+NTjTf3mJbhukiK8y9x5YIvZSElUuqrCvEkkO8tPY8u?= =?Windows-1252?Q?+BkO+STDxBJnC81eKGu1KQn92d0Dg/FFx+TPvtxwh3JQ8P4ss6MbCXzQ?= =?Windows-1252?Q?APhzK3as9HIAXWydqHtJYzzFn7kxgk92+ssfjtOQ3LR/MCNUQ7UA/Aal?= =?Windows-1252?Q?hs0FEk9CeaGaB22LPLblGulhWqVz/vFVnixECGw+/MVeE9TB5gJgSnZq?= =?Windows-1252?Q?mSaGDDHIMqvPUsw1cbd+FRNOXPRivQuvBFBnKd4P0ddOUyjx31quUbHN?= =?Windows-1252?Q?kCu3Itofy4y705Z3W6ZXPDxu62XgCtXuyPR2GzBgtS2hfAoEFIIh35Y5?= =?Windows-1252?Q?rxnLU2UNgDFp1lP+ORHoVBbCD+BKojQXDii6UYsuGaluwIEaTdjR9YJN?= =?Windows-1252?Q?cpfRfKQC/bW/i1pNZ+obGR6vWa74w8m1Xwit4HQqHouM/8yPtYpSPCJb?= =?Windows-1252?Q?nLVVnxHBYDDgRlfDb5+TpA2W7XtJMxdlHxaHdAi1BLZIS3lWsmqTWFm/?= =?Windows-1252?Q?3O4fIO452UJH4mQjSGBLoTDMSqQoUwh37LahVh361elWLLvFApS+D/Qi?= =?Windows-1252?Q?7D9G8lX/J/OJY72+iTKp/mqxvU5XiqXeYdBTu4WoISBp829Qp2FuHUD1?= =?Windows-1252?Q?bhsOxeSnPScRv2y3RSGfKRZMrMqUyxdah3E+FOIh78pTm7ocoxbbw6Mn?= =?Windows-1252?Q?EMQSBP1ygjIawBWowCfIwelBw6BiU8FdfdRHJWUwFJV++62nhpHaTPL/?= =?Windows-1252?Q?mDmDK+JpkXmJ9RO0791XYts5Y2QYZUrPtxykj7Uip823NinPdGJmm7ub?= =?Windows-1252?Q?VuFt7U5sg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR12MB0434;5:nSimwOSEaX2t+maxxj0QFSXJcGLw+rseWCc6r8LCDcFNdq7yvnhZ+39d3v8mtn3vh6CWgDtcox2nF3T4zx08AwMhJ60Nbrp8C/IU8QIpbYISdL3NPERewomVjlr8f+vj+mYT8OXTUb8K9SqB2UWXQw==;24:pyBJiSgI+xCfuPo2h0gt8lLDI9XZ+LYRel4yCN8krGLKPSl4fqGTmHbjbzpyY7Xf5dWvp7XYaxCd8XFLsbFYes0Su+PqEgER14IZT4FF1Es=;20:0BbK4Gdj6CSu1lAY/mjXG6eVO4M2tV106+4nVdKi9RZN5WMru0jJlbb2nLb8VSv3TnBabYgX7sU9H72lyuDQYgF7INVhqSmoMNvlBk8PlSruBYaurFeqEhfH16axYUi9DWpDHfAaejuT+GacKtxnc1jlUHF50K5clFdjTGV0ZGYeUGOZAdTQbwgKvLrp6YlZoGssIPc2amrY2IUMl2VvbN7k8DCl81VmB9BNMx8cqzZzplyZAeWWdZmm1ngG1aip SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Feb 2016 05:13:00.7919 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR12MB0434 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi On 02/22/2016 09:07 PM, Peter Zijlstra wrote: > On Mon, Feb 22, 2016 at 03:00:31PM +0700, Suravee Suthikulpanit wrote: >>> So I really don't have time to review new muck while I'm hunting perf >>> core fail, but Boris made me look at this. >>> >>> This is crazy, if you have multiple IOMMUs then create an event per >>> IOMMU, do _NOT_ fold them all into a single event. >> >> These are system-wide events, which are programmed on every IOMMU the same >> way. I am not sure what you meant by creating an event per IOMMU. Do you >> mean I should create internal per-IOMMU struct perf_event for each event? > > No, I meant to expose each IOMMU individually to userspace, as a > separate device. > > Is there never a case to profile just one of the IOMMUs ? > I see. That's definitely doable and simpler to implement. I was not sure if making users specify the IOMMU instance (e.g. amd_iommu_0/ , amd_iommu_1/, ....) would be too tedious. However, this would actually give users better control of the performance events, which is a good trade-off. I think it is acceptable. I'll make the change and send this out in V5. Thanks, Suravee