Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753491AbdLMPUU (ORCPT ); Wed, 13 Dec 2017 10:20:20 -0500 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:40920 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753260AbdLMPTq (ORCPT ); Wed, 13 Dec 2017 10:19:46 -0500 From: Roman Gushchin To: CC: , , , , , , , Quentin Monnet , David Ahern Subject: [PATCH v4 net-next 2/4] libbpf: prefer global symbols as bpf program name source Date: Wed, 13 Dec 2017 15:18:52 +0000 Message-ID: <20171213151854.21960-3-guro@fb.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20171213151854.21960-1-guro@fb.com> References: <20171213151854.21960-1-guro@fb.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [2620:10d:c092:180::1:f726] X-ClientProxiedBy: DB6PR07CA0138.eurprd07.prod.outlook.com (2603:10a6:6:16::31) To BL2PR15MB1075.namprd15.prod.outlook.com (2603:10b6:201:17::9) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: faa6f213-4888-4d0b-5948-08d5423ce1f7 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307);SRVR:BL2PR15MB1075; X-Microsoft-Exchange-Diagnostics: 1;BL2PR15MB1075;3:l/NC2k7TtYJ5sNrYjMZvE05V+4l83x7027NTXG/6ajl6VVb6igI0QNbPZI+jS1NXI+qPGSrFKyBiknuA64EVHYfhc8+I5XZ6Di9p5R3qKI998X2WOBySnPGmfmPjsoIagQFV/ai2f1sNofkDeuVTYbEKEVyfG+ukgzjgecRSxgkDoH8nFDfGH0ImuFpXTdVNx0T8iwmFBthEvC20oemg18UYDLt9HilVhTdQLPtdaAnm68bWiTXbZH51ZiB1VrEt;25:oKG+U2gyLvD54xSVIJfZCJeaFQc3HRwBNghF7uXF/bQ8tCoarpTE9rufgjGS3YFXjl9wW0Mu4p7nqUv1y5/XcPhx+EFDlDM3oq+OV/Rf583Ru5Ka407Xm3CWL3XdATrxcpj0Y4MWwhSuf8LJVGhZuLGRr4savDnk1qhM3zwCSEP0KzewazmzJNSktbcTfAaHIB0uvW4OfO5vmcco/mM7JG+THYUzUnx1cwf62Oa8qjP9tH4dyfeEWvwypY9BKXDDalLAaXXg7Fz3YqjRnHDc3k+lDEaUOladAtsD460BERYV1wAS9MGMUi3EObsRZ35k5+zokfEr1fRldjUS3SeIYQ==;31:shQz59Kcy68pcGy2hgihcLZ6nlXxhTUeSsAFm4v/FXBlDaPg6pU0ho1J9GGml3MNFg+Y8yjLfG/xigzlSxazTdRcYwwR4cEMIiIcx6/2XBV6PWnYcyPSZvz1QyVg3Dq0NhBaFiMQKvxXxKUZsR4Ryw0ckR0oUx8M4CBiSGrMKgCd2S+mdmFKuo/l+r2Wqpx+Mu59YgILNkgC9yetuUZlfiwC7MGKpYo8BXG+o4CCUyI= X-MS-TrafficTypeDiagnostic: BL2PR15MB1075: X-Microsoft-Exchange-Diagnostics: 1;BL2PR15MB1075;20:WYC4GIfsgrHpZFgvZyMnEY5Gfl8Tf9mjFcKJUldegJb2NRrju2sXwNJZ1RYyv1wvFf3tSXfBA2pmZvRfWkOFlGQbizhGnfiIFLTCkIzvqwcYblyhaKkOu5m6HmBBOAke1jK8GF0v4hOaaiSz5GoUXZVO5ygwMnhwurLPJu4okOSmw4IKUIy916IMMBOx1tSGfCBmVFGa/xfUOG/G7n/M/zXuXC4QWL5er2Uk605HFeErOfevJf/708SWBG7Ji3TlatkvzFC6GcrMXYWaLk1ZDxQCgGLbUbAjPLwu+JCLimRnyX8DR0d4yK5ms/tG2YUSeqqOei2nbXbl8y6xi26DCi4r9vOi8f08uC+Y6WmTdgN9CLS3HR3KZYy+Xmshqg7MOPlb1uyydLTL4Fx8Hms7a9nkyOkWUZiEP2kwfmrTng9lR5MAXDM3/OeZvaxbaEVIkmdGHXBFB1ZoniyAB7F9gT+gW8Pln3DqRNJP8cvIGElwxUXKGjv5oR2sTJV0gTWL;4:4f7J3oezG8oQxrOP0grZ6zyGz3I8nz9HPVphhkYeIIb2H6NdwuTTU1pGc4f8PKNFjGt0h2DOud82a1rtY+jM+KXT2meG2Mqb8GvoknFqWRfEyVU0wge/Yg1dhSsYHR0eFram08x3eqYEHeB/nP+32NQl9fp4mdkE/zHGgW92UbVfVPuxCB5kpBO/xJPB3ZPYxXYrCjLLQmWYz3Hl7ptX3dRkLAJWqKUufjUNsB/I5s1RNN+B5nM4NpWm8/yoZz+1GzJwUV36zYrC99ZiAbduSqrt/7nqc0IXc/FbkEK7ErdSLCIVyVgPHW5AazWUAHL6 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(67672495146484); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(5005006)(8121501046)(3002001)(10201501046)(3231023)(11241501184)(93006095)(93001095)(6041248)(20161123564025)(20161123555025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123562025)(6072148)(201708071742011);SRVR:BL2PR15MB1075;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:BL2PR15MB1075; X-Forefront-PRVS: 052017CAF1 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(346002)(39860400002)(376002)(366004)(199004)(189003)(48376002)(7736002)(52116002)(6512007)(6116002)(1076002)(305945005)(5660300001)(53936002)(52396003)(68736007)(39060400002)(50226002)(4326008)(51416003)(8936002)(386003)(6506007)(8676002)(25786009)(81156014)(575784001)(478600001)(2950100002)(6916009)(2351001)(2361001)(316002)(59450400001)(81166006)(86362001)(6666003)(50466002)(54906003)(16586007)(69596002)(47776003)(97736004)(36756003)(76176011)(106356001)(6486002)(2906002)(53416004)(105586002)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:BL2PR15MB1075;H:castle.thefacebook.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BL2PR15MB1075;23:8TwuvqF9voUhJm+vsnj6i138+ZugrqxCcj5O7Pmek?= =?us-ascii?Q?ekmCeysjJHwI5EjCR+toTdckW0iz2KPUx7c8NfdW54D9COip7gexizH2Lxge?= =?us-ascii?Q?Ck4+wM3Kjgxxbw6LuT8J5Shw3RYxtX5EXsFRIUcxS4lw/HKkm3lAgYJLcGzB?= =?us-ascii?Q?v8kld9Xcz725gKzxUhkoP38X0t3F8mop8Kbo+S3cyHndDoYpEaT2KrzpneZ1?= =?us-ascii?Q?f1AohDZt9BfdzYG93dRaOJYJzhzUglFiOVQO2K2ew/bkiMApIlWS4dnOydnL?= =?us-ascii?Q?4qRL63ScWiM1jmXsvVlgVA1KsAfsh53LlIThFzov4sMxY8+xuLq3JabQ7Gkz?= =?us-ascii?Q?Om/UjjOVNoIhPTWj9PkHpuxmUP6D6s42KrAG3ZDUzi/zWRYiBQujqxzf2fi0?= =?us-ascii?Q?s0vLjzbQXWNGNXTyJzp97PDxQpRTFq5coCNI4DH4NH9ZLYxB8RBT81XV2pg0?= =?us-ascii?Q?GrXvQBxQoKZkb1n04zZMgOl3ageOIJlZLMzDh94xBkny9Gb+xpVh5K58FzOP?= =?us-ascii?Q?907Uc7ENoVbyK8X33v9XBwZpU9DBcQe27/GhZgdVror6rwB9B6wT1JPnLDJu?= =?us-ascii?Q?Oc/8GqaZ0u76ydQva4lnTpYIzrUAdt1SHUTUHw+TUfkVgZ9SmJA+BAT004qD?= =?us-ascii?Q?+Tr+cBbN1RwBv6Th8nCxKmd5+GakviFWg1SeCafVmCpEan6KvjbIp825hehr?= =?us-ascii?Q?JBADtK4qxHqEwy3c7SsHRgQR0hZmxnfohRB+mB2Mmdt8u7S6utDjVh60Qror?= =?us-ascii?Q?tpsHiDRslrNdrDtlnIGgDOZ3uttQ18GDWPCLSjfNs8aL3P918ZH2d2bTt5W+?= =?us-ascii?Q?OAd8tqAqitYGvIqCDk4RQbuTNor7mxX4lC+k1KbQbLXZz4322LCKN4o9ir72?= =?us-ascii?Q?61nTZ57bKbb+BZMj1fx+quni6IXYLNrOGktj5/uBFk/0iBnhxkDKwHmpAPAM?= =?us-ascii?Q?KVIeEEVQaYvliQ1hU3+53egwsKYlKmLYBFuTnPbt3zXxuRudMPnirqLHQcDx?= =?us-ascii?Q?XhXdY37gQmKi5+jR/w4th/UAro+VS8hjwZD47YFQMB4UahAroPLi8DERN5S3?= =?us-ascii?Q?XYnSkP93TpVugIe1TtDcUnagkb0bc+F8g7YY8meAP5ioMjXbQQFHIwxEdw1b?= =?us-ascii?Q?lC3rqAxfiNxd25TknOpmjkJIKN20vYLXzT5zk2WkBgGRdjQo/6gNfpSzv91N?= =?us-ascii?Q?FB4a9I02eu8JHaXCLrYSEENFraReXUi8R87?= X-Microsoft-Exchange-Diagnostics: 1;BL2PR15MB1075;6:ojsJbjH9xzlcZYIDaf7EPsP3rFbwYspSPgnU3IqfRRXl3MgzBWAoo6c2e6x4QkuNo//qsqBsWfH6+SwgahSwwbeQwqc9p1tdl10wV/7ckgxPPZ2HaCytGmRnYbu0xlcA2Uu0p4im0pL3J/kS5zwpbMRzef08kZsmwV/J62qnx7/NgqzaROljclVjt/gujF077/mk+PKSU+eyFGuMRdW9oZl0fklVcwTs3IsSVL856Lhs7i/bvTzgOgCREWWGov9RUKiRkOivwPNXgKkuEi4oqeurBobTHOtBglJx9svH7HMt8qMzNYzxOCavEldkhYDVl+2Vrw7JDpUfNeoysOfPHztxEbWeQK6GF0cHLOyTg3s=;5:4bMi1iNienO1uUL6hOeQ9poMuFWppMyLCHcOpir+EtaEEvRUdTz+Oa6VkRLF1IPPhOLLJyVWuc8fZSPbRdeBl20j6YDEzZVghE/TXxsQLT7DqQqU4xHTfNsoYARhBBQjOq6ZiGTr03fPi9A0w5cIVtoCmA/tv+Tt40R9S1iCszk=;24:giehhL+MhCUNe69S8Hz6o3GVE9uw4SAy/FCkPfUdeYV7L0BPMlfnftniiTox739Wpv72MDVx7GVFI1IFQz1ybz1GjnmoDjABMmxVHQzTLNk=;7:W7XdZIN1wYP1nwr34QTm5kWffeeVRYmPwDF010R3nC/I1u22lpGW8Cuc5FQxnRoJCES5dvErc7dszpTUlKsAp40q0UJ7PtPfzlKYlcx5MIz+/1fbWxhcWjxUny44U2/NrLG7uW2B2dcIn8BxpPM9M5xU+fYWkerdAexi0+B4fcijYFwrLxMqAzHUfFgyDv61FtdpM5/ByVyP8LS/+aQ/79QtOgFbsppu+F6QQkIVkHxIJgbXTxPAJYoojeLl8D8F SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BL2PR15MB1075;20:cU1hyS812LUkiR3EjKEXOM6kuZHH3+1GM7VvlJ/Ugqo7hl3EiH7kp5yU0/pUr8AYTveJHyqDpe4VEN3koPdmSucUVZz5r1TKp5cQOlKa8udHtOTsmxbpVdl5EvNiRI/xz5G0dsuuvQsA09Vwa8KIv0KaWtObhtKZ+4WMZ+1aOX4= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2017 15:19:18.3097 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: faa6f213-4888-4d0b-5948-08d5423ce1f7 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR15MB1075 X-OriginatorOrg: fb.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-12-13_07:,, signatures=0 X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1361 Lines: 44 Libbpf picks the name of the first symbol in the corresponding elf section to use as a program name. But without taking symbol's scope into account it may end's up with some local label as a program name. E.g.: $ bpftool prog 1: type 15 name LBB0_10 tag 0390a5136ba23f5c loaded_at Dec 07/17:22 uid 0 xlated 456B not jited memlock 4096B Fix this by preferring global symbols as program name. For instance: $ bpftool prog 1: type 15 name bpf_prog1 tag 0390a5136ba23f5c loaded_at Dec 07/17:26 uid 0 xlated 456B not jited memlock 4096B Signed-off-by: Roman Gushchin Cc: Alexei Starovoitov Cc: Daniel Borkmann Cc: Jakub Kicinski Cc: Martin KaFai Lau Cc: Quentin Monnet Cc: David Ahern --- tools/lib/bpf/libbpf.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c index 205b7822fa0a..65d0d0aff4fa 100644 --- a/tools/lib/bpf/libbpf.c +++ b/tools/lib/bpf/libbpf.c @@ -387,6 +387,8 @@ bpf_object__init_prog_names(struct bpf_object *obj) continue; if (sym.st_shndx != prog->idx) continue; + if (GELF_ST_BIND(sym.st_info) != STB_GLOBAL) + continue; name = elf_strptr(obj->efile.elf, obj->efile.strtabidx, -- 2.14.3