diff options
| author | Ralph Campbell <[email protected]> | 2018-10-30 15:04:14 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2018-10-31 08:54:11 -0700 |
| commit | 86a2d59841ab0b147ffc1b7b3041af87927cf312 (patch) | |
| tree | d10b1917669b769bfa3192228b05feec7f473e5f /tools/perf/scripts/python/failed-syscalls-by-pid.py | |
| parent | aab8d0520e6e7c2a61f71195e6ce7007a4843afb (diff) | |
mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback
In hmm_mirror_unregister(), mm->hmm is set to NULL and then
mmu_notifier_unregister_no_release() is called. That creates a small
window where mmu_notifier can call mmu_notifier_ops with mm->hmm equal to
NULL. Fix this by first unregistering mmu notifier callbacks and then
setting mm->hmm to NULL.
Similarly in hmm_register(), set mm->hmm before registering mmu_notifier
callbacks so callback functions always see mm->hmm set.
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ralph Campbell <[email protected]>
Signed-off-by: Jérôme Glisse <[email protected]>
Reviewed-by: John Hubbard <[email protected]>
Reviewed-by: Jérôme Glisse <[email protected]>
Reviewed-by: Balbir Singh <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/failed-syscalls-by-pid.py')
0 files changed, 0 insertions, 0 deletions