[GIT PULL] thread fixes v5.5-rc5

From: Christian Brauner
Date: Fri Jan 03 2020 - 08:53:52 EST

Hi Linus,

Here are two fixes:

/* Summary */
- Panic earlier when global init exits to generate useable coredumps.
Currently, when global init and all threads in its thread-group have exited
we panic via:
-> exit_notify()
-> forget_original_parent()
-> find_child_reaper()
This makes it hard to extract a useable coredump for global init from a
kernel crashdump because by the time we panic exit_mm() will have already
released global init's mm. We now panic slightly earlier. This has been
a problem in certain environments such as Android.

- Fix a race in assigning and reading taskstats for thread-groups with more
than one thread.
This patch has been waiting for quite a while since people disagreed on what
the correct fix was at first.

/* Testing */
No build failures or warnings were observed.

/* Conflicts */
At the time of creating this PR no merge conflicts were known.

The following changes since commit 219d54332a09e8d8741c1e1982f5eae56099de85:

Linux 5.4 (2019-11-24 16:32:01 -0800)

are available in the Git repository at:

git@xxxxxxxxxxxxxxxxxxx:pub/scm/linux/kernel/git/brauner/linux tags/for-linus-2020-01-03

for you to fetch changes up to 43cf75d96409a20ef06b756877a2e72b10a026fc:

exit: panic before exit_mm() on global init exit (2019-12-21 16:48:01 +0100)

Please consider pulling these changes from the signed for-linus-2020-01-03 tag.

Thanks and happy new year!


Christian Brauner (1):
taskstats: fix data-race

chenqiwu (1):
exit: panic before exit_mm() on global init exit

kernel/exit.c | 12 ++++++++----
kernel/taskstats.c | 30 +++++++++++++++++++-----------
2 files changed, 27 insertions(+), 15 deletions(-)