The commit is pushed to "branch-rh9-5.14.vz9.1.x-ovz" and will appear at 
https://src.openvz.org/scm/ovz/vzkernel.git
after ark-5.14
------>
commit b080f22dffa9d15451e48981a5a2d7c0fb8cc320
Author: Vasily Averin <v...@virtuozzo.com>
Date:   Tue Sep 28 14:16:25 2021 +0300

    ms/memcg: enable accounting for ldt_struct objects
    
    Each task can request own LDT and force the kernel to allocate up to 64Kb
    memory per-mm.
    
    There are legitimate workloads with hundreds of processes and there can be
    hundreds of workloads running on large machines.  The unaccounted memory
    can cause isolation issues between the workloads particularly on highly
    utilized machines.
    
    It makes sense to account for this objects to restrict the host's memory
    consumption from inside the memcg-limited container.
    
    Link: 
https://lkml.kernel.org/r/38010594-50fe-c06d-7cb0-d1f77ca42...@virtuozzo.com
    Signed-off-by: Vasily Averin <v...@virtuozzo.com>
    
    Acked-by: Borislav Petkov <b...@suse.de>
    Reviewed-by: Shakeel Butt <shake...@google.com>
    Cc: Alexander Viro <v...@zeniv.linux.org.uk>
    Cc: Alexey Dobriyan <adobri...@gmail.com>
    Cc: Andrei Vagin <ava...@gmail.com>
    Cc: Borislav Petkov <b...@alien8.de>
    Cc: Christian Brauner <christian.brau...@ubuntu.com>
    Cc: Dmitry Safonov <0x7f454...@gmail.com>
    Cc: "Eric W. Biederman" <ebied...@xmission.com>
    Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
    Cc: "H. Peter Anvin" <h...@zytor.com>
    Cc: Ingo Molnar <mi...@redhat.com>
    Cc: "J. Bruce Fields" <bfie...@fieldses.org>
    Cc: Jeff Layton <jlay...@kernel.org>
    Cc: Jens Axboe <ax...@kernel.dk>
    Cc: Jiri Slaby <jirisl...@kernel.org>
    Cc: Johannes Weiner <han...@cmpxchg.org>
    Cc: Kirill Tkhai <ktk...@virtuozzo.com>
    Cc: Michal Hocko <mho...@kernel.org>
    Cc: Oleg Nesterov <o...@redhat.com>
    Cc: Roman Gushchin <g...@fb.com>
    Cc: Serge Hallyn <se...@hallyn.com>
    Cc: Tejun Heo <t...@kernel.org>
    Cc: Thomas Gleixner <t...@linutronix.de>
    Cc: Vladimir Davydov <vdavydov....@gmail.com>
    Cc: Yutian Yang <ngla...@gmail.com>
    Cc: Zefan Li <lizefa...@bytedance.com>
    Signed-off-by: Andrew Morton <a...@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torva...@linux-foundation.org>
    (cherry picked from commit ec403e2ae0dfc85996aad6e944a98a16e6dfcc6d)
    https://jira.sw.ru/browse/PSBM-133990
    Signed-off-by: Vasily Averin <v...@virtuozzo.com>
---
 arch/x86/kernel/ldt.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/ldt.c b/arch/x86/kernel/ldt.c
index aa15132228da..525876e7b9f4 100644
--- a/arch/x86/kernel/ldt.c
+++ b/arch/x86/kernel/ldt.c
@@ -154,7 +154,7 @@ static struct ldt_struct *alloc_ldt_struct(unsigned int 
num_entries)
        if (num_entries > LDT_ENTRIES)
                return NULL;
 
-       new_ldt = kmalloc(sizeof(struct ldt_struct), GFP_KERNEL);
+       new_ldt = kmalloc(sizeof(struct ldt_struct), GFP_KERNEL_ACCOUNT);
        if (!new_ldt)
                return NULL;
 
@@ -168,9 +168,9 @@ static struct ldt_struct *alloc_ldt_struct(unsigned int 
num_entries)
         * than PAGE_SIZE.
         */
        if (alloc_size > PAGE_SIZE)
-               new_ldt->entries = vzalloc(alloc_size);
+               new_ldt->entries = __vmalloc(alloc_size, GFP_KERNEL_ACCOUNT | 
__GFP_ZERO);
        else
-               new_ldt->entries = (void *)get_zeroed_page(GFP_KERNEL);
+               new_ldt->entries = (void *)get_zeroed_page(GFP_KERNEL_ACCOUNT);
 
        if (!new_ldt->entries) {
                kfree(new_ldt);
_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to