From: Andi Kleen Date: Wed, 23 Oct 2013 13:07:53 +0000 (+0200) Subject: Kbuild: Handle longer symbols in kallsyms.c X-Git-Tag: firefly_0821_release~176^2~4961^2~7 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=f3462aa952cfc8f4b095103cb9b3d306dd216558;p=firefly-linux-kernel-4.4.55.git Kbuild: Handle longer symbols in kallsyms.c Also warn for too long symbols v2: Add missing newline. Use 255 max (Joe Perches) Signed-off-by: Andi Kleen Signed-off-by: Michal Marek --- diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c index 487ac6f37ca2..967522ab4f39 100644 --- a/scripts/kallsyms.c +++ b/scripts/kallsyms.c @@ -27,7 +27,7 @@ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr[0])) #endif -#define KSYM_NAME_LEN 128 +#define KSYM_NAME_LEN 255 struct sym_entry { unsigned long long addr; @@ -111,6 +111,12 @@ static int read_symbol(FILE *in, struct sym_entry *s) fprintf(stderr, "Read error or end of file.\n"); return -1; } + if (strlen(str) > KSYM_NAME_LEN) { + fprintf(stderr, "Symbol %s too long for kallsyms (%lu vs %d).\n" + "Please increase KSYM_NAME_LEN both in kernel and kallsyms.c\n", + str, strlen(str), KSYM_NAME_LEN); + return -1; + } sym = str; /* skip prefix char */