diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2012-09-26 03:34:50 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-09-27 04:20:21 +0200 |
commit | f34f9d186df35e5c39163444c43b4fc6255e39c5 (patch) | |
tree | 4e66ee662fb2bd0c50c8b3aed27e9ce5c508059a /usr | |
parent | usb/gadget: fix misannotations (diff) | |
download | linux-f34f9d186df35e5c39163444c43b4fc6255e39c5.tar.xz linux-f34f9d186df35e5c39163444c43b4fc6255e39c5.zip |
coredump: prevent double-free on an error path in core dumper
In !CORE_DUMP_USE_REGSET case, if elf_note_info_init fails to allocate
memory for info->fields, it frees already allocated stuff and returns
error to its caller, fill_note_info. Which in turn returns error to its
caller, elf_core_dump. Which jumps to cleanup label and calls
free_note_info, which will happily try to free all info->fields again.
BOOM.
This is the fix.
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Cc: Venu Byravarasu <vbyravarasu@nvidia.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'usr')
0 files changed, 0 insertions, 0 deletions