summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorSilesh C V <svellattu@mvista.com>2014-07-23 13:59:59 -0700
committerJiri Slaby <jslaby@suse.cz>2014-07-30 18:02:40 +0200
commit1e6be3dd9849f2656a66fc3034cf0044f0f81d46 (patch)
treec4d57c00ce9dc30cdbc2127e1de765cf08e724e6 /fs
parentb1e86fbd194436742e891f9b952edae638d1ccf7 (diff)
downloadlwn-1e6be3dd9849f2656a66fc3034cf0044f0f81d46.tar.gz
lwn-1e6be3dd9849f2656a66fc3034cf0044f0f81d46.zip
coredump: fix the setting of PF_DUMPCORE
commit aed8adb7688d5744cb484226820163af31d2499a upstream. Commit 079148b919d0 ("coredump: factor out the setting of PF_DUMPCORE") cleaned up the setting of PF_DUMPCORE by removing it from all the linux_binfmt->core_dump() and moving it to zap_threads().But this ended up clearing all the previously set flags. This causes issues during core generation when tsk->flags is checked again (eg. for PF_USED_MATH to dump floating point registers). Fix this. Signed-off-by: Silesh C V <svellattu@mvista.com> Acked-by: Oleg Nesterov <oleg@redhat.com> Cc: Mandeep Singh Baines <msb@chromium.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'fs')
-rw-r--r--fs/coredump.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/coredump.c b/fs/coredump.c
index 02db009d1531..88adbdd15193 100644
--- a/fs/coredump.c
+++ b/fs/coredump.c
@@ -307,7 +307,7 @@ static int zap_threads(struct task_struct *tsk, struct mm_struct *mm,
if (unlikely(nr < 0))
return nr;
- tsk->flags = PF_DUMPCORE;
+ tsk->flags |= PF_DUMPCORE;
if (atomic_read(&mm->mm_users) == nr + 1)
goto done;
/*