diff options
author | Helge Deller <deller@gmx.de> | 2013-11-28 09:16:33 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-28 09:49:41 -0800 |
commit | 5ecbe3c3c690b5ab493c730c317475287a9e8b45 (patch) | |
tree | 6af02e022f77e0f166b1ed1f031a2cd73d92d5ce /kernel/extable.c | |
parent | e7c0d3dac88bc38c4ccd64261d572f67eff056fd (diff) | |
download | lwn-5ecbe3c3c690b5ab493c730c317475287a9e8b45.tar.gz lwn-5ecbe3c3c690b5ab493c730c317475287a9e8b45.zip |
kernel/extable: fix address-checks for core_kernel and init areas
The init_kernel_text() and core_kernel_text() functions should not
include the labels _einittext and _etext when checking if an address is
inside the .text or .init sections.
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/extable.c')
-rw-r--r-- | kernel/extable.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/extable.c b/kernel/extable.c index 832cb28105bb..763faf037ec1 100644 --- a/kernel/extable.c +++ b/kernel/extable.c @@ -61,7 +61,7 @@ const struct exception_table_entry *search_exception_tables(unsigned long addr) static inline int init_kernel_text(unsigned long addr) { if (addr >= (unsigned long)_sinittext && - addr <= (unsigned long)_einittext) + addr < (unsigned long)_einittext) return 1; return 0; } @@ -69,7 +69,7 @@ static inline int init_kernel_text(unsigned long addr) int core_kernel_text(unsigned long addr) { if (addr >= (unsigned long)_stext && - addr <= (unsigned long)_etext) + addr < (unsigned long)_etext) return 1; if (system_state == SYSTEM_BOOTING && |