From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934109AbbI1PQ7 (ORCPT ); Mon, 28 Sep 2015 11:16:59 -0400 Received: from mail-by2on0103.outbound.protection.outlook.com ([207.46.100.103]:5184 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933902AbbI1PQ4 (ORCPT ); Mon, 28 Sep 2015 11:16:56 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=scottwood@freescale.com; Message-ID: <1443453406.32298.171.camel@freescale.com> Subject: Re: [PATCH v8 1/4] perf,kvm/{x86,s390}: Remove dependency on uapi/kvm_perf.h From: Scott Wood To: David Ahern CC: Alexander Yarygin , Hemant Kumar , , , , , , , , , Christian Borntraeger , linux-s390 Date: Mon, 28 Sep 2015 10:16:46 -0500 In-Reply-To: <56094F5D.9090805@gmail.com> References: <1443161838-31462-1-git-send-email-hemant@linux.vnet.ibm.com> <87bncm7l6z.fsf@linux.vnet.ibm.com> <56094F5D.9090805@gmail.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.16.0-fta1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Originating-IP: [2601:448:8100:f9f:a402:9733:f0f:2d4] X-ClientProxiedBy: CY1PR12CA0014.namprd12.prod.outlook.com (25.160.137.24) To CY1PR03MB1487.namprd03.prod.outlook.com (25.163.17.17) X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1487;2:VXFnqS6cR48OxcyAT1fb95I3tmydHyPuSC7YCLD5cl4u0MPpLVa9GtF/T7lyYo3eHGd16IHHcj1fKooMKyBTTV9MHFU215r4lv70+0zTWOrj2YLxU2i5/iidQRi2UeHkt6VfoCUaV4a6WC0kivtmhQhrP+Cs1p/qdcsCvzvRgfY=;3:Nn+i7kBrkZ4KQLCtrWSYZlPn7WtwgRDMBG+TAi2hfM2K+G35sugK9O7JR3NvpU+LlZqyNiSZyo4E1nqX1aStqmEv6gEtdulyatFz/cfeIwN+M9j896BfKrT6mtgbnOtStKJto3sXviR6UJzs90PCLA==;25:zcmmm4aA251JHxr1L8lAVpThU9kxW2PNCRTpnlhcNEcGw7yuzjvxKyRpGb9C+vOwlh+6SFxqkOPCpysrKF4V4S//VIOSoVDi/1p8q1kQoSAv9KUsBGLsKMlMJlED8lyYydT1siTZV/voa2iwRqEsBXECbTSKqda50RCJ1twiY43g1pSKqi4Xg1IODTEhpmN62pO3FxyEHzDUYs6Z2VUvRjq2bCLFlyECavpJgFeB/uapF6WD0BD/ng3+7lZa7q3f+jfTyjVueT7jjRpNaaVs5w== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1487; X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1487;20:xmfDSC1671AVYBJI3o4in9WY98nqzzaF5JIj0yASt543u3V1dMRvzTkU6bhX4YtiUHkU28cMmTd8lqYczGP2W+oGY+OSxraY13VLSH0yaLtfg+NYu/FbjyI7cNJQqGek+5bLZMO/8AY/fdLH5HlTTExOyKFgU/jAF02QtbO6dnbYo858Tt9AZ3DFGg2csf5A8zykRay9mNdcL8BGkXAw/RkuB6PxxN9VyF+jv7/o+ViRGXk96Roc91VxG6NR2KxGTyJEyhJrupQnTldn6iMZBCeq8ANJTPpTTinUh5jY3AEweTH0ZeNSv11O6rHq11nRykpweTj3HwVmzKHTYLonrgQXSl5rM0svKj1ruMzsnRaeXZdcMY9imtEmxJshycAEfEt1j4/mxZkEBNv1xxcofgPwACwsjmBCQaVGKKbLGCV96hafqR/aa7QgIc7Y2KJRjQ5RD7PlUPhOJC2dpTO++MqvIeBefqshbN08qQ2C3bTfbYpgp3h9X39T1aeWvdc4;4:U5Mkc45zrwcSqSLCIOT9pGuFxfXK+NwNqLW2q+l8TFaZMfjKnb62ZFoFaqnz59QAmLxXYevY6IqqnittAXcSH2pNYJbbbD6dU69glNuj1SWnCOBUozf5drGpK20d7Owbsvu0o/VsozimBIzayrxgHX+MjUIQU++6aXI+t6Lw/FdqY1da91UnZG1BMxwhARdtFP7YK3f6+0SmPvS6dgX5t0fXFC3fMxqM4sGQ1C30FCu2+fy+EKR6/FNYhVGcE1xkF4cOHRPGhKFjXm5SVYxqP+gYKhVZ/65yu1WCn0sniubc+yBG3BD5y9U3b3pKZo2mZJTlp4TCc9X0QqTRHvYfRqd7gD01wfjkZP0vo6uvbzE= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001);SRVR:CY1PR03MB1487;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1487; X-Forefront-PRVS: 0713BC207F X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(479174004)(24454002)(199003)(377454003)(377424004)(189002)(92566002)(1411001)(2950100001)(50226001)(42186005)(110136002)(5001960100002)(106356001)(64706001)(101416001)(76176999)(87976001)(105586002)(5007970100001)(50986999)(33646002)(103116003)(40100003)(36756003)(23676002)(50466002)(189998001)(47776003)(46102003)(5001860100001)(68736005)(5004730100002)(5820100001)(86362001)(5001830100001)(77096005)(97736004)(81156007)(62966003)(122386002)(4001540100001)(77156002)(99106002)(142933001)(3826002)(5001840100002);DIR:OUT;SFP:1102;SCL:1;SRVR:CY1PR03MB1487;H:[IPv6:2601:448:8100:f9f:a402:9733:f0f:2d4];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjAzTUIxNDg3OzIzOmFmMjhPdUpLNkI2VVoyRENnTWJNU2lBTGVk?= =?utf-8?B?MG9ONzZWM09QMm9iSUtzZ3JzWDNJMDZ5OWdsc2M3M2pqSmVSMC81V2dUMUVN?= =?utf-8?B?YVZiSjFPVWlRMkptOE1ZRDNnNDFiaFdUNmc1T1dUaFFubUZjbmUvSGlKYWhW?= =?utf-8?B?a3RLS0lPaW1ORnVxR1NXMmUyYmZwRGl4Zk5NU0ZmbWJ2Rjl2ZWlKT255MEVC?= =?utf-8?B?ZEdnaTNwSW8wWEFyaVRaU2d4V0prc2xBNXZ0dG92bkxGbmFVWTlocmZob3k1?= =?utf-8?B?UjFJMUdSeXEvN1kxc1VJRWd1M2cwV0dNalpBelpYdVpCZ3YxcS84QXFqejBy?= =?utf-8?B?NUlNYkd1eXJwVzVNWHdDYlI4QklWT0tZRU01SlYxMkJLeUVCbWgvM3JEeGlE?= =?utf-8?B?eEJ2MGVGa1JYNi9pdmJVN0ZUQ2V0NVVwWVpiSlhRdTR3STdRL0YzUnpiM0Qr?= =?utf-8?B?N2t0b01UYU54RXJRdzBBVVV4MW52cm9RN1BVUGNxUlpCNnNKZFRDNFYzbkhz?= =?utf-8?B?V1hONDI1N2hKWmZKNmZuU2VCTnV3b3diV3QxeUR0eUtBczN0VjZrUGgvTC80?= =?utf-8?B?K1RjSnBtblo2V0JtZ1NvL2JiMTNLeGxZSXRvY2EzTGVvWlFXWGY3eC95cktz?= =?utf-8?B?d1ZldTl4VlJPU1BtLzFSWE1tZ1Z3VlJEZDV0TlIwN3hsVGZkT2RBcUtXQmR5?= =?utf-8?B?ZWM1WENaWk85Yllxald6NGordHNQQndac09ISHBhMmdJZm1ZL2Q0Y2ZGOC90?= =?utf-8?B?dnBGZktMTlFLY3JxZWw1MU5tRitBRjlKcTA3S0lnSkd3clY1Q3NweXVuUjFo?= =?utf-8?B?b2lkYjdTU0NSY0lxSGp2Qjh1emN2bUNvR29Ha0tIb3FoU0ZqTHhzQmlNVU5N?= =?utf-8?B?U282OHlpRmVxZmxBa3pTNUdsWmUzVnpJZ3NlQkVZRDZaTjlDQlRDM0x0Um4w?= =?utf-8?B?QTQ0bndVajI4NEhMdmJscjVoanhVMUFicDdZZHBSTWVJZ1JYQ1g2cU9SVmRo?= =?utf-8?B?VVp5WUFVVkoyU0Q2UkpoRDJGTXhyRjRhSTRHRit0dkUvMmVMMWFwK3FWS3ZQ?= =?utf-8?B?NzVKS1BWS2VWRk5jc3hGaDdhaG5MVzZQcE5HbGhaeURhNE1TVHZaZEVZUUdI?= =?utf-8?B?dTNPbXdqUnZzQlpjeGJlWjd2MjdkZmlKTFBIWGNaY0FDdS9qYXBIcm1rVThp?= =?utf-8?B?TXFTd2NUSk9qcWdoRnYzTEZIdThtK2FQWXVxSTRFdk5YaDcyVUN0WnVKdDBU?= =?utf-8?B?d1VMWUNuUlhiT1Vmb0JzUDdqZmVjR05zSEI5eTh5UlhQTXJvZVlhK00xdlQ5?= =?utf-8?B?U3doTDMwNFV1QXVXYmlVdmNXa3RwVUluS0J3ZFl3R3hkS1pXSU96UXZWZWts?= =?utf-8?B?RWg3MlVJNTlvUndLeUdNdll4R3JGdDVnNEJDTndGT3poZGNZbWRxQVN0KzQr?= =?utf-8?B?N05IeGpzTlJLLzFwd3BHZGZxTk9qb2VOKyt1NzN4V0djbTVYN0VybUk1ekU4?= =?utf-8?B?MVcxd242NzdSelFkNVVQSEJRV1VDNXFyRE1OakNXOUJnOVEvZG92c3FrQjNp?= =?utf-8?B?SFQrcHdrUlVFWHhXTVFqd3dRQnJHaWlCLzZEUndkQk43VU1IbUFSUVF6RWNO?= =?utf-8?B?aWRMZHRBNmNqa0NxSVFJTkxMUTZXa1RGZWJJTXV5MlkyZ0IwQ01FTE0rclZJ?= =?utf-8?Q?9DfZHzLvkJewjV/56G5Lmyr2XQpOWGIwjMbLNgu?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1487;5:Ztg+8u1sGAsajSfs5SbwxjsJxllK6dBybzHTIOgSUJNTgDseSeKcXNg5vKIii5Bv2Yhkeg08meDDEa7EWrih4c9LQbDI5R1WjuoMxln3VvDxz/RhqaGq7H+QQUufEXqiFK+92EA6noQwD6PTZnFvdQ==;24:IgpVtMTD9hNZ7C9FH0Vhg36sVm8vXDJ3MyDYiayA4kd33gDsjONhpWsuEhV5VkuyKIAuURU2eKoQKeltX8h8llfRZBfIygxueXy+7cLqjFk=;20:xFYGBVJwEHZMcNycTn2ZpB6pLc0fjxVtJtA+qVqfZJXwRZPmFovNOhk5ZoqHslLCPfOukbi4W6L47uLdsf7rmQ== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2015 15:16:52.8231 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1487 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2015-09-28 at 08:31 -0600, David Ahern wrote: > On 9/28/15 7:00 AM, Alexander Yarygin wrote: > > > diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c > > > index fc1cffb..ef25fcf 100644 > > > --- a/tools/perf/builtin-kvm.c > > > +++ b/tools/perf/builtin-kvm.c > > > @@ -31,20 +31,18 @@ > > > #include > > > > > > #ifdef HAVE_KVM_STAT_SUPPORT > > > -#include > > > #include "util/kvm-stat.h" > > > > > > -void exit_event_get_key(struct perf_evsel *evsel, > > > - struct perf_sample *sample, > > > +void exit_event_get_key(struct perf_evsel *evsel, struct perf_sample > > > *sample, > > > struct event_key *key) > > > { > > > key->info = 0; > > > - key->key = perf_evsel__intval(evsel, sample, KVM_EXIT_REASON); > > > + key->key = perf_evsel__intval(evsel, sample, exit_reason_code); > > > } > > > > > > bool kvm_exit_event(struct perf_evsel *evsel) > > > { > > > - return !strcmp(evsel->name, KVM_EXIT_TRACE); > > > + return !strncmp(evsel->name, kvm_events_tp[1], strlen(evsel->name)); > > > } > > > > Hmm, direct access to kvm_events_tp? Maybe add a getter for this or > > something like extern char *kvm_exit_trace;? > > /* why strncmp? */ > > > > > > > > bool exit_event_begin(struct perf_evsel *evsel, > > > @@ -60,7 +58,7 @@ bool exit_event_begin(struct perf_evsel *evsel, > > > > > > bool kvm_entry_event(struct perf_evsel *evsel) > > > { > > > - return !strcmp(evsel->name, KVM_ENTRY_TRACE); > > > + return !strncmp(evsel->name, kvm_events_tp[0], strlen(evsel->name)); > > > } > > > > > > bool exit_event_end(struct perf_evsel *evsel, > > I agree; don't rely on kvm_events_tp. Define KVM_ENTRY_TRACE and > KVM_EXIT_TRACE like x86. If you mean defining them in uapi, that doesn't work for arches that have multiple subarches that may have different trace events. This patchset doesn't actually implement dynamic support for the subarches, but it avoids adding constants to uapi headers that only apply to one of the subarches. -Scott