OpenVZ used own accounting subsystem since 2001 (i.e. since v2.2.x linux kernels) and we have accounted all required kernel objects by using our own patches. When memcg was added to upstream Vladimir Davydov added accounting of some objects to upstream but did not skipped another ones. Now OpenVZ uses RHEL7-based kernels with cgroup v1 in production, and we still account "skipped" objects by our own patches just because we accounted such objects before. We're working on rebase to new kernels and we prefer to push our old patches to upstream. v2: - squashed old patch 1 "accounting for allocations called with disabled BH" with old patch 2 "accounting for fib6_nodes cache" used such kind of memory allocation - improved patch description - subsystem maintainers added to cc: Vasily Averin (8): memcg: accounting for fib6_nodes cache memcg: accounting for ip6_dst_cache memcg: accounting for fib_rules memcg: accounting for ip_fib caches memcg: accounting for fasync_cache memcg: accounting for mnt_cache entries memcg: accounting for tty_struct objects memcg: accounting for ldt_struct objects arch/x86/kernel/ldt.c | 7 ++++--- drivers/tty/tty_io.c | 4 ++-- fs/fcntl.c | 3 ++- fs/namespace.c | 5 +++-- mm/memcontrol.c | 2 +- net/core/fib_rules.c | 4 ++-- net/ipv4/fib_trie.c | 4 ++-- net/ipv6/ip6_fib.c | 2 +- net/ipv6/route.c | 2 +- 9 files changed, 18 insertions(+), 15 deletions(-) -- 1.8.3.1