diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-05-26 15:06:12 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-05-26 15:06:12 -0700 |
commit | cd86a536c81e9300d984327517548ca0652eebf9 (patch) | |
tree | a9c197a9f9bb4f615b0fe19134f40ccc77ff8dd8 /arch/x86/boot/compressed/relocs.c | |
parent | ebd4c994d2f917dffec882e7a77c28c6b28758ac (diff) | |
parent | 2171787be2e71ff71159857bfeb21398b61eb615 (diff) |
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86: avoid back to back on_each_cpu in cpa_flush_array
x86, relocs: ignore R_386_NONE in kernel relocation entries
Diffstat (limited to 'arch/x86/boot/compressed/relocs.c')
-rw-r--r-- | arch/x86/boot/compressed/relocs.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/x86/boot/compressed/relocs.c b/arch/x86/boot/compressed/relocs.c index 857e492c571e..bbeb0c3fbd90 100644 --- a/arch/x86/boot/compressed/relocs.c +++ b/arch/x86/boot/compressed/relocs.c @@ -504,8 +504,11 @@ static void walk_relocs(void (*visit)(Elf32_Rel *rel, Elf32_Sym *sym)) if (sym->st_shndx == SHN_ABS) { continue; } - if (r_type == R_386_PC32) { - /* PC relative relocations don't need to be adjusted */ + if (r_type == R_386_NONE || r_type == R_386_PC32) { + /* + * NONE can be ignored and and PC relative + * relocations don't need to be adjusted. + */ } else if (r_type == R_386_32) { /* Visit relocations that need to be adjusted */ |