diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2012-10-25 10:49:25 +1030 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-11-26 11:37:41 -0800 |
commit | 0de578d014506a662b239708f4a0ded7e083292c (patch) | |
tree | 310f65499150f1ae2f65472bc18770c667c4e7ea /fs/compat.c | |
parent | a6a19e36b35fcb17d6c2bf9a49014e9461dfcef2 (diff) |
module: fix out-by-one error in kallsyms
commit 59ef28b1f14899b10d6b2682c7057ca00a9a3f47 upstream.
Masaki found and patched a kallsyms issue: the last symbol in a
module's symtab wasn't transferred. This is because we manually copy
the zero'th entry (which is always empty) then copy the rest in a loop
starting at 1, though from src[0]. His fix was minimal, I prefer to
rewrite the loops in more standard form.
There are two loops: one to get the size, and one to copy. Make these
identical: always count entry 0 and any defined symbol in an allocated
non-init section.
This bug exists since the following commit was introduced.
module: reduce symbol table for loaded modules (v2)
commit: 4a4962263f07d14660849ec134ee42b63e95ea9a
LKML: http://lkml.org/lkml/2012/10/24/27
Reported-by: Masaki Kimura <masaki.kimura.kz@hitachi.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/compat.c')
0 files changed, 0 insertions, 0 deletions