[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-d6afa561e1471ccfdaf7191230c0c59a37e45a5b@git.kernel.org>
Date: Fri, 26 Oct 2018 00:29:34 -0700
From: tip-bot for David Miller <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: mhiramat@...nel.org, linux-kernel@...r.kernel.org,
tglx@...utronix.de, guohanjun@...wei.com, peterz@...radead.org,
davem@...emloft.net, hemant@...ux.vnet.ibm.com, mingo@...nel.org,
acme@...hat.com, wangnan0@...wei.com,
alexander.shishkin@...ux.intel.com, alexis.berlemont@...il.com,
dtolnay@...il.com, namhyung@...nel.org, huawei.libin@...wei.com,
hpa@...or.com, milian.wolff@...b.com
Subject: [tip:perf/urgent] perf symbols: Set PLT entry/header sizes properly
on Sparc
Commit-ID: d6afa561e1471ccfdaf7191230c0c59a37e45a5b
Gitweb: https://git.kernel.org/tip/d6afa561e1471ccfdaf7191230c0c59a37e45a5b
Author: David Miller <davem@...emloft.net>
AuthorDate: Wed, 17 Oct 2018 12:08:59 -0700
Committer: Arnaldo Carvalho de Melo <acme@...hat.com>
CommitDate: Thu, 18 Oct 2018 11:19:44 -0300
perf symbols: Set PLT entry/header sizes properly on Sparc
Using the sh_entsize for both values isn't correct. It happens to be
correct on x86...
For both 32-bit and 64-bit sparc, there are four PLT entries in the PLT
section.
Signed-off-by: David S. Miller <davem@...emloft.net>
Cc: Alexander Shishkin <alexander.shishkin@...ux.intel.com>
Cc: Alexis Berlemont <alexis.berlemont@...il.com>
Cc: David Tolnay <dtolnay@...il.com>
Cc: Hanjun Guo <guohanjun@...wei.com>
Cc: Hemant Kumar <hemant@...ux.vnet.ibm.com>
Cc: Li Bin <huawei.libin@...wei.com>
Cc: Masami Hiramatsu <mhiramat@...nel.org>
Cc: Milian Wolff <milian.wolff@...b.com>
Cc: Namhyung Kim <namhyung@...nel.org>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: Wang Nan <wangnan0@...wei.com>
Cc: zhangmengting@...wei.com
Fixes: b2f7605076d6 ("perf symbols: Fix plt entry calculation for ARM and AARCH64")
Link: http://lkml.kernel.org/r/20181017.120859.2268840244308635255.davem@davemloft.net
Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
---
tools/perf/util/symbol-elf.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c
index 29770ea61768..6e70cc00c161 100644
--- a/tools/perf/util/symbol-elf.c
+++ b/tools/perf/util/symbol-elf.c
@@ -324,7 +324,17 @@ int dso__synthesize_plt_symbols(struct dso *dso, struct symsrc *ss)
plt_entry_size = 16;
break;
- default: /* FIXME: s390/alpha/mips/parisc/poperpc/sh/sparc/xtensa need to be checked */
+ case EM_SPARC:
+ plt_header_size = 48;
+ plt_entry_size = 12;
+ break;
+
+ case EM_SPARCV9:
+ plt_header_size = 128;
+ plt_entry_size = 32;
+ break;
+
+ default: /* FIXME: s390/alpha/mips/parisc/poperpc/sh/xtensa need to be checked */
plt_header_size = shdr_plt.sh_entsize;
plt_entry_size = shdr_plt.sh_entsize;
break;
Powered by blists - more mailing lists