diff options
| author | Yu Zhao <[email protected]> | 2021-06-30 18:49:48 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2021-06-30 20:47:28 -0700 |
| commit | 2d2b8d2b67713da5de333a8849342503a9f21c60 (patch) | |
| tree | 927354b2ae89b6814e6abb59de6f5f0b27945c97 /tools/perf/scripts/python/bin | |
| parent | 4a8f021ba0a220a95d4251ea3f199ef693f1249b (diff) | |
mm/vmscan.c: fix potential deadlock in reclaim_pages()
Theoretically without the protect from memalloc_noreclaim_save() and
memalloc_noreclaim_restore(), reclaim_pages() can go into the block
I/O layer recursively and deadlock.
Querying 'reclaim_pages' in our kernel crash databases didn't yield
any results. So the deadlock seems unlikely to happen. A possible
explanation is that the only user of reclaim_pages(), i.e.,
MADV_PAGEOUT, is usually called before memory pressure builds up,
e.g., on Android and Chrome OS. Under such a condition, allocations in
the block I/O layer can be fulfilled without diverting to direct
reclaim and therefore the recursion is avoided.
Link: https://lkml.kernel.org/r/[email protected]
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Yu Zhao <[email protected]>
Cc: Minchan Kim <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/bin')
0 files changed, 0 insertions, 0 deletions