diff options
author | Joe Mario <jmario@redhat.com> | 2013-10-23 09:06:53 -0400 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2013-11-06 16:25:42 -0500 |
commit | eea0e9cbb9e65cd553d302a4aefd4c7b70d9fd90 (patch) | |
tree | 1c7a1c62fb7b271f10a9d1504dc76677162f8a8b | |
parent | 80970472179a45609c0b11b80619bc8c32b15f77 (diff) |
kbuild: Increase kallsyms max symbol length
[AK: This seems like a ticking time bomb even without LTO,
so should be merged now. It causes very weird problems.
Thanks to Joe for tracking them down.]
With the added postfixes that LTO adds for local
symbols, the longest name in the kernel overflows
the namebuf[KSYM_NAME_LEN] array by two bytes. That name is:
__pci_fixup_resumePCI_VENDOR_ID_SERVERWORKSPCI_DEVICE_ID_SERVERWORKS_HT1000SBquirk_disable_broadcom_boot_interrupt.1488004.672802
Double the max symbol name length.
v2: Use 255 (Joe Perches)
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
-rw-r--r-- | include/linux/kallsyms.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h index 6883e197acb9..56488708da4b 100644 --- a/include/linux/kallsyms.h +++ b/include/linux/kallsyms.h | |||
@@ -9,7 +9,7 @@ | |||
9 | #include <linux/kernel.h> | 9 | #include <linux/kernel.h> |
10 | #include <linux/stddef.h> | 10 | #include <linux/stddef.h> |
11 | 11 | ||
12 | #define KSYM_NAME_LEN 128 | 12 | #define KSYM_NAME_LEN 255 |
13 | #define KSYM_SYMBOL_LEN (sizeof("%s+%#lx/%#lx [%s]") + (KSYM_NAME_LEN - 1) + \ | 13 | #define KSYM_SYMBOL_LEN (sizeof("%s+%#lx/%#lx [%s]") + (KSYM_NAME_LEN - 1) + \ |
14 | 2*(BITS_PER_LONG*3/10) + (MODULE_NAME_LEN - 1) + 1) | 14 | 2*(BITS_PER_LONG*3/10) + (MODULE_NAME_LEN - 1) + 1) |
15 | 15 | ||