diff options
| author | Oleg Nesterov <[email protected]> | 2024-06-26 17:29:24 +0200 |
|---|---|---|
| committer | Andrew Morton <[email protected]> | 2024-07-04 18:05:57 -0700 |
| commit | 2a22b773b15f5aa97c029acad79bda11ce5f2b4d (patch) | |
| tree | 74e0d41bb17f63affc2201d6d8016e5d79a2d0fe /tools/perf/scripts/python/bin | |
| parent | 1419ff984aad4c08d121793f71a520b432ead88a (diff) | |
memcg: mm_update_next_owner: kill the "retry" logic
Add the new helper, try_to_set_owner(), which tries to update mm->owner
once we see c->mm == mm. This way mm_update_next_owner() doesn't need to
restart the list_for_each_entry/for_each_process loops from the very
beginning if it races with exit/exec, it can just continue.
Unlike the current code, try_to_set_owner() re-checks tsk->mm == mm before
it drops tasklist_lock, so it doesn't need get/put_task_struct().
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Oleg Nesterov <[email protected]>
Acked-by: Michal Hocko <[email protected]>
Cc: Christian Brauner <[email protected]>
Cc: Eric W. Biederman <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: Jinliang Zheng <[email protected]>
Cc: Mateusz Guzik <[email protected]>
Cc: Matthew Wilcox (Oracle) <[email protected]>
Cc: Tycho Andersen <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/bin')
0 files changed, 0 insertions, 0 deletions