From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2997367AbdDZJe7 (ORCPT ); Wed, 26 Apr 2017 05:34:59 -0400 Received: from mail-sn1nam02on0083.outbound.protection.outlook.com ([104.47.36.83]:45312 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2997111AbdDZJ0w (ORCPT ); Wed, 26 Apr 2017 05:26:52 -0400 Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=cavium.com; From: Ganapatrao Kulkarni To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Will.Deacon@arm.com, catalin.marinas@arm.com, mark.rutland@arm.com, acme@kernel.org, alexander.shishkin@linux.intel.com, peterz@infradead.org, mingo@redhat.com, jnair@caviumnetworks.com, gpkulkarni@gmail.com Subject: [PATCH] perf evsel: Fix to perf-stat malloc corruption on arm64 platforms Date: Wed, 26 Apr 2017 14:56:20 +0530 Message-Id: <1493198780-25415-1-git-send-email-ganapatrao.kulkarni@cavium.com> X-Mailer: git-send-email 1.8.1.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BM1PR01CA0098.INDPRD01.PROD.OUTLOOK.COM (10.174.208.14) To BN3PR0701MB1686.namprd07.prod.outlook.com (10.163.39.152) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 50bab8d9-d1eb-4d97-2546-08d48c865d92 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131423075)(201703031133081);SRVR:BN3PR0701MB1686; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0701MB1686;3:Mr4juu2s0hT8o8r+MSghbMJV4YfUSkcn/jvrkTFcOjHkE78qc6httW/9BTnbu8pft6SPjxhyp4gvx1dqOfsEQ6IFFMrdrlewc/h6+n2OLVCom9LahRGx0Jfqu0BNz+sBDYOfsmY+yjj7ylpRgZJI7o0VoMbJ05UtRDph6VtFEEJWxrjuqZu0x/uqhb/OpH1EeQNkpAwaEZ0UM3U3M3/4n4Fi5enf2h4qfGppJbyXJ1NgQFBSq1/Q/1WANx83hkzl6BMghMwIuLNWIeZpgHvPMSwcXqHDqU96BIVPCcfEMeuCI8YG9prdznDAF1FrySIQwAjjIkpGIRvAzwNMb1p/8w==;25:K1+Cwjui8+UWinn5n8lrI4W/omEhKTS/Rxn6pTECi0Bz1SwTby03EkdHaMEXdXxWB/r7l4W9J1os5RMF07ODxnqh1frx+EMqxWc9ZUI/aVKsJLGusuG17t/ZspI/vUhCXYTZ3/FXaUvdU8OkN4vfRKTNishYFnsYqwYmLtCyKusIKtYCRC5dnEkxixNuHBnUJYN3PyTw+YZbUdD6M+pIfREYT5J8vv7bllRAnWWoBUjEkFJxlYR3/XrD84uZMxp7GIA8V4UAtxzCcGvzpIwaZ925e0QZzGifvTOuuZ12wFKipc6ZGu7ZPKReJ+Of9ohVx3cr2DqQlQbpCuRKCvYAZBTxkRp0A8AaMbZIe4ne6cdgqx3jO0UUSk6gm//SuE5GBkz9dVYYrC2+oViLVGFw6gRySXeqmlLnjB0ImbxvpjjdhxjYtEGvvANbC8eFHWPuYzNs3RsiKDBVkJzs4xhq8w== X-Microsoft-Exchange-Diagnostics: 1;BN3PR0701MB1686;31:Qc855NV1xuFG0Mp2IvXXOPvNbAq/AM+R/L9bYc11aHMiOHKzcGvimbRJRxu0vKetbOFyTcR8mJzs2pJQhuc57FGFz9PzO0x7oh+mDQY4WnYq9oa2i7ZDHpd/K8fmdU1D5H6kC/ssEyKFtl+flrlpVf6ssOR8cjTaMCxtgAYpeFlQYol+Mq/VK7mRWIi6H6P0nzVkNPSKCUAM7O0PSaBViMmEUD8J3gmlZq1P4Lex6fF2Z9TgedwIMkFeOOVnIigq;20:B6Hl2Xj1r+FwFU3ZznitJa1T5o4o1Ywj27/33+HI7GEsjoGq0puOdtAl5NEbHFqu/GsRSwzSHBVooNQPH6aC1xRMZ3I6fWkECrwUhwsj+PYxsOdNsaYXhCqZzA80t9lZG0DsftDaLSZzd/yQ+bHR3HOIxf3HhcAvqrH9TfCfoPLz0ip21wKNR1JylDAqop5TX/h+vMz91MgcmMqXXrFXigJWuEdf+jfN6cljK/bZVnEgPT2XDQDwU8gz4sBoJsxFAwaQxgbGPWi2jazcc//hDft5H2aEBN+SNcO3WQYhiNlYyutEMamrrwSTy1q07YXysCZRiPwFIu2y1NQ6N7xU6jlchQHC+csAR+8l3eMMxth5lMwErZdEq4TptZpwwB1m9vrnsrGIPSEuqDoJeNRqus8Dk1WK4SXTjco9hRziURDzABPghGwUxquojpOnli2aNGQtFsDdANR2kCZo4awr43VpJBz2pxY523PHhmkqLmgS+3MnQ+WhTN4o1klIElPH X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(6041248)(20161123555025)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123562025)(6072148);SRVR:BN3PR0701MB1686;BCL:0;PCL:0;RULEID:;SRVR:BN3PR0701MB1686; X-Microsoft-Exchange-Diagnostics: 1;BN3PR0701MB1686;4:GBfwnD38SsvlhOKk2eoXcS4oJ/jQicCHiDMml4vDxfEhQ6jaTgkHE5pYXVUbvcpToYvbXW9aYL7Fj5s/eIRXqRsmHeUd0l+97le2SdU9b6RPviE4Oz8SWJmAtm9KLvllwuxytK2Diely6SQLtgYP48z/zN7BnlsNSEDhGTNRxOO0qT1gJ+F2LazlR44HrQdRJpxXdmYXE5uy5EpqaJVXIQf5gWF2aM76JRVoSq+s1bgmw8uypETribNzzJDhALnGoJm8BjBuzzf+jB/BhEVF7uwDHHtsozfzPZPLD/4w0Lcxyi3bBHwJu3aa4MTpcjvOpYnA7U6g8We83N4RFvD49AjA5xEeT4+0w6E+a8nBpoYwrWyIm/k7sqtHBzWYQ2SZNAVIIPq3HjYKaR4ag64mVKeXp7StkdZC1jei+4aZfJHZNBd6y788t3GnSkmxC6g6F43SkxPvaZxuFKOx2nVt23BUYBDBH0TrhE4uJWv3Ho9lDsX+hADhmCxli8DKe459QX2SYYWAkCCe64q85ESW28nncFTWemj3g3lJICUmd47e0kuK0RDEY45Nfd26DKzfmYDWFpH2UVxc2kIkVgvXptyuDQlf858cfvFElvRsGJAX3i5gGSKBTmnCEuQBWLvigyZXuJxylVt9UTzuVWeeBPCMAx726/Ebq84kUTCoeHLFBGbaFB+Uk1CY+Xz1HTBKn+ksaRUQfQZpMTzhit8KY/VzVaCyCdTEqdPSUIbxE8o4lloE8sFdPeFeymYSt2KXl9C18Jf9pUS1fR6Awjkxh8eyisvPJPORHjF+so1Axrg= X-Forefront-PRVS: 0289B6431E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(39840400002)(39850400002)(39450400003)(39410400002)(39400400002)(86362001)(36756003)(48376002)(50466002)(5009440100003)(6512007)(4720700003)(5660300001)(7416002)(6116002)(3846002)(6486002)(6506006)(42186005)(53416004)(5003940100001)(6666003)(50226002)(25786009)(38730400002)(110136004)(305945005)(7736002)(33646002)(50986999)(81166006)(8676002)(4326008)(66066001)(47776003)(189998001)(2906002)(53936002);DIR:OUT;SFP:1101;SCL:1;SRVR:BN3PR0701MB1686;H:mypc.caveonetworks.com;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BN3PR0701MB1686;23:7Rv55X6Rr6XDF939J6FZlwXzloVLAPM+PdBhSaq?= =?us-ascii?Q?YU8gTdVexdisuw6vh84NRHKTMewga7p4Yx5F6iUTgc9ku3j8/FruYCbozPZP?= =?us-ascii?Q?yeLBWf/VoERXRp5JmbiHllcgJ1EZ+r5JQB/P0lgR/tSNLH4Na41qyIumVwwc?= =?us-ascii?Q?eOQepNmKNBHRtB6IUdV7YEGMuOtbH524UtLJWjNsbfsDIHWu6O5a+EmnEVrB?= =?us-ascii?Q?/x32R2EIo140JnwZmtlkuVFpqT5PLlAggMIGs1rbfBmsXYeYXDLf3R3bO6V8?= =?us-ascii?Q?aFLyxWH6ruJrFHk2TlEmFIlPTU+LmoJsPe8QZw/UlL7sg9j9e7c5NPW6LIGu?= =?us-ascii?Q?HMF0Om9OHQ7b2O3rmRvIh1dzT5TWx1vKy0KP2GZ8tmalaAYdjn8+slHUu9MT?= =?us-ascii?Q?KlnwEZzYTzBjOE1fYls1gXTJB2EkSyltJWSE919QZxqizuaN7Yt6ZRLY+r3G?= =?us-ascii?Q?mcS/1tiBQqF6E5sl98woho0eEEgntHi9eIuDL6vgGq79KpqPXRVseQ1YBzwn?= =?us-ascii?Q?CqWkz2FTdaufu9MGtyIftIssPmf8v/cwlMuFB7Hzpqfnr9mC5+Ofla0YzOrf?= =?us-ascii?Q?+IuLUxDdlNoM772UwO2zW+sf/ku/7A8CJX1rxthMZleZK4W/WRYcku4stkkr?= =?us-ascii?Q?0ZNCStUJoTqg38y1VMuPF2QOoOkf9b72GAHDKU/KiDvKx+ai1VRpvATqxnC9?= =?us-ascii?Q?SzUoDRAgxaVqcUkVz4emSX8oinfZAi/MQqOmZo9bSp9YKhPcyQ8uPMYZR9P9?= =?us-ascii?Q?X3ew1iEZkfRaacIIeqiCqaKnpJSNc3DxcTBhneEptxPWnVWKgQ+r6PZ1u3yG?= =?us-ascii?Q?hFCl0n8OUDyRj7SY7NQCY2dFeNhWojybE/W5n3D4oXOVX/vLDsB7hok5nu0u?= =?us-ascii?Q?LbfBk8Z9aMpormLLTekJCd46+l46Z8n4yXu6EZ2DC+Dyl7LEYs516yBYac7q?= =?us-ascii?Q?f6tcr9yn1oODEFp32h6Kw1JYGDdr0gRIKQWWOJzQA0OVi0lYkStCl0LT+fn7?= =?us-ascii?Q?jph5E7HjTr1Su8m93+601ZMrAJRqungVbhmUqYHL1CDY/Sg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN3PR0701MB1686;6:uMNiZyjzXx6eToDbmRncJB0UNy1Amt1EtHeCZITInZEFBpemFyLiFER1UKBAm8mG83PbAnXirl32P9x0JdCwTsQMHZJ8PEAXkPVGWnL/FjdamZ84WWKlHLBo2iDR/6nWtVZ01ukcFfU917uQhrcrD4423pT9QQQOIRfEQm51xMgEgP5FwU4rr/WS7uc74k7ZKZ0LNFlfkOinrpHkiYjwOan8GzwMEMKKx2PWLrk6TwHuiZpXrUVFlYHCfusIO4KeYWidx9Wv6rN7d3VzoDcOjOvr6aG4ydIctWDi6TtcTD1k5IrBgfbcCWfwoMHzz9eDzcT8cRMXZPSuI0ClZH00uoXpRYZ7P8cJk3soM5/HCmFKM+srBjwWyepCU45u+Kh2Znv7jXdJ0g+C6193BJPQVPW/xLhnrDAoK2ppW+XQG4XIVJoch4qUUakTtfv5M0E35oe+RNCLVgSBgqRue8Ryo7OPAKOesaI6blvSmdlO14585FfYYsq0bYTjCpcEpDu8Qzdu+bVGFToGpoZVU8ITBQ==;5:5yYD83okzCvMXFeDu6XSxmztWf3eeIoz67Es7+TxDNV3MfnrD9T68/poSiAddaCtBZ//7OQxRW9y+nFyxrCllxLihlbpx7wGhxf9gpcWKiJQPF8+7LAYzPf3xwj3LL4G5Oaj5ybIHFFGPz96cwh1AA==;24:QSFkVoLQq8lnSQaoM2MuP7er7Lh7MeuiMdWhvDNZm+t81WBfLoQDOKYxZclQpSISAe8f1tLa+RcwEHSj8uvr/zDwvU1uKSC0HfmmOaX8c9U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN3PR0701MB1686;7:7WtaVAsz/5jVCLwWrlJssrBIWuwOk9nhKtmUjTsEfevNd/vlA9G3c2bcLvD28HI3LMs7EuBmBKjj8Xm0PS9Skwe5N7VfUzUr/b8O9zmS8Rj8vif0mq9nomwPdEW+YLyYQWK/GhYWJDMHiILLRbd/w3jwyOkqzG+mlnaXgdXlI7k9AfBHugLFwPWxeb9IpenQncL6kdlXA3xfDvviFpEDgl4k3DXsVIPzavjZ9WanlvGh3dGoPnkxTnB3SU7PIH1k9YXS1GpRy64EKDwbp8xTwaUitZobC1wj7vQk/0Ctu/5J15egxFfTRTsc2XTBxzTugTsEk72lfEmI3gBKbSNSTw== X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2017 09:26:45.9915 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1686 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In some cases, ncpus used for perf_evsel__alloc_fd and for perf_evsel__close are not the same, this is causing memory overwrite/corruption. Fixing issue by using same ncpus in perf_evsel__alloc_fd. This bug is more evident on arm64 platforms, which uses cpu_map(cpus) for PMU core devices. Signed-off-by: Ganapatrao Kulkarni --- tools/perf/util/evsel.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index ac59710..0dc94d7 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -1489,7 +1489,9 @@ int perf_evsel__open(struct perf_evsel *evsel, struct cpu_map *cpus, nthreads = threads->nr; if (evsel->fd == NULL && - perf_evsel__alloc_fd(evsel, cpus->nr, nthreads) < 0) + perf_evsel__alloc_fd(evsel, + evsel->cpus ? evsel->cpus->nr : cpus->nr, + nthreads) < 0) return -ENOMEM; if (evsel->cgrp) { -- 1.8.1.4