diff options
author | Song Liu <[email protected]> | 2019-09-04 14:46:18 -0700 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2019-10-09 12:44:12 +0200 |
commit | d44248a41337731a111374822d7d4451b64e73e4 (patch) | |
tree | 00a83d5f6e5c1723c1d7a79b96ea27fdfabf6fea /tools/perf/scripts/python/bin/export-to-postgresql-report | |
parent | f733c6b508bcaa3441ba1eacf16efb9abd47489f (diff) |
perf/core: Rework memory accounting in perf_mmap()
perf_mmap() always increases user->locked_vm. As a result, "extra" could
grow bigger than "user_extra", which doesn't make sense. Here is an
example case:
(Note: Assume "user_lock_limit" is very small.)
| # of perf_mmap calls |vma->vm_mm->pinned_vm|user->locked_vm|
| 0 | 0 | 0 |
| 1 | user_extra | user_extra |
| 2 | 3 * user_extra | 2 * user_extra|
| 3 | 6 * user_extra | 3 * user_extra|
| 4 | 10 * user_extra | 4 * user_extra|
Fix this by maintaining proper user_extra and extra.
Reviewed-By: Hechao Li <[email protected]>
Reported-by: Hechao Li <[email protected]>
Signed-off-by: Song Liu <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: <[email protected]>
Cc: Jie Meng <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/bin/export-to-postgresql-report')
0 files changed, 0 insertions, 0 deletions