{"id":2221968,"url":"http://patchwork.ozlabs.org/api/patches/2221968/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260410071225.708005-2-tshah@linux.ibm.com/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/","list_archive_url":"https://lore.kernel.org/linuxppc-dev/","list_archive_url_format":"https://lore.kernel.org/linuxppc-dev/{}/","commit_url_format":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"},"msgid":"<20260410071225.708005-2-tshah@linux.ibm.com>","list_archive_url":"https://lore.kernel.org/linuxppc-dev/20260410071225.708005-2-tshah@linux.ibm.com/","date":"2026-04-10T07:12:26","name":"perf dso: Fix kallsyms DSO detection with fallback logic","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"cab24d4c16bdd7c207fc81949fe7913a0b38e295","submitter":{"id":93113,"url":"http://patchwork.ozlabs.org/api/people/93113/?format=json","name":"Tanushree Shah","email":"tshah@linux.ibm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260410071225.708005-2-tshah@linux.ibm.com/mbox/","series":[{"id":499462,"url":"http://patchwork.ozlabs.org/api/series/499462/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=499462","date":"2026-04-10T07:12:26","name":"perf dso: Fix kallsyms DSO detection with fallback logic","version":1,"mbox":"http://patchwork.ozlabs.org/series/499462/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2221968/comments/","check":"success","checks":"http://patchwork.ozlabs.org/api/patches/2221968/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linuxppc-dev+bounces-19609-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=KVUdhQq0;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19609-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=148.163.156.1","lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=KVUdhQq0;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=linux.ibm.com\n (client-ip=148.163.156.1; helo=mx0a-001b2d01.pphosted.com;\n envelope-from=tshah@linux.ibm.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fsdFg64Ngz1yGb\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 10 Apr 2026 23:39:35 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fsdFg252Pz2yft;\n\tFri, 10 Apr 2026 23:39:35 +1000 (AEST)","from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com\n [148.163.156.1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fsSh16VLKz2yRl\n\tfor <linuxppc-dev@lists.ozlabs.org>; Fri, 10 Apr 2026 17:13:20 +1000 (AEST)","from pps.filterd (m0356517.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63A14A4q2301620;\n\tFri, 10 Apr 2026 07:13:15 GMT","from ppma13.dal12v.mail.ibm.com\n (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221])\n\tby mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4dcn2frs19-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tFri, 10 Apr 2026 07:13:15 +0000 (GMT)","from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1])\n\tby ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id\n 63A2qI6I019113;\n\tFri, 10 Apr 2026 07:13:14 GMT","from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230])\n\tby ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4dcme9q06j-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tFri, 10 Apr 2026 07:13:14 +0000","from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com\n [10.20.54.106])\n\tby smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n 63A7DAoo27263366\n\t(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n\tFri, 10 Apr 2026 07:13:10 GMT","from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id 873C820074;\n\tFri, 10 Apr 2026 07:13:10 +0000 (GMT)","from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id D0CC220071;\n\tFri, 10 Apr 2026 07:13:04 +0000 (GMT)","from li-4c4c4544-0047-4210-804e-b5c04f423534.ibm.com.com (unknown\n [9.39.24.250])\n\tby smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP;\n\tFri, 10 Apr 2026 07:13:04 +0000 (GMT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775805203;\n\tcv=none;\n b=NmMGK+L9dmDurhFi1/oSgalh70Ev4KO73OO2x3/J/Iuj80YdocchzZJRao3MWVPKKvxI/1ksPx/drDuypDVyiurvyVK9s78X91/Atytl06Z0OzWcPNJgfvKzyZCEm3iI4gT6I0v/UmHFAVzZ6NMrDHlWEddUPZ7CTnS/eKVIlmrf6P3MNQALyItWWRujV9P1wFwBaMXhATOct+UslbXdzTTAEvhPKbVg2ugROS4UCi5AjcLLak7NUYLuEdvFDde5/+SBMIfjE50R9MbcmCm4HiRrs1Muu0WFRmKTHXrI9nTz0MEs2zeSEFMqLZIKr7P5R330+fhFdu5y45cd7jQTNg==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775805203; c=relaxed/relaxed;\n\tbh=2fcaUim6/MoybfQ8XimqaqTgNkIBb7CrmRyV7/b6GTQ=;\n\th=From:To:Cc:Subject:Date:Message-ID:MIME-Version;\n b=P/yquTe3y6a0QBzUsWevIHgCh6PG4hMApNJFnNSqe11CKhNOHPIYce8xejACEq7v6szqIAqF34GR3sW66svmlTRMgyGGj7lOoptfNAKiQvOIHII111tGtzLXl6u/SXsOJyDrH+rmNHOyXzti3op4tzoUVg6Nr1UBlH/6xEU2nJlD9wSudzMLVPWHbylBZet+7u7GFOYKqu9HzH7L67wXp2wcEc8FHIuu5CeL4rfdkGo0nxCMQyiScA+16QyNOctSqcp4OelzGTDj9xrHuEkv4rFrGSWMYgeTW5gsDCtOlcGgOehwXN7S+S8zQiEXnC2WCwPwTPhAJNiS3dOY1atamg==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=KVUdhQq0; dkim-atps=neutral;\n spf=pass (client-ip=148.163.156.1; helo=mx0a-001b2d01.pphosted.com;\n envelope-from=tshah@linux.ibm.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=linux.ibm.com","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc\n\t:content-transfer-encoding:date:from:message-id:mime-version\n\t:subject:to; s=pp1; bh=2fcaUim6/MoybfQ8XimqaqTgNkIBb7CrmRyV7/b6G\n\tTQ=; b=KVUdhQq0xRNSAyXw7oJKn5V4/OBFYjs6Fekf/ElFvvJFd7uOA/Q6X4J2z\n\t1LQ63EiIymJd6lKK7soowsYYIDpO6gOgbvM+n3h+zv7ly6Jqh9dbl6++SUhlZk1W\n\tk9FDcpT7SMjBiLGF5RnPWhAsoQ5EuB//E/v1Bqi5uthne2GAXmQG0KBpUvnf00ym\n\tfHZDv2Cl4nFsGXWiftn1PtbvKNCwpYVGx0KUjY3gzCOejZeKO1cjUdjIlNKOE5Ko\n\t8OqKOCdmMgVtc512XM3IGFEHUuDo8xXzsD53xxYTYqeoAXKbbVE+RztFmOP5yG0S\n\tfbvWpbu8DCcsRRsaECZy3lBqsh31w==","From":"Tanushree Shah <tshah@linux.ibm.com>","To":"acme@kernel.org, jolsa@kernel.org, adrian.hunter@intel.com,\n        vmolnaro@redhat.com, mpetlan@redhat.com, tmricht@linux.ibm.com,\n        maddy@linux.ibm.com, irogers@google.com, namhyung@kernel.org","Cc":"linux-perf-users@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,\n        atrajeev@linux.ibm.com, hbathini@linux.vnet.ibm.com,\n        Tejas.Manhas1@ibm.com, Tanushree.Shah@ibm.com, Shivani.Nittor@ibm.com,\n        Tanushree Shah <tshah@linux.ibm.com>","Subject":"[PATCH] perf dso: Fix kallsyms DSO detection with fallback logic","Date":"Fri, 10 Apr 2026 12:42:26 +0530","Message-ID":"<20260410071225.708005-2-tshah@linux.ibm.com>","X-Mailer":"git-send-email 2.53.0","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-TM-AS-GCONF":"00","X-Proofpoint-Reinject":"loops=2 maxloops=12","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDEwMDA2MSBTYWx0ZWRfX9t9DgVmbIq3F\n HOzFSB35kqeFrB+vBN0TrsknWRXDYjFNt1KvedIHWRozZm+LKctWLoBkYahNLoFBSa0o73l828N\n NxN0jbovjzlz004/XOw8bmADLkaJn08gLCITiXP2wllvy5ZhXJBXbSQwq8urtRms4lfxsjmp+0u\n l+Yt9QIiN7CiwG0ybrcUC5dW1vjLNa44A5LJuFop03QeVVASvVxmjzdjMqWGwJd0Amt08r31wRN\n N00Exmf6n9xjUMy2/FEjBefrOqkG83HEAjnqXKNWVAFAZ7P/BzAe/93N6Mm4joRtM/MDhFaDmjL\n 19ckjdqW1KybGPCX9SO0TI4rqq0ygqBw6+haXODXGZi+JpDYKoJ93RBxue48pGWmgyZt/Phc316\n NOYF0QkioP4/e5zZGedyQ0VbupNWTGC8FAVKPZDrHeNTj9e5SnaOKCxTO/WxP5G0NaZuIaJIvPT\n 02e8COshOGrc6EgsUjg==","X-Authority-Analysis":"v=2.4 cv=FsY1OWrq c=1 sm=1 tr=0 ts=69d8a30b cx=c_pps\n a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17\n a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22\n a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=yWhZYjjtwySg7tuK4IQA:9","X-Proofpoint-ORIG-GUID":"D_Os4Ua60O8cnm12uEr9TYfrpFZdvEsQ","X-Proofpoint-GUID":"r1Kt42aomKu8hR3vRWt6m2xeZRQ1Kp3t","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-10_02,2026-04-09_02,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n bulkscore=0 priorityscore=1501 impostorscore=0 spamscore=0 phishscore=0\n lowpriorityscore=0 clxscore=1011 adultscore=0 malwarescore=0 suspectscore=0\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604100061","X-Spam-Status":"No, score=-0.7 required=3.0 tests=DKIM_SIGNED,DKIM_VALID,\n\tRCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,\n\tSPF_PASS autolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"},"content":"The current kallsyms detection in dso__is_kallsyms() uses the\ndso_binary_type enum which fixes the issue of kallsyms being cached in\nthe build-id cache for out-of-tree modules.\n\nHowever, during build-id injection in perf record/inject, dso_binary_type\nhas not been explicitly set yet,so dso__binary_type() returns\nDSO_BINARY_TYPE__NOT_FOUND instead of DSO_BINARY_TYPE__KALLSYMS for the\nkernel DSO. The current check then fails to identify it as kallsyms,\ncausing build-id symlinks to not be created in ~/.debug/.build-id/ and\nperf archive to fail with \"Cannot stat\" errors.\n\nSteps to reproduce the issue:\n1. rm -rf ~/.debug/.build-id\n2. perf record sleep 1\n3. perf archive\n\nFix by falling back to matching long_name against the known kallsyms\nstrings explicitly when binary_type is not yet set\n(== DSO_BINARY_TYPE__NOT_FOUND).\n\nFixes: ebf0b332732d (\"perf dso: fix dso__is_kallsyms() check\")\nSigned-off-by: Tanushree Shah <tshah@linux.ibm.com>\n---\n tools/perf/util/dso.h | 10 ++++++++++\n 1 file changed, 10 insertions(+)","diff":"diff --git a/tools/perf/util/dso.h b/tools/perf/util/dso.h\nindex ede691e9a249..e44071998c49 100644\n--- a/tools/perf/util/dso.h\n+++ b/tools/perf/util/dso.h\n@@ -9,6 +9,7 @@\n #include <stdbool.h>\n #include <stdio.h>\n #include <linux/bitops.h>\n+#include <string.h>\n #include \"build-id.h\"\n #include \"debuginfo.h\"\n #include \"mutex.h\"\n@@ -20,6 +21,7 @@ struct perf_env;\n \n #define DSO__NAME_KALLSYMS\t\"[kernel.kallsyms]\"\n #define DSO__NAME_KCORE\t\t\"[kernel.kcore]\"\n+#define DSO__NAME_GUEST_KALLSYMS\t\"[guest.kernel.kallsyms\"\n \n /**\n  * enum dso_binary_type - The kind of DSO generally associated with a memory\n@@ -915,6 +917,14 @@ static inline bool dso__is_kallsyms(const struct dso *dso)\n {\n \tenum dso_binary_type bt = dso__binary_type(dso);\n \n+\tif (bt == DSO_BINARY_TYPE__NOT_FOUND) {\n+\t\treturn RC_CHK_ACCESS(dso)->kernel &&\n+\t\t\t((strncmp(RC_CHK_ACCESS(dso)->long_name, DSO__NAME_KALLSYMS,\n+\t\t\t\tstrlen(DSO__NAME_KALLSYMS)) == 0) ||\n+\t\t\t(strncmp(RC_CHK_ACCESS(dso)->long_name, DSO__NAME_GUEST_KALLSYMS,\n+\t\t\t\tstrlen(DSO__NAME_GUEST_KALLSYMS)) == 0));\n+\t}\n+\n \treturn bt == DSO_BINARY_TYPE__KALLSYMS || bt == DSO_BINARY_TYPE__GUEST_KALLSYMS;\n }\n \n","prefixes":[]}