Messages in this thread | | | From | Song Liu <> | Subject | Re: [PATCH] perf: rework memory accounting in perf_mmap() | Date | Mon, 7 Oct 2019 16:31:37 +0000 |
| |
Hi Peter,
> On Sep 30, 2019, at 2:02 AM, Peter Zijlstra <peterz@infradead.org> wrote: > > On Wed, Sep 04, 2019 at 02:46:18PM -0700, Song Liu wrote: >> 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. > > Aah, indeed.
Thanks for the feedback!
> > Also, this code is unreadable (which is mostly my own fault I suppose) > :/
How does this patch look to you? Is it ready to merge?
Thanks, Song
| |