From nobody Tue Dec 2 01:25:31 2025 Received: from mail-pg1-f202.google.com (mail-pg1-f202.google.com [209.85.215.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67D9720E00B for ; Sun, 23 Nov 2025 02:32:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763865155; cv=none; b=EEm/h94lm5zRjhgr0qQ6p3M7+Z2Xhhoe+6b/MQCVtra80F8PiSldB+ZzGzyKcpb+kc3wHA5Jis2+FA/fFvn10w5kwKAomd3GNlXX9RbSq8t4mSCSOnrnbUieQhQarm52Y3/XSCdsOdrGG8Ebs/A/rTmBgBiYA0SrS1mSNlRkMuk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763865155; c=relaxed/simple; bh=AIOFFfn1a4wuAIU5AeQadsr3Kz3VlSrCRDahCs/SE08=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Content-Type; b=nTDYLUSY/49Zn+tkhGIvilZfRg5jU2+TDQOC3Zq2sNTzXUqjDWpIzRoPK9vzH1tjsSW2TbyjAKDqHPCsfytGizRUw9P/VnVnDVVPFCIT846CHNSRN2zlebV2vak5PQb+MEFAf2AILpQFl845zJ21Y0nlgyCMtDcUgKoYnR+gzSs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=XXfDFLZq; arc=none smtp.client-ip=209.85.215.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="XXfDFLZq" Received: by mail-pg1-f202.google.com with SMTP id 41be03b00d2f7-b969f3f5bb1so5662267a12.0 for ; Sat, 22 Nov 2025 18:32:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1763865153; x=1764469953; darn=vger.kernel.org; h=to:from:subject:message-id:references:mime-version:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=ZXAHOA2dBofuW+6TFI6lLyA+tJ+ZKr1M8T35iNKkIls=; b=XXfDFLZqh3krUEJTkvTa1k5sRR5Exi2Ty3SkmnThFi2GRuHQ0Udq78impI+V7Tt+KR GsLm87EoXhu+rMJj56AJjjzKZXNvoP6yeYxJgbu/w6rU+2ba7BnowLJuxgkm2g2xQBCQ Uy2vAc3ReN+9NUkRe2azBRM2YUbojIV3Ktzib2WpJzhEJfr6zO6BXNXUXEx5SjmgPF4S M4Lc3hosIYtFydUmAiKuGLgbeG5FK4rKnl5Y9GzLNiVFdLnoPoMm7RlTw2G/DtALtzio 1raBfuPFMwu0sKRncPAwybZEzuY8UROj3eL6nZXFhmlqbOEi/kmV4ZCRFfi61VQ9cD12 Sr7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763865153; x=1764469953; h=to:from:subject:message-id:references:mime-version:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ZXAHOA2dBofuW+6TFI6lLyA+tJ+ZKr1M8T35iNKkIls=; b=vnvCA9TmPNMJ8qVtd9Mgy+2Rzge8W0LvFa41spOHcR/5eFw1EtAvj5DgTn1WsWxmst yAFpkS31yOBLEgi0O13zRB2giSsRajyLmkTspRbFIZGCvJFs4+PWcdM8nk4tuc075CIQ gjOF1rpYB4RvabmsXaEDtXaLiTW3lmWmVwrNC/xy4u1iaIfpMN76AhaUB1WhKoo+9K8d 2rnpPvZOhBBY4ExSmPmqRRENisJ/dfoXTJgVtCV+s+BIh/UBbEc5BD6DvKwxG9JACx0J I/onDne5A40o+IkZFZlehOQqWpfaf3tE0pt7EFBIlJAiuJcfCOY9k2gIXKuAjbqEhqvk tLTg== X-Forwarded-Encrypted: i=1; AJvYcCXxnyfTAz/SSVajYYPXj+ChpSyuSKU4IZY93AYtEJRLCvaNMCFjXu+IdZTaZmWCnSHtuRF6+87GmBI51cI=@vger.kernel.org X-Gm-Message-State: AOJu0YzmX+1rxXXCrTdmieKMiaHE73e4n7Xjcry/XsiaCUAZDUjkJBmk nPRopBNMMJa0n4jjc6Iowxt2fTMKVQJA+KH68OfttNf0tsRT84yeh9RbdhHXzlYxcjjCym7Sqa2 ATL4gMpR1FQ== X-Google-Smtp-Source: AGHT+IG0+th98zEo0nte2Be3vxkhSzkU0BgoA2iKtM/9oG06MZQAnFG14NRSDuqKLCrKOcFqPu/aKHUiUa70 X-Received: from dlbrh6.prod.google.com ([2002:a05:7022:f306:b0:11a:26c7:567d]) (user=irogers job=prod-delivery.src-stubby-dispatcher) by 2002:a05:7022:7f07:b0:11b:aca4:be1f with SMTP id a92af1059eb24-11c9d712cd4mr2415052c88.17.1763865152648; Sat, 22 Nov 2025 18:32:32 -0800 (PST) Date: Sat, 22 Nov 2025 18:32:18 -0800 In-Reply-To: <20251123023225.8069-1-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20251123023225.8069-1-irogers@google.com> X-Mailer: git-send-email 2.52.0.rc2.455.g230fcf2819-goog Message-ID: <20251123023225.8069-3-irogers@google.com> Subject: [PATCH v1 2/9] perf symbol: Reduce scope of arch__sym_update From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Suzuki K Poulose , Mike Leach , James Clark , John Garry , Will Deacon , Leo Yan , Athira Rajeev , tanze , Aditya Bodkhe , Stephen Brennan , Andi Kleen , Chun-Tse Shao , Thomas Falcon , Dapeng Mi , "Dr. David Alan Gilbert" , Christophe Leroy , "=?UTF-8?q?Krzysztof=20=C5=81opatowski?=" , "Masami Hiramatsu (Google)" , Alexandre Ghiti , Haibo Xu , Sergei Trofimovich , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Rather than being a weak arch function, use the e_machine from the ELF header to determine whether to update or not. This should make the function work cross-platform, it also reduces the function's scope. Signed-off-by: Ian Rogers --- tools/perf/arch/powerpc/util/sym-handling.c | 7 ------- tools/perf/util/symbol-elf.c | 9 ++++++--- tools/perf/util/symbol.h | 4 ---- 3 files changed, 6 insertions(+), 14 deletions(-) diff --git a/tools/perf/arch/powerpc/util/sym-handling.c b/tools/perf/arch/= powerpc/util/sym-handling.c index 947bfad7aa59..afefa9bd0c93 100644 --- a/tools/perf/arch/powerpc/util/sym-handling.c +++ b/tools/perf/arch/powerpc/util/sym-handling.c @@ -66,13 +66,6 @@ const char *arch__normalize_symbol_name(const char *name) =20 #if defined(_CALL_ELF) && _CALL_ELF =3D=3D 2 =20 -#ifdef HAVE_LIBELF_SUPPORT -void arch__sym_update(struct symbol *s, GElf_Sym *sym) -{ - s->arch_sym =3D sym->st_other; -} -#endif - #define PPC64LE_LEP_OFFSET 8 =20 void arch__fix_tev_from_maps(struct perf_probe_event *pev, diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c index 5cd4844f9bb4..629b272e0a13 100644 --- a/tools/perf/util/symbol-elf.c +++ b/tools/perf/util/symbol-elf.c @@ -1337,8 +1337,11 @@ static u64 ref_reloc(struct kmap *kmap) return 0; } =20 -void __weak arch__sym_update(struct symbol *s __maybe_unused, - GElf_Sym *sym __maybe_unused) { } +static void arch__sym_update(int e_machine, const GElf_Sym *sym, struct sy= mbol *s) +{ + if (e_machine =3D=3D EM_PPC64 || e_machine =3D=3D EM_PPC) + s->arch_sym =3D sym->st_other; +} =20 static int dso__process_kernel_symbol(struct dso *dso, struct map *map, GElf_Sym *sym, GElf_Shdr *shdr, @@ -1717,7 +1720,7 @@ dso__load_sym_internal(struct dso *dso, struct map *m= ap, struct symsrc *syms_ss, if (!f) goto out_elf_end; =20 - arch__sym_update(f, &sym); + arch__sym_update(ehdr.e_machine, &sym, f); =20 __symbols__insert(dso__symbols(curr_dso), f, dso__kernel(dso)); nr++; diff --git a/tools/perf/util/symbol.h b/tools/perf/util/symbol.h index d91dc89386e2..78fb2ba69f65 100644 --- a/tools/perf/util/symbol.h +++ b/tools/perf/util/symbol.h @@ -216,10 +216,6 @@ int setup_list(struct strlist **list, const char *list= _str, int setup_intlist(struct intlist **list, const char *list_str, const char *list_name); =20 -#ifdef HAVE_LIBELF_SUPPORT -void arch__sym_update(struct symbol *s, GElf_Sym *sym); -#endif - const char *arch__normalize_symbol_name(const char *name); #define SYMBOL_A 0 #define SYMBOL_B 1 --=20 2.52.0.rc2.455.g230fcf2819-goog