From: Silesh C V Date: Wed, 23 Jul 2014 20:59:59 +0000 (-0700) Subject: coredump: fix the setting of PF_DUMPCORE X-Git-Tag: v3.12.26~8 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1e6be3dd9849f2656a66fc3034cf0044f0f81d46;p=people%2Fms%2Flinux.git 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 Acked-by: Oleg Nesterov Cc: Mandeep Singh Baines Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds Signed-off-by: Jiri Slaby --- 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; /*