Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull core dump fix from Al Viro: "Fix for multithreaded coredump playing fast and loose with getting registers of secondary threads; if a secondary gets caught in the middle of exit(2), the conditition it will be stopped in for dumper to examine might be unusual enough for things to go wrong. Quite a few architectures are fine with that, but some are not." * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: don't dump the threads that had been already exiting when zapped.
This commit is contained in:
commit
eccc876724
@ -454,7 +454,10 @@ static void exit_mm(void)
|
|||||||
mmap_read_unlock(mm);
|
mmap_read_unlock(mm);
|
||||||
|
|
||||||
self.task = current;
|
self.task = current;
|
||||||
self.next = xchg(&core_state->dumper.next, &self);
|
if (self.task->flags & PF_SIGNALED)
|
||||||
|
self.next = xchg(&core_state->dumper.next, &self);
|
||||||
|
else
|
||||||
|
self.task = NULL;
|
||||||
/*
|
/*
|
||||||
* Implies mb(), the result of xchg() must be visible
|
* Implies mb(), the result of xchg() must be visible
|
||||||
* to core_state->dumper.
|
* to core_state->dumper.
|
||||||
|
Loading…
Reference in New Issue
Block a user