diff mbox series

[RFC,1/3] drop unused kallsyms support

Message ID 20240710-arm64-backtrace-v1-1-5a2ba50485dd@linaro.org
State Superseded
Headers show
Series ARM64: add symbol name lookup and print a backtrace on exception | expand

Commit Message

Caleb Connolly July 10, 2024, 4:26 p.m. UTC
There was some very old code floating around for decoding symbols, it's
incomplete and is never built. Remove it so we can add a new
implementation.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
---
 Makefile            | 11 -----------
 common/Makefile     |  1 -
 common/kallsyms.c   | 43 -------------------------------------------
 common/system_map.c |  8 --------
 4 files changed, 63 deletions(-)

Comments

Tom Rini July 12, 2024, 4:47 p.m. UTC | #1
On Wed, Jul 10, 2024 at 06:26:18PM +0200, Caleb Connolly wrote:
> There was some very old code floating around for decoding symbols, it's

> incomplete and is never built. Remove it so we can add a new
> implementation.
> 
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>

Reviewed-by: Tom Rini <trini@konsulko.com>
Ilias Apalodimas July 22, 2024, 6:41 a.m. UTC | #2
On Wed, 10 Jul 2024 at 19:26, Caleb Connolly <caleb.connolly@linaro.org> wrote:
>
> There was some very old code floating around for decoding symbols, it's
> incomplete and is never built. Remove it so we can add a new
> implementation.
>
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
>  Makefile            | 11 -----------
>  common/Makefile     |  1 -
>  common/kallsyms.c   | 43 -------------------------------------------
>  common/system_map.c |  8 --------
>  4 files changed, 63 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index f5b2512f3690..fcb9565d2fff 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1786,21 +1786,10 @@ quiet_cmd_u-boot__ ?= LD      $@
>                 $(PLATFORM_LIBS) -Map u-boot.map;                               \
>                 $(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
>  endif
>
> -quiet_cmd_smap = GEN     common/system_map.o
> -cmd_smap = \
> -       smap=`$(call SYSTEM_MAP,u-boot) | \
> -               awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
> -       $(CC) $(c_flags) -DSYSTEM_MAP="\"$${smap}\"" \
> -               -c $(srctree)/common/system_map.c -o common/system_map.o
> -
>  u-boot:        $(u-boot-init) $(u-boot-main) $(u-boot-keep-syms-lto) u-boot.lds FORCE
>         +$(call if_changed,u-boot__)
> -ifeq ($(CONFIG_KALLSYMS),y)
> -       $(call cmd,smap)
> -       $(call cmd,u-boot__) common/system_map.o
> -endif
>
>  ifeq ($(CONFIG_RISCV),y)
>         @tools/prelink-riscv $@
>  endif
> diff --git a/common/Makefile b/common/Makefile
> index e98354734206..bca02e4c362f 100644
> --- a/common/Makefile
> +++ b/common/Makefile
> @@ -34,9 +34,8 @@ obj-$(CONFIG_USB_ONBOARD_HUB) += usb_onboard_hub.o
>  obj-$(CONFIG_CONSOLE_MUX) += iomux.o
>  obj-$(CONFIG_MTD_NOR_FLASH) += flash.o
>  obj-$(CONFIG_CMD_KGDB) += kgdb.o kgdb_stubs.o
>  obj-$(CONFIG_I2C_EDID) += edid.o
> -obj-$(CONFIG_KALLSYMS) += kallsyms.o
>  obj-y += splash.o
>  obj-$(CONFIG_SPLASH_SOURCE) += splash_source.o
>  obj-$(CONFIG_MENU) += menu.o
>  obj-$(CONFIG_UPDATE_COMMON) += update.o
> diff --git a/common/kallsyms.c b/common/kallsyms.c
> deleted file mode 100644
> index 49b3897078ae..000000000000
> --- a/common/kallsyms.c
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -/*
> - * Helper functions for working with the builtin symbol table
> - *
> - * Copyright (c) 2008-2009 Analog Devices Inc.
> - * Licensed under the GPL-2 or later.
> - */
> -
> -
> -/* We need the weak marking as this symbol is provided specially */
> -extern const char system_map[] __attribute__((weak));
> -
> -/* Given an address, return a pointer to the symbol name and store
> - * the base address in caddr.  So if the symbol map had an entry:
> - *             03fb9b7c_spi_cs_deactivate
> - * Then the following call:
> - *             unsigned long base;
> - *             const char *sym = symbol_lookup(0x03fb9b80, &base);
> - * Would end up setting the variables like so:
> - *             base = 0x03fb9b7c;
> - *             sym = "_spi_cs_deactivate";
> - */
> -const char *symbol_lookup(unsigned long addr, unsigned long *caddr)
> -{
> -       const char *sym, *csym;
> -       char *esym;
> -       unsigned long sym_addr;
> -
> -       sym = system_map;
> -       csym = NULL;
> -       *caddr = 0;
> -
> -       while (*sym) {
> -               sym_addr = hextoul(sym, &esym);
> -               sym = esym;
> -               if (sym_addr > addr)
> -                       break;
> -               *caddr = sym_addr;
> -               csym = sym;
> -               sym += strlen(sym) + 1;
> -       }
> -
> -       return csym;
> -}
> diff --git a/common/system_map.c b/common/system_map.c
> deleted file mode 100644
> index 8307293bf3ae..000000000000
> --- a/common/system_map.c
> +++ /dev/null
> @@ -1,8 +0,0 @@
> -/*
> - * The builtin symbol table for use with kallsyms
> - *
> - * Copyright (c) 2008-2009 Analog Devices Inc.
> - * Licensed under the GPL-2 or later.
> - */
> -
> -const char const system_map[] = SYSTEM_MAP;
>
> --
> 2.45.2
>

Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
diff mbox series

Patch

diff --git a/Makefile b/Makefile
index f5b2512f3690..fcb9565d2fff 100644
--- a/Makefile
+++ b/Makefile
@@ -1786,21 +1786,10 @@  quiet_cmd_u-boot__ ?= LD      $@
 		$(PLATFORM_LIBS) -Map u-boot.map;				\
 		$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
 endif
 
-quiet_cmd_smap = GEN     common/system_map.o
-cmd_smap = \
-	smap=`$(call SYSTEM_MAP,u-boot) | \
-		awk '$$2 ~ /[tTwW]/ {printf $$1 $$3 "\\\\000"}'` ; \
-	$(CC) $(c_flags) -DSYSTEM_MAP="\"$${smap}\"" \
-		-c $(srctree)/common/system_map.c -o common/system_map.o
-
 u-boot:	$(u-boot-init) $(u-boot-main) $(u-boot-keep-syms-lto) u-boot.lds FORCE
 	+$(call if_changed,u-boot__)
-ifeq ($(CONFIG_KALLSYMS),y)
-	$(call cmd,smap)
-	$(call cmd,u-boot__) common/system_map.o
-endif
 
 ifeq ($(CONFIG_RISCV),y)
 	@tools/prelink-riscv $@
 endif
diff --git a/common/Makefile b/common/Makefile
index e98354734206..bca02e4c362f 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -34,9 +34,8 @@  obj-$(CONFIG_USB_ONBOARD_HUB) += usb_onboard_hub.o
 obj-$(CONFIG_CONSOLE_MUX) += iomux.o
 obj-$(CONFIG_MTD_NOR_FLASH) += flash.o
 obj-$(CONFIG_CMD_KGDB) += kgdb.o kgdb_stubs.o
 obj-$(CONFIG_I2C_EDID) += edid.o
-obj-$(CONFIG_KALLSYMS) += kallsyms.o
 obj-y += splash.o
 obj-$(CONFIG_SPLASH_SOURCE) += splash_source.o
 obj-$(CONFIG_MENU) += menu.o
 obj-$(CONFIG_UPDATE_COMMON) += update.o
diff --git a/common/kallsyms.c b/common/kallsyms.c
deleted file mode 100644
index 49b3897078ae..000000000000
--- a/common/kallsyms.c
+++ /dev/null
@@ -1,43 +0,0 @@ 
-/*
- * Helper functions for working with the builtin symbol table
- *
- * Copyright (c) 2008-2009 Analog Devices Inc.
- * Licensed under the GPL-2 or later.
- */
-
-
-/* We need the weak marking as this symbol is provided specially */
-extern const char system_map[] __attribute__((weak));
-
-/* Given an address, return a pointer to the symbol name and store
- * the base address in caddr.  So if the symbol map had an entry:
- *		03fb9b7c_spi_cs_deactivate
- * Then the following call:
- *		unsigned long base;
- *		const char *sym = symbol_lookup(0x03fb9b80, &base);
- * Would end up setting the variables like so:
- *		base = 0x03fb9b7c;
- *		sym = "_spi_cs_deactivate";
- */
-const char *symbol_lookup(unsigned long addr, unsigned long *caddr)
-{
-	const char *sym, *csym;
-	char *esym;
-	unsigned long sym_addr;
-
-	sym = system_map;
-	csym = NULL;
-	*caddr = 0;
-
-	while (*sym) {
-		sym_addr = hextoul(sym, &esym);
-		sym = esym;
-		if (sym_addr > addr)
-			break;
-		*caddr = sym_addr;
-		csym = sym;
-		sym += strlen(sym) + 1;
-	}
-
-	return csym;
-}
diff --git a/common/system_map.c b/common/system_map.c
deleted file mode 100644
index 8307293bf3ae..000000000000
--- a/common/system_map.c
+++ /dev/null
@@ -1,8 +0,0 @@ 
-/*
- * The builtin symbol table for use with kallsyms
- *
- * Copyright (c) 2008-2009 Analog Devices Inc.
- * Licensed under the GPL-2 or later.
- */
-
-const char const system_map[] = SYSTEM_MAP;