This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[PATCH -tip 0/2] Fix mm->flags consistency issue in coredump
- From: Masami Hiramatsu <mhiramat at redhat dot com>
- To: Ingo Molnar <mingo at elte dot hu>, lkml<linux-kernel at vger dot kernel dot org>
- Cc: Roland McGrath <roland at redhat dot com>, Oleg Nesterov <oleg at redhat dot com>, Hidehiro Kawai <hidehiro dot kawai dot ez at hitachi dot com>, Andrew Morton <akpm at linux-foundation dot org>, systemtap<systemtap at sources dot redhat dot com>, DLE<dle-develop at lists dot sourceforge dot net>
- Date: Tue, 17 Nov 2009 18:53:05 -0500
- Subject: [PATCH -tip 0/2] Fix mm->flags consistency issue in coredump
Hi,
These patches are for fixing coredump mm->flags consistency issue.
---
1787 if (mm->core_state || !get_dumpable(mm)) { <- (1)
1788 up_write(&mm->mmap_sem);
1789 put_cred(cred);
1790 goto fail;
1791 }
1792
[...]
1798 if (get_dumpable(mm) == 2) { /* Setuid core dump mode */ <-(2)
1799 flag = O_EXCL; /* Stop rewrite attacks */
1800 cred->fsuid = 0; /* Dump root private */
1801 }
---
Since dumpable bits are not protected by lock, there is a
chance to change these bits between (1) and (2).
To solve this issue, this patch copies mm->flags to
coredump_params.mm_flags at the beginning of do_coredump() and uses it instead of get_dumpable() while dumping core.
This series also introduce coredump parameter structure
for simplify bimfmt->core_dump interface.
Thank you,
---
Masami Hiramatsu (2):
Pass mm->flags as a coredump parameter for consistency
mm: Introduce coredump parameter structure
fs/binfmt_aout.c | 13 ++++++-----
fs/binfmt_elf.c | 50 +++++++++++++++++++----------------------
fs/binfmt_elf_fdpic.c | 38 ++++++++++++-------------------
fs/binfmt_flat.c | 6 ++---
fs/binfmt_som.c | 2 +-
fs/exec.c | 58 ++++++++++++++++++++++++++++++-----------------
include/linux/binfmts.h | 11 ++++++++-
7 files changed, 97 insertions(+), 81 deletions(-)
--
Masami Hiramatsu
Software Engineer
Hitachi Computer Products (America), Inc.
Software Solutions Division
e-mail: mhiramat@redhat.com