From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756710AbdJPSdW (ORCPT ); Mon, 16 Oct 2017 14:33:22 -0400 Received: from mail-co1nam03on0079.outbound.protection.outlook.com ([104.47.40.79]:1920 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754211AbdJPSdS (ORCPT ); Mon, 16 Oct 2017 14:33:18 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Ganapatrao.Kulkarni@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, zhangshaokun@hisilicon.com, Jonathan.Cameron@huawei.com, Robert.Richter@cavium.com, gklkml16@gmail.com Subject: [PATCH v9 5/5] perf utils: add check for valid cpuid in function perf_pmu__find_map Date: Tue, 17 Oct 2017 00:02:22 +0530 Message-Id: <20171016183222.25750-6-ganapatrao.kulkarni@cavium.com> X-Mailer: git-send-email 2.9.4 In-Reply-To: <20171016183222.25750-1-ganapatrao.kulkarni@cavium.com> References: <20171016183222.25750-1-ganapatrao.kulkarni@cavium.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: DM5PR2201CA0043.namprd22.prod.outlook.com (10.174.180.160) To CY1PR07MB2570.namprd07.prod.outlook.com (10.167.16.25) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9b0fbc4c-688c-42c1-e787-08d514c45e2e X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075);SRVR:CY1PR07MB2570; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2570;3:BNlEhUbcNSeixH59Vy1T+zGdGWYjhxmhcUrMVQaEHrFsyFwvnbDAU2XESSYBw/tr84zRal/4REYGIXazoyMvzrf4GgACauB+Eeo7q9w5YXs4ustmunnDsmwiQDDem7a2xo9ozfOYkL4LvblJWLj9TNO92OZDa8t9l4PbDqztLSqQOjt61dyXBj+UmtI8Oja46YUNCLM0D/GdeckOXO0CCvUegFAkwNTqtP+U3fJg7cWdVqqdZTeefEH/GyLqxVxo;25:RilZ1V2S7ZL07xtQu1fwXiMPpryO4UarWCOb8xePos2tC7rRPAwP2GR5I3rlD1ReaPbxVu32RzMLrA0eSUwQTTURh1tKMgmVRlLLaIeO9Hh2gLt4M9YRLtuqPYwltdYvPqm6dgN+vPm6Z+AKAP9BRoJwMozQmWCSekSq8glyYnl3WDLyGi5GWwex4U23PrJbBSgSL0XXflP5GnmC/orCA7Run1gRcphFf41ElxyjyDBmELoDqwcJcwUeMPgCdxZdvHA+JK9Mlky0Jrg+29v3W5gwS+bpeJ5J7VHqeHwAPiB+KuW7/saIQz+IzS357e92BVM3GOBKeIBBIOdhSE30Eg==;31:B90b1nkaPDfI1bQgDrt2Hs9o6voC1uXwYZwhzKj3hjsdaziCP5e2+ozgScKepSIH0vmd5Cs/VzSo++q1HB1Ya/Dds5iU6DnQeUk690eG2rX1To60E2s9HXUlZvuhpN4bAxCBJPYL+4JPXTkBStdVlFJBUGCe87YGtBTUqVAq0ubd7mQnbEzHW139Nr0+GmTrOMqUnDcfSDNS5c1I8YKq246bv/r4ZemyE+ZnmRU+l0o= X-MS-TrafficTypeDiagnostic: CY1PR07MB2570: X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2570;20:hzPKPSw6iW8taIAID58MIl8Y3BWL7qdsc1/ncTPaj0v0odtX7Qx5H4l8RIfZCzLLjXum06qvdmQyr0E57KJSylNw06x+4z43VZ0vUjoMOOmQFzLlLkVg5Abch5TF1qU2wsAXPczm0BAlQruZNt4FT5BgCvG+JtgWL7n6dhkxdOGXaKik4I+P/YWWkFDR50btStVRJjbO1DoJYeZxlBK58NMB0bLsKgRYxI47mvIfzmz18EjTy9HkUbDpG8sYAPRTDBXLcHd+zaxmJZecDPP5vweV+uKa75xwfMOKHfcFxVgqQtRbv4PoA6/V3QEzrqNYx60LDX3cbis9krQr3CDtRrZZFERIZ+ilQxqLfmrsbyX/sUVppzNb5fpbU+Z+vB6AOHzfzqanOZKcOaLs0wNoH+LUoTCmkmCSu/o09Z/ZTuUv/AsCKDHDsr7YGeVZ1p4hYjU/qqM2e/YN9rdK6lQsozbmjhhkm8nbSStHxGI1ln6RDLFUBBL8TdExOX2dBS2s;4:lF4L2qEl7MhnaMg7PjD2OpyvzOU2fvEwtIG2h3jzWpuiCKjAp0bYgDQEB6ABT36ZsDwZElmygKTOdcBykiTfpzaBb0/pakhez4MAKdh1YebeCmuwFCbu31tMf6kfArd3/QNay+CQRTw/DAH0nNUnWWe0m6Mmx5eU9GveW+cs/ZZSNTWpEZzFobDQa/QAxpyagVmDBxL8CkUhlnC6ezBklum+z/zFTdgD/XdCCbbuDw0ynzOoMtwKV0kyZSsuejUA X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123558100)(20161123560025)(20161123564025)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:CY1PR07MB2570;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:CY1PR07MB2570; X-Forefront-PRVS: 0462918D61 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(376002)(346002)(189002)(199003)(5660300001)(575784001)(86362001)(33646002)(7416002)(25786009)(2906002)(36756003)(7736002)(16526018)(305945005)(81156014)(81166006)(316002)(69596002)(48376002)(50466002)(97736004)(16586007)(8676002)(6116002)(53416004)(76176999)(5009440100003)(50226002)(8936002)(101416001)(3846002)(50986999)(1076002)(106356001)(72206003)(105586002)(478600001)(5003940100001)(6512007)(189998001)(39060400002)(6666003)(6506006)(68736007)(2950100002)(53936002)(4326008)(6486002)(47776003)(66066001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR07MB2570;H:mypc.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR07MB2570;23:GdismTbBRdno3uSoaR21G1Es02ZG02JBqd3Nmn1M4?= =?us-ascii?Q?tfjS2Zov6KgDYVi/kj+IlKAcGglO9aV3RKd9NqHCknygTtIqgpUpUPe4yewR?= =?us-ascii?Q?PaBDFuGXBUXY/VUUiVLlV1wdAemg0Alx2nTGKSzgIjL5u1eYk/OE5Xyx+N7k?= =?us-ascii?Q?uRoUjwSa/uI4nVl2EJUiLFEMYFrTmlYc7XNCKSBNUVMbm8NnmqfQbzo1tmYo?= =?us-ascii?Q?I/Kwys2CvS9t8uwuDLiPqB0yek8aRhsd6qb6VDpMXP4SUP7ERzXMPXDo48yI?= =?us-ascii?Q?Dx5RppNiwYDnyemyIsBjFozr+Dl3zATnY+OtVw9zrkegu3NWyUuOkgdzEzBw?= =?us-ascii?Q?OZ4WZOVL+oXfow6NkNd88XFQ7dYJDxI4DHMcNegWqu98dzNkbik3r0WST0/L?= =?us-ascii?Q?9Jd3Kj+xYOB222uFXfMLBrDE25FJRGpbvZczz0SEfgrCS8aIKdwEjVD4nhJL?= =?us-ascii?Q?MtrzzVpKn/qPgbp31pYz5MwmrcFDcCNpY9986NwksJnH+GHkVsNqnwWzFCTz?= =?us-ascii?Q?Bdd2kpEmbKuM+Rv90YN23YtqwvDThNZMuax5hDqfae81kvO24/E2owhJf3Gv?= =?us-ascii?Q?VvNmLLbMac6btyC1SxB5VVO1PPIF3xOwGS00rjCSiuKo6c1AMGlwsm8VAE5A?= =?us-ascii?Q?QmSFF1TbMctN0a0/WRjC1WyMYtjVwJwoum7vwZ+WNjeusWI0evNevc4TB+sR?= =?us-ascii?Q?1HtPSMdk9iZaXCrmgAl3/+gN1hhdiWQAV338tBlsiuEJNC0SMesTwo3d6r0g?= =?us-ascii?Q?9z/Bo0Uklts9kqx1+YoA4LU1zL9JzFP/2M1kbwlm8pgWVvPVxv4s3rlTqcI4?= =?us-ascii?Q?utRe2dtdnQYBF0kp0bwCquF7T4TUkrFPsbk30bE7+qHMud97BnzcvSopADCD?= =?us-ascii?Q?q7UuLWbwH5qTgge8tHQQ7xi4+xeKTtsYZ/ASZQmYwX3rYo8cug8+c/hvAv4T?= =?us-ascii?Q?AbWr+2VCXrOzcXnPvZc57iW6NYZmdFZng2rqhvTL9EfB469QzyR2s3OlRaTd?= =?us-ascii?Q?1jP1FM6OAh+K1WpyVR6vU0K5/DNU3unBynMrycHdgMwb2xm2igd/XRla/7DO?= =?us-ascii?Q?Dljx4WCfsDPOO3OLortt9VLAovCek29pJ6QKQwXL5n1ZP5sgRK2xTDLbflry?= =?us-ascii?Q?TBsNFyOK4L/xmDK/8FvqpZH556q6vP9CzWtcHJATaraC6AI5iEyCaM8lf30R?= =?us-ascii?Q?TwZ10arD11kOjLirOgKwHDe53VFmKWufQfmGEp3x3FcLsPm3t9rZoYrdw=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2570;6:2yhCutzeLH3lxsSg0uZ+CWlDHd0mEtHOc2pWGnYPnDMW6lMMBfTIXvUX35WHlxIpeG89hThGP/MlZhjwDpK+R8XPRWM6V4FFiLNH0kb49Vbg5EB5AjyC2iLDrrFsIKnMUvDHCM9q/m0mohcCXhmjO1T7znKuKau+oiPkQUA8ZZVK9xy6Bv1G7ISCgjZAT8D16Yee1SHvKYbMUigJpRJT99MORMZYeU1gFXgQ84MFarkiPJL+HvnOPVN6a0BDrEZuK/uLMsSmiJZkhGD5VmjsIspA9l+xNpMlif4qiyDiUfzlh3kmOhYQJpBlQfT3GmuQFVZhnmf8+GeJ1Xt96RIoTA==;5:HGjSNyz2f1LxKhp5euFPL20mWfiO38pwWHEF3QtQUZ6Mq+qQW230aJrPzi2gsp6l+Ht08Hx99w1ZmreATcLVOeBDi6fEGL6VGlgQ3wA76ZcWm947jyFw0nxsTMo/zgpZRmeQGAFoKhh4WPw8mUm69HCb6otsiqKyG6uNpSuyvZk=;24:XbwVQ1kt1uaTki+9/tnvqjecqHcDMtnHYGfhUxrVDJvFWm1lLatHIRQDpknvNFHXpFKJbZt4J2kPa8OanM1veaOpTAC/jQs/F6ZIOLdpO8Y=;7:9U+qSNPZtz3JSdTlrDIsAFiVHhzIrLM6yZNE3VBVGGlnACYhgA8ozydS4C+11rigrYNfJ8JlfVHON11XZQcn095n9wm5mIEhSqShC4Kui15d8REmIy0+NSKgbvVFW/EV0Ur9884rJpibyPcoecZ57mar0nwRfn8fXhLJOPAL8V97Gm0GeL3P0WZ2tzJZP4ut52eqVTrNmzD99yBU98zJjUQxnTDFwf+vX1jmJtWf9I8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2017 18:33:12.5164 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2570 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On some platforms(arm/arm64) which uses cpus map to get corresponding cpuid string, cpuid can be NULL for PMUs other than CORE PMUs. Adding check for NULL cpuid in function perf_pmu__find_map to avoid segmentation fault. Signed-off-by: Ganapatrao Kulkarni --- tools/perf/util/pmu.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c index 9110718..569fb0c 100644 --- a/tools/perf/util/pmu.c +++ b/tools/perf/util/pmu.c @@ -567,6 +567,12 @@ struct pmu_events_map *perf_pmu__find_map(struct perf_pmu *pmu) char *cpuid = perf_pmu__getcpuid(pmu); int i; + /* on some platforms which uses cpus map, cpuid can be NULL for + * PMUs other than CORE PMUs. + */ + if (!cpuid) + return NULL; + i = 0; for (;;) { map = &pmu_events_map[i++]; -- 2.9.4 From mboxrd@z Thu Jan 1 00:00:00 1970 From: ganapatrao.kulkarni@cavium.com (Ganapatrao Kulkarni) Date: Tue, 17 Oct 2017 00:02:22 +0530 Subject: [PATCH v9 5/5] perf utils: add check for valid cpuid in function perf_pmu__find_map In-Reply-To: <20171016183222.25750-1-ganapatrao.kulkarni@cavium.com> References: <20171016183222.25750-1-ganapatrao.kulkarni@cavium.com> Message-ID: <20171016183222.25750-6-ganapatrao.kulkarni@cavium.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On some platforms(arm/arm64) which uses cpus map to get corresponding cpuid string, cpuid can be NULL for PMUs other than CORE PMUs. Adding check for NULL cpuid in function perf_pmu__find_map to avoid segmentation fault. Signed-off-by: Ganapatrao Kulkarni --- tools/perf/util/pmu.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c index 9110718..569fb0c 100644 --- a/tools/perf/util/pmu.c +++ b/tools/perf/util/pmu.c @@ -567,6 +567,12 @@ struct pmu_events_map *perf_pmu__find_map(struct perf_pmu *pmu) char *cpuid = perf_pmu__getcpuid(pmu); int i; + /* on some platforms which uses cpus map, cpuid can be NULL for + * PMUs other than CORE PMUs. + */ + if (!cpuid) + return NULL; + i = 0; for (;;) { map = &pmu_events_map[i++]; -- 2.9.4