From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965468AbcAUPY0 (ORCPT ); Thu, 21 Jan 2016 10:24:26 -0500 Received: from mail-by2on0093.outbound.protection.outlook.com ([207.46.100.93]:23451 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S965342AbcAUPYX (ORCPT ); Thu, 21 Jan 2016 10:24:23 -0500 Authentication-Results: spf=none (sender IP is 165.204.84.221) smtp.mailfrom=amd.com; alien8.de; dkim=none (message not signed) header.d=none;alien8.de; dmarc=permerror action=none header.from=amd.com; X-WSS-ID: 0O1B6SE-07-GJ6-02 X-M-MSG: Date: Thu, 21 Jan 2016 23:24:14 +0800 From: Huang Rui To: Peter Zijlstra CC: Borislav Petkov , Ingo Molnar , "Andy Lutomirski" , Thomas Gleixner , Robert Richter , Jacob Shin , "John Stultz" , =?utf-8?B?RnLvv71k77+9cmlj?= Weisbecker , , , , Guenter Roeck , Andreas Herrmann , Suravee Suthikulpanit , Aravind Gopalakrishnan , Borislav Petkov , "Fengguang Wu" , Aaron Lu Subject: Re: [PATCH v2 5/5] perf/x86/amd/power: Add AMD accumulated power reporting mechanism Message-ID: <20160121152412.GB16294@hr-amur2> References: <1452739808-11871-1-git-send-email-ray.huang@amd.com> <1452739808-11871-6-git-send-email-ray.huang@amd.com> <20160119121250.GA6344@twins.programming.kicks-ass.net> <20160120044823.GA13477@hr-amur2> <20160120092244.GH6357@twins.programming.kicks-ass.net> <20160121070437.GA15130@hr-amur2> <20160121090257.GC6357@twins.programming.kicks-ass.net> <20160121144233.GA16294@hr-amur2> <20160121151040.GO6356@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20160121151040.GO6356@twins.programming.kicks-ass.net> User-Agent: Mutt/1.5.21 (2010-09-15) X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.221;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(428002)(199003)(164054003)(189002)(24454002)(47776003)(50466002)(86362001)(46406003)(93886004)(83506001)(33716001)(50986999)(76176999)(101416001)(97756001)(33656002)(54356999)(5008740100001)(110136002)(11100500001)(1096002)(23726003)(586003)(1220700001)(4326007)(1076002)(105586002)(106466001)(87936001)(2906002)(77096005)(97736004)(189998001)(4001350100001)(2950100001)(92566002)(107986001);DIR:OUT;SFP:1101;SCL:1;SRVR:DM3PR12MB0858;H:atltwp01.amd.com;FPR:;SPF:None;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;2:wvc3tPurfV1sP85EXU4goT5ZrIHB75lRmqAHGNZ2CCR/farChHGUdULFjOgUL5iChMvk7nB43Axf7P7MpGESBtO+DekUTq1fy82yY7m2s1Xc86iTqfPGjSNR2363o1+p10tKzn55tZ1yqntjL8DbHQ==;3:hTm6/WLKcCBvtSN2hiPMmJvJNjqBlM2Uyn+Q9PsI9dFY1BiKn0/oIT9rrvS6k3SJv7CaH1VtCZQmWmW25UDxSte+rWhJVaTY1utWQKeJIHKkUolcpwuWffPZ2Hcx11z3LvIJoWn33W+CZV6yXuvJIjMCoWYeF8/XMJnvFWlJnI82lv31mRihFz4Ae5oAaxkLtXa4GEUJ4iwxotM6eBbGwHsvGTgIw67z9f3wSJPR03Y=;25:ILydd7w390WolZpiOAQ1w30Bo2A/iMdYahYmT4LWJySDNSo+Pyf+6hSRlFuC2tbvxsF8nP/rzyF6wvmKdT1taS2Lv2cWxjhT/In3+3zatPrme0dTWcCVkOAh9eAfrHJq/p3uxgeN2upGEyuiXvmsiRdla/6q9EBdWzkGV3oVGQF/cl4gYPZNOhIFIhAU1gBqScYgjxN89iJTu8os+SqmdrbLqxPOoeLsuuAEEUOwSz2ah8Cl82gCcD6KjG8M7mqE X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM3PR12MB0858; X-MS-Office365-Filtering-Correlation-Id: 3d3bf254-a9dc-4b90-a634-08d32276ed49 X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;20:dRjv9dFKhOfLX9MIaJ0kEHmaCSbKCcHBAtWx6tff59t55gAoMBaVYaI21yOPIgWU5OT2dlTpVJqVfSarV/VIUaDtbSS9MgzFQnOZ2kM8pP4+7cnfYbBCBn9hsA/TL/UMaV+7THQbYxFzgqxkrrMiagun6k4VOE7HcW1BhyIAdH7zkH8J8g8JAI4v+RuJr9NglQrca/7//2axQ3LjKzVA2C4QMv5/FNIXb006C8NEEmBb3I/nZ4KWVCE+J1uE6hAReuT+jfzmeqUjRq16t5byIzcPyiLUKdSvvcmiyL6T5YlnPHrRSU6Gr2AbPpbXO9LHWpx34SO3N2/BXPa/ZEhe7yzAukCCIQIP4/IzVVA5sBTqOyOtY6wYPlwCI2Ensr12LFCvDYKV55xQxn/FBsQXjvCL7Bysq5ImcyoKTbndB4hFIdmEg+EsTesUyeU/yGv5GxoQoJ1m0euFIGnUVbMSYkiop1xwhhXH79mTrUCfMGCIsU3KRbmDxbTlM0dkBrY3 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(13015025)(13024025)(520078)(13023025)(13018025)(8121501046)(13017025)(5005006)(10201501046)(3002001);SRVR:DM3PR12MB0858;BCL:0;PCL:0;RULEID:;SRVR:DM3PR12MB0858; X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;4:rscQ/nNozfQQrIMM1Bo44FVvh+gX/LcJiBl25/TvUepJDaCi65EhoRhx4nhh+gxgqQVfC5pzmXUNNGhO+kn0eFnOUVRmsqn9mGFeKqoQ23Q4HFbOG1G7g5jZ7JhD4xQJxd8U7S7qJSvJvUOguywCHBXzjuJdzMAJAi75gMk/nrVQumcMkV51wTYMnVHCeDkDxsKkohEKrnRKwkDQtWzd36v1p/TaruKzb2KfCVRqn+alj2G/pGxlNkjZ5AIhDCqDvMgGNbkDkVZT/EkpiLpRs4aoXfwMQKgZGUm+jD/33p4SzRRMlltn1gNSDdoRiQ+2Oeo3zkltGf6A+qtGg/oy8uft3XQVpdrdXgSiAHqD6t8xclXPHo3uTS+SAHGuQk9tweQPNXdXRrTjnmXyjlAKvggweMft8mR10DgX53ZNcw7PJ1s+YkTGW9CRpOYIpZqVJogsB27kAiwpwy6TQiigO1/Tqm/s10gwmgV4lPq6I5s= X-Forefront-PRVS: 08286A0BE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM3PR12MB0858;23:/QWX4C+rzajk11Yz3C/hxY3Y/3TtKQ2iiydPeNpAF?= =?us-ascii?Q?SbyqG/VI5xXGq4JAATqT3jzU4rZSMST/OAhab6xgziEQ8GS7FlUCq2bt4GX2?= =?us-ascii?Q?TJ+WPpQCjJbqDmJCI9gJFbwvqOdDi+dGGmtSL90BN03awZ4TgJxpraZg/2IF?= =?us-ascii?Q?bIaPzxml1xRxWil7RlGyz0ApN5DOW6qA2zWwerBkpT3hv0z6m8c2GE4Rdm0l?= =?us-ascii?Q?0LFGKT0uTM31PPwrQmvyWU90UBLmwmws80YLdA6ytgmBAv9jrhrzWQHrWKDx?= =?us-ascii?Q?wOqnZeucmbRkq60Psm5xNBNR4yfOxOzKFAK2cYLP2tBTZT8CcWFb5EQd26D3?= =?us-ascii?Q?AXQKdpn3F+BNiSI+OfjcpF0Z8ZcAWYRYfYuQNZ+inmLVC8vdNFRlpMX6YY7U?= =?us-ascii?Q?LlfkbZhPefOLVwGYce1ZuBld5KJOP19V/MgX86tN048y0MbSxKsfhSkb7Pom?= =?us-ascii?Q?VZPj/hj106Re+2BrUbxImV/nE7g/6N44dniVWC7CHMqwkRiereHOMcb/2KL1?= =?us-ascii?Q?9l9wBBTKBYY+ieEKwKBeccElj76/sgnkVcKOmDevkU5JCQp+hio12Em+HFMf?= =?us-ascii?Q?IsTFXz95RqtzgQkj9A8B/OC0U4RCBMSDNZWdPFP3YtHEx5Oze/1gbNipJY69?= =?us-ascii?Q?8lgchjLHU2VSRMSWEDIruihYbBVY7DD8v7PXyxOzPhIYbB9/enXTgu7U0wCF?= =?us-ascii?Q?ODXG6woScIHZUenf6QWfVTLht97SFILcmJXXRth/ZdmR2Vs96O7KKvbQ+txY?= =?us-ascii?Q?XfxYryeWckDVH3U4FALY4Ja4DTYrgkxG/P8CQS1jnRzGNMo5ghYPUfYEu/3c?= =?us-ascii?Q?dAfTODcWhJdSXP5oK5L1yRuugIgJMnmMXhVHUoOxyAyTGW7LthD+llSbxFtz?= =?us-ascii?Q?Rw5Ws8+v80uCXLmeEP/gIYoXSyHky3Fo9wy89kAKzOtPZR7NDcjKYmxp7OMT?= =?us-ascii?Q?f8UIEdd79FXfGAEVDIUVnXb1XZtbz4/2LnT2P06/a+hujjJsf+WNB5itNQFB?= =?us-ascii?Q?4+S6TzbZZ4aOuBtgMSDTPXVYoLuwb8rEmGFVlNat+ACpQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;DM3PR12MB0858;5:s4mvMBR3W1CJxswZ5TZ4R9n1OJfwzJ7MhxuUfBeXoNYMdO+HoJQtiJ1PQ7f3XOkawfs56QUosvkQ8/ngP8zKfz+niYKiBvB79F4GXweNxC806wDGBlee9CpZ+g9Y6hEMHynWgrsoFhMlLxI+dtUzVw==;24:guLrnjgwzNeLS4OQAzgdKI6lfdEyaZAXAEApYmF9cz4T4EqRuaQSgveKFH6ppMl0USbeggpRSI4zd/fDSlg/TXq2AVBAB5WMxrGTG31DAp4=;20:1J29eznmoxVtEi73eZVrBkzknCeBcXEA+Si68YJC/rBX2LkIGFQqFpz8oBO6+vdxo0JBjljceKT8pmXRFN58M9RLSg68hZv+WbDJI8M+ZAOICEEAhL2svVD8JHqrHuMG0GxOliYIYUdjEF6fhtQkCSNaSDfGsA8eE/mvOqmJGjyQXs+pdxEdUK8O4nYlCCXus7dJFZ34UUpTtUnQM7vi0nsF+ZSfixb6phmnINUrLBRIWFPv2HcUJkiMfUBFhx2/ SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jan 2016 15:24:15.2508 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.221];Helo=[atltwp01.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3PR12MB0858 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jan 21, 2016 at 04:10:40PM +0100, Peter Zijlstra wrote: > On Thu, Jan 21, 2016 at 10:42:35PM +0800, Huang Rui wrote: > > > > @@ -164,14 +171,14 @@ static int pmu_event_add(struct perf_event *event, int mode) > > > > struct hw_perf_event *hwc = &event->hw; > > > > unsigned long flags; > > > > > > > > - spin_lock_irqsave(&pmu->lock, flags); > > > > + raw_spin_lock_irqsave(&pmu->lock, flags); > > > > > > > > hwc->state = PERF_HES_UPTODATE | PERF_HES_STOPPED; > > > > > > > > if (mode & PERF_EF_START) > > > > __pmu_event_start(pmu, event); > > > > > > > > - spin_unlock_irqrestore(&pmu->lock, flags); > > > > + raw_spin_unlock_irqrestore(&pmu->lock, flags); > > > > > > > > return 0; > > > > } > > > > > > So for these 4 {start,stop,add,del} you can drop the irqsave/irqrestore > > > thing as its guaranteed that IRQs will be disabled. > > > > > > > OK, I will remove the lock. > > No, the lock seems needed, as the list is global. Just the > irqsave/irqrestore part is superfluous. > But actually, the lock is only used at {start,stop,add,del}. If we drop irqsave/irqrestore on these 4 things, there won't be any use cases. Thanks, Rui