diff options
author | Hans-Christian Egtvedt <egtvedt@samfundet.no> | 2013-05-13 22:22:10 +0200 |
---|---|---|
committer | Hans-Christian Egtvedt <egtvedt@samfundet.no> | 2013-05-13 22:22:10 +0200 |
commit | e68c636d88db3fda74e664ecb1a213ae0d50a7d8 (patch) | |
tree | 0ece5326637b21b485048ab95824ead08f889e38 /arch/avr32/kernel | |
parent | d6ffe1b8ecc59ae23524e408063dc7725f485f96 (diff) | |
download | linux-e68c636d88db3fda74e664ecb1a213ae0d50a7d8.tar.gz linux-e68c636d88db3fda74e664ecb1a213ae0d50a7d8.tar.bz2 linux-e68c636d88db3fda74e664ecb1a213ae0d50a7d8.zip |
avr32: fix relocation check for signed 18-bit offset
Caught by static code analysis by David.
Reported-by: David Binderman <dcb314@hotmail.com>
Signed-off-by: Hans-Christian Egtvedt <egtvedt@samfundet.no>
Cc: stable@kernel.org
Diffstat (limited to 'arch/avr32/kernel')
-rw-r--r-- | arch/avr32/kernel/module.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/avr32/kernel/module.c b/arch/avr32/kernel/module.c index 596f7305d93f..2c9412908024 100644 --- a/arch/avr32/kernel/module.c +++ b/arch/avr32/kernel/module.c @@ -264,7 +264,7 @@ int apply_relocate_add(Elf32_Shdr *sechdrs, const char *strtab, break; case R_AVR32_GOT18SW: if ((relocation & 0xfffe0003) != 0 - && (relocation & 0xfffc0003) != 0xffff0000) + && (relocation & 0xfffc0000) != 0xfffc0000) return reloc_overflow(module, "R_AVR32_GOT18SW", relocation); relocation >>= 2; |