Message ID | f105248d-bd21-8e6f-bdac-4f2c4792fc4b@virtuozzo.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | memcg accounting from OpenVZ | expand |
On Tue, Mar 9, 2021 at 12:04 AM Vasily Averin <vvs@virtuozzo.com> wrote: > > Objects can be created from memcg-limited tasks > but its misuse may lead to host OOM. > > Signed-off-by: Vasily Averin <vvs@virtuozzo.com> > --- > net/ipv6/ip6_fib.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c > index ef9d022..fa92ed1 100644 > --- a/net/ipv6/ip6_fib.c > +++ b/net/ipv6/ip6_fib.c > @@ -2445,7 +2445,7 @@ int __init fib6_init(void) > > fib6_node_kmem = kmem_cache_create("fib6_nodes", Can you talk a bit more about the lifetime of the object created from this kmem cache? Also who and what operation can trigger allocation? Similarly can you add this information to the remaining patches of your series as well? > sizeof(struct fib6_node), > - 0, SLAB_HWCACHE_ALIGN, > + 0, SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, > NULL); > if (!fib6_node_kmem) > goto out; > -- > 1.8.3.1 >
On Tue, Mar 09, 2021 at 01:16:13PM -0800, Shakeel Butt wrote: > On Tue, Mar 9, 2021 at 12:04 AM Vasily Averin <vvs@virtuozzo.com> wrote: > > > > Objects can be created from memcg-limited tasks > > but its misuse may lead to host OOM. > > > > Signed-off-by: Vasily Averin <vvs@virtuozzo.com> > > --- > > net/ipv6/ip6_fib.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c > > index ef9d022..fa92ed1 100644 > > --- a/net/ipv6/ip6_fib.c > > +++ b/net/ipv6/ip6_fib.c > > @@ -2445,7 +2445,7 @@ int __init fib6_init(void) > > > > fib6_node_kmem = kmem_cache_create("fib6_nodes", > > Can you talk a bit more about the lifetime of the object created from > this kmem cache? Also who and what operation can trigger allocation? The lifetime is less of a concern since we have a slab reparenting mechanism, unless it's a very short-living object.
diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c index ef9d022..fa92ed1 100644 --- a/net/ipv6/ip6_fib.c +++ b/net/ipv6/ip6_fib.c @@ -2445,7 +2445,7 @@ int __init fib6_init(void) fib6_node_kmem = kmem_cache_create("fib6_nodes", sizeof(struct fib6_node), - 0, SLAB_HWCACHE_ALIGN, + 0, SLAB_HWCACHE_ALIGN|SLAB_ACCOUNT, NULL); if (!fib6_node_kmem) goto out;
Objects can be created from memcg-limited tasks but its misuse may lead to host OOM. Signed-off-by: Vasily Averin <vvs@virtuozzo.com> --- net/ipv6/ip6_fib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)