diff mbox series

[Crash-utility,V4,9/9] RISCV64: Add the implementation of symbol verify

Message ID 20221020015014.46085-10-xianting.tian@linux.alibaba.com (mailing list archive)
State Not Applicable
Headers show
Series Support RISCV64 arch and common commands | expand

Commit Message

Xianting Tian Oct. 20, 2022, 1:50 a.m. UTC
Verify the symbol to accept or reject a symbol from the kernel namelist.

Signed-off-by: Xianting Tian <xianting.tian@linux.alibaba.com>
---
 riscv64.c | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/riscv64.c b/riscv64.c
index c8693e8..94eca90 100644
--- a/riscv64.c
+++ b/riscv64.c
@@ -165,10 +165,23 @@  riscv64_cmd_mach(void)
 	riscv64_display_machine_stats();
 }
 
+/*
+ * Accept or reject a symbol from the kernel namelist.
+ */
 static int
 riscv64_verify_symbol(const char *name, ulong value, char type)
 {
-	/* TODO: */
+	if (CRASHDEBUG(8) && name && strlen(name))
+		fprintf(fp, "%08lx %s\n", value, name);
+
+	if (!(machdep->flags & KSYMS_START)) {
+		if (STREQ(name, "_text") || STREQ(name, "_stext"))
+			machdep->flags |= KSYMS_START;
+
+		return (name && strlen(name) && !STRNEQ(name, "__func__.") &&
+			!STRNEQ(name, "__crc_"));
+	}
+
 	return TRUE;
 }