diff options
author | Oleg Nesterov <oleg@redhat.com> | 2014-05-05 16:38:18 +0200 |
---|---|---|
committer | Oleg Nesterov <oleg@redhat.com> | 2014-05-14 13:57:24 +0200 |
commit | 29dedee0e693aa113164c820395ce51446a71ace (patch) | |
tree | 7dff2a1f28a6c2d300c14fbe3674f3756f4dea7a /tools/virtio/.gitignore | |
parent | 8e02ae573e6ae86930d08662790827a938203e70 (diff) |
uprobes: Add mem_cgroup_charge_anon() into uprobe_write_opcode()
Hugh says:
The one I noticed was that it forgets all about memcg (because
it was copied from KSM, and there the replacement page has already
been charged to a memcg). See how mm/memory.c do_anonymous_page()
does a mem_cgroup_charge_anon().
Hopefully not a big problem, uprobes is a system-wide thing and only
root can insert the probes. But I agree, should be fixed anyway.
Add mem_cgroup_{un,}charge_anon() into uprobe_write_opcode(). To simplify
the error handling (and avoid the new "uncharge" label) the patch also
moves anon_vma_prepare() up before we alloc/charge the new page.
While at it fix the comment about ->mmap_sem, it is held for write.
Suggested-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Diffstat (limited to 'tools/virtio/.gitignore')
0 files changed, 0 insertions, 0 deletions