Messages in this thread | | | Date | Wed, 21 May 2008 21:24:08 -0700 | From | Andrew Morton <> | Subject | Re: [-mm][PATCH 4/4] Add memrlimit controller accounting and control (v5) |
| |
On Wed, 21 May 2008 21:00:12 +0530 Balbir Singh <balbir@linux.vnet.ibm.com> wrote:
> > This patch adds support for accounting and control of virtual address space > limits. The accounting is done via the rlimit_cgroup_(un)charge_as functions. > The core of the accounting takes place during fork time in copy_process(), > may_expand_vm(), remove_vma_list() and exit_mmap(). > > Changelog v5->v4 > > Move specific hooks in code to insert_vm_struct > Use mmap_sem to protect mm->owner from changing and mm->owner from > changing cgroups. > > ... > > + * brk(), sbrk()), stack expansion, mremap(), etc - called with > + * mmap_sem held. > + * decreasing - called with mmap_sem held. > + * This callback is called with mmap_sem held
It's good to document the locking prerequisites but for rwsems, one should specify whether it must be held for reading or for writing.
Of course, down_write() is a superset of down_read(), so if it's "held for reading" then either mode-of-holding is OK. But it's best to spell all that out.
| |