Message ID | b009f4c7-f0ab-c0ec-8e83-918f47d677da@virtuozzo.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | memcg accounting from OpenVZ | expand |
On Mon, Jul 26, 2021 at 10:33 PM Vasily Averin <vvs@virtuozzo.com> wrote: > > User can create file locks for each open file and force kernel > to allocate small but long-living objects per each open file. > > It makes sense to account for these objects to limit the host's memory > consumption from inside the memcg-limited container. > > Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Reviewed-by: Shakeel Butt <shakeelb@google.com>
diff --git a/fs/locks.c b/fs/locks.c index 74b2a1d..1bc7ede 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -3056,10 +3056,12 @@ static int __init filelock_init(void) int i; flctx_cache = kmem_cache_create("file_lock_ctx", - sizeof(struct file_lock_context), 0, SLAB_PANIC, NULL); + sizeof(struct file_lock_context), 0, + SLAB_PANIC | SLAB_ACCOUNT, NULL); filelock_cache = kmem_cache_create("file_lock_cache", - sizeof(struct file_lock), 0, SLAB_PANIC, NULL); + sizeof(struct file_lock), 0, + SLAB_PANIC | SLAB_ACCOUNT, NULL); for_each_possible_cpu(i) { struct file_lock_list_struct *fll = per_cpu_ptr(&file_lock_list, i);
User can create file locks for each open file and force kernel to allocate small but long-living objects per each open file. It makes sense to account for these objects to limit the host's memory consumption from inside the memcg-limited container. Signed-off-by: Vasily Averin <vvs@virtuozzo.com> --- fs/locks.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)