diff options
author | Paul Mundt <lethal@linux-sh.org> | 2011-05-23 17:09:30 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-05-23 17:09:30 +0900 |
commit | 78207ffd0e00d39238f0a8a455a31a12659b30b3 (patch) | |
tree | a4d9fc2c682a39c1016a2c29de5633fa7873ed32 | |
parent | 116ceec20069f5bab507eab817e56a4b60480845 (diff) | |
download | linux-78207ffd0e00d39238f0a8a455a31a12659b30b3.tar.gz linux-78207ffd0e00d39238f0a8a455a31a12659b30b3.tar.bz2 linux-78207ffd0e00d39238f0a8a455a31a12659b30b3.zip |
sh: Ignore R_SH_NONE module relocations.
Some modules may end up with R_SH_NONE relocs with the right combination
of compiler/kernel config (specifically dwarf unwinder), so simply trap
and ignore them instead of letting them get down to the error path.
Reported-by: Carmelo AMOROSO <carmelo.amoroso@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | arch/sh/kernel/module.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/sh/kernel/module.c b/arch/sh/kernel/module.c index ae0be697a89e..19b1f8826aef 100644 --- a/arch/sh/kernel/module.c +++ b/arch/sh/kernel/module.c @@ -93,6 +93,8 @@ int apply_relocate_add(Elf32_Shdr *sechdrs, #endif switch (ELF32_R_TYPE(rel[i].r_info)) { + case R_SH_NONE: + break; case R_SH_DIR32: value = get_unaligned(location); value += relocation; |