Re: [PATCH for v5.15] perf symbol: Remove arch__symbols__fixup_end()

2022-05-03 Thread Greg KH
On Mon, May 02, 2022 at 05:37:36PM -0700, Namhyung Kim wrote:
> Now the generic code can handle kallsyms fixup properly so no need to
> keep the arch-functions anymore.
> 
> Signed-off-by: Namhyung Kim 
> Acked-by: Ian Rogers 
> Cc: Heiko Carstens 
> Cc: Ingo Molnar 
> Cc: Jiri Olsa 
> Cc: John Garry 
> Cc: Leo Yan 
> Cc: Mark Rutland 
> Cc: Masami Hiramatsu 
> Cc: Mathieu Poirier 
> Cc: Michael Ellerman 
> Cc: Michael Petlan 
> Cc: Peter Zijlstra 
> Cc: Song Liu 
> Cc: Will Deacon 
> Cc: linux-s...@vger.kernel.org
> Cc: linuxppc-dev@lists.ozlabs.org
> Link: https://lore.kernel.org/r/20220416004048.1514900-4-namhy...@kernel.org
> Signed-off-by: Arnaldo Carvalho de Melo 
> ---
> The original commit id is a5d20d42a2f2dc2b2f9e9361912062732414090d

Both now queued up, thanks.

greg k-h


[PATCH for v5.15] perf symbol: Remove arch__symbols__fixup_end()

2022-05-02 Thread Namhyung Kim
Now the generic code can handle kallsyms fixup properly so no need to
keep the arch-functions anymore.

Signed-off-by: Namhyung Kim 
Acked-by: Ian Rogers 
Cc: Heiko Carstens 
Cc: Ingo Molnar 
Cc: Jiri Olsa 
Cc: John Garry 
Cc: Leo Yan 
Cc: Mark Rutland 
Cc: Masami Hiramatsu 
Cc: Mathieu Poirier 
Cc: Michael Ellerman 
Cc: Michael Petlan 
Cc: Peter Zijlstra 
Cc: Song Liu 
Cc: Will Deacon 
Cc: linux-s...@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
Link: https://lore.kernel.org/r/20220416004048.1514900-4-namhy...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo 
---
The original commit id is a5d20d42a2f2dc2b2f9e9361912062732414090d

 tools/perf/arch/arm64/util/Build   |  1 -
 tools/perf/arch/arm64/util/machine.c   | 28 --
 tools/perf/arch/powerpc/util/Build |  1 -
 tools/perf/arch/powerpc/util/machine.c | 25 ---
 tools/perf/arch/s390/util/machine.c| 16 ---
 tools/perf/util/symbol.c   |  5 -
 tools/perf/util/symbol.h   |  1 -
 7 files changed, 77 deletions(-)
 delete mode 100644 tools/perf/arch/arm64/util/machine.c
 delete mode 100644 tools/perf/arch/powerpc/util/machine.c

diff --git a/tools/perf/arch/arm64/util/Build b/tools/perf/arch/arm64/util/Build
index 9fcb4e68add9..78dfc282e5e2 100644
--- a/tools/perf/arch/arm64/util/Build
+++ b/tools/perf/arch/arm64/util/Build
@@ -1,5 +1,4 @@
 perf-y += header.o
-perf-y += machine.o
 perf-y += perf_regs.o
 perf-y += tsc.o
 perf-y += pmu.o
diff --git a/tools/perf/arch/arm64/util/machine.c 
b/tools/perf/arch/arm64/util/machine.c
deleted file mode 100644
index 7e7714290a87..
--- a/tools/perf/arch/arm64/util/machine.c
+++ /dev/null
@@ -1,28 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-
-#include 
-#include 
-#include 
-#include "debug.h"
-#include "symbol.h"
-
-/* On arm64, kernel text segment starts at high memory address,
- * for example 0x  8xxx . Modules start at a low memory
- * address, like 0x  00ax . When only small amount of
- * memory is used by modules, gap between end of module's text segment
- * and start of kernel text segment may reach 2G.
- * Therefore do not fill this gap and do not assign it to the kernel dso map.
- */
-
-#define SYMBOL_LIMIT (1 << 12) /* 4K */
-
-void arch__symbols__fixup_end(struct symbol *p, struct symbol *c)
-{
-   if ((strchr(p->name, '[') && strchr(c->name, '[') == NULL) ||
-   (strchr(p->name, '[') == NULL && strchr(c->name, '[')))
-   /* Limit range of last symbol in module and kernel */
-   p->end += SYMBOL_LIMIT;
-   else
-   p->end = c->start;
-   pr_debug4("%s sym:%s end:%#" PRIx64 "\n", __func__, p->name, p->end);
-}
diff --git a/tools/perf/arch/powerpc/util/Build 
b/tools/perf/arch/powerpc/util/Build
index 8a79c4126e5b..0115f3166568 100644
--- a/tools/perf/arch/powerpc/util/Build
+++ b/tools/perf/arch/powerpc/util/Build
@@ -1,5 +1,4 @@
 perf-y += header.o
-perf-y += machine.o
 perf-y += kvm-stat.o
 perf-y += perf_regs.o
 perf-y += mem-events.o
diff --git a/tools/perf/arch/powerpc/util/machine.c 
b/tools/perf/arch/powerpc/util/machine.c
deleted file mode 100644
index e652a1aa8132..
--- a/tools/perf/arch/powerpc/util/machine.c
+++ /dev/null
@@ -1,25 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-
-#include 
-#include 
-#include 
-#include  // page_size
-#include "debug.h"
-#include "symbol.h"
-
-/* On powerpc kernel text segment start at memory addresses, 0xc000
- * whereas the modules are located at very high memory addresses,
- * for example 0xc0080xxx. The gap between end of kernel text segment
- * and beginning of first module's text segment is very high.
- * Therefore do not fill this gap and do not assign it to the kernel dso map.
- */
-
-void arch__symbols__fixup_end(struct symbol *p, struct symbol *c)
-{
-   if (strchr(p->name, '[') == NULL && strchr(c->name, '['))
-   /* Limit the range of last kernel symbol */
-   p->end += page_size;
-   else
-   p->end = c->start;
-   pr_debug4("%s sym:%s end:%#" PRIx64 "\n", __func__, p->name, p->end);
-}
diff --git a/tools/perf/arch/s390/util/machine.c 
b/tools/perf/arch/s390/util/machine.c
index 7644a4f6d4a4..98bc3f39d5f3 100644
--- a/tools/perf/arch/s390/util/machine.c
+++ b/tools/perf/arch/s390/util/machine.c
@@ -35,19 +35,3 @@ int arch__fix_module_text_start(u64 *start, u64 *size, const 
char *name)
 
return 0;
 }
-
-/* On s390 kernel text segment start is located at very low memory addresses,
- * for example 0x1. Modules are located at very high memory addresses,
- * for example 0x3ff  . The gap between end of kernel text segment
- * and beginning of first module's text segment is very big.
- * Therefore do not fill this gap and do not assign it to the kernel dso map.
- */
-void arch__symbols__fixup_end(struct symbol *p, struct symbol *c)
-{
-   if (strchr(p->name,