[Devel] [PATCH RH9] mm/memcg: limit page cache in memcg hack

2021-10-18 Thread Alexander Mikhalitsyn
From: Andrey Ryabinin Add new memcg file - memory.cache.limit_in_bytes. Used to limit page cache usage in cgroup. https://jira.sw.ru/browse/PSBM-77547 Signed-off-by: Andrey Ryabinin khorenko@: usecase: imagine a system service which anon memory you don't want to limit (in our case it's a vSto

[Devel] [PATCH] mm/memcg: limit page cache in memcg hack

2021-10-18 Thread Alexander Mikhalitsyn
From: Andrey Ryabinin Add new memcg file - memory.cache.limit_in_bytes. Used to limit page cache usage in cgroup. https://jira.sw.ru/browse/PSBM-77547 Signed-off-by: Andrey Ryabinin khorenko@: usecase: imagine a system service which anon memory you don't want to limit (in our case it's a vSto

[Devel] [PATCH RH9 4/6] ve/cgroup: Move release_agent from system_wq to per-ve workqueues

2021-10-18 Thread Pavel Tikhomirov
From: Valeriy Vdovin Each VE should execute release agent notifications within it's own workqueue. This way we achieve a more fine-grained control over release_agent work flushing at VE destruction. Short history of the patch: https://jira.sw.ru/browse/PSBM-83887 Signed-off-by: Valeriy Vdovin

[Devel] [PATCH RH9 6/6] ve/cgroup: Set release_agent_path for root cgroups separately

2021-10-18 Thread Pavel Tikhomirov
From: Valeriy Vdovin Previous patches already switched release agent binary calling mechanism to call the binary in ve. Now we need to switch the binary path to per-ve path. So we store release agent path in ve_ra_data structures in per-ve ve->ra_data_list. Short history of the patch: Signed-of

[Devel] [PATCH RH9 0/6] part 18: port release agent virtualization

2021-10-18 Thread Pavel Tikhomirov
Patches are massively reworked, see inpatch comments. https://jira.sw.ru/browse/PSBM-134002 Pavel Tikhomirov (1): ve/cgroup: fix cgroup_mark_ve_roots naming Valeriy Vdovin (5): cgroup/cfs: added 'activate' option to cgroup_add_file ve/cgroup: Implement per-ve workqueue ve/cgroup: Move re

[Devel] [PATCH RH9 2/6] cgroup/cfs: added 'activate' option to cgroup_add_file

2021-10-18 Thread Pavel Tikhomirov
From: Valeriy Vdovin In kernfs files get created in 'deactivated' state, which means they are not visible. Add option to activate the file after creation immediately making it visible in the parent directory. Will be used when adding release agent files to ve cgroup roots. Signed-off-by: Valeriy

[Devel] [PATCH RH9 1/6] ve/cgroup: fix cgroup_mark_ve_roots naming

2021-10-18 Thread Pavel Tikhomirov
Let's use proper English, plural nouns should have -s ending. We mark roots for many container cgroups not for just one root. We already have -s in "cgroup_unmark_ve_roots", let's be consistent. https://jira.sw.ru/browse/PSBM-134002 Fixes: 907c1e6cd67f ("cgroup: Mark cgroup CGRP_VE_ROOT") Signed-o

[Devel] [PATCH RH9 5/6] ve/cgroup: Private per-cgroup-root data container

2021-10-18 Thread Pavel Tikhomirov
From: Valeriy Vdovin To save release agent binary path per-ve we need to have some place to store it, ve root cgroups are already linked to ve via cgroup->ve_owner and ve->ve_ns->cgroup_ns->root_cset, so we can put release agent data to ve. Also we need to have one path per cgroup_root as it prev

[Devel] [PATCH RH9 3/6] ve/cgroup: Implement per-ve workqueue

2021-10-18 Thread Pavel Tikhomirov
From: Valeriy Vdovin Per-ve workqueue is started at ve cgroup start before ve->is_running is set to true, it is stopped at ve cgroup stop after ve->is_running is set to false and is guarded via synchronize_rcu, stop also implies waiting for all queued and yet unfinished works to finish. So the u

[Devel] [PATCH] binfmt_misc: fix mount after umount in CT

2021-10-18 Thread Nikita Yushchenko
The assumption that bm_fill_super() is not called for the second time for CT is wrong: umount operation clears sb->s_root, which causes vfs_get_super() to call fill_super again on the next mount. Make bm_fill_super() handle multiple-calls corrently: - initialize bm_data and set ve->binfmt_misc onl

Re: [Devel] [PATCH] binfmt_misc: fix mount after umount in CT

2021-10-18 Thread Konstantin Khorenko
vz7/vz8/vz9? -- Best regards, Konstantin Khorenko, Virtuozzo Linux Kernel Team On 18.10.2021 19:51, Nikita Yushchenko wrote: The assumption that bm_fill_super() is not called for the second time for CT is wrong: umount operation clears sb->s_root, which causes vfs_get_super() to call fill_supe

Re: [Devel] [PATCH] binfmt_misc: fix mount after umount in CT

2021-10-18 Thread Nikita Yushchenko
It shall be [PATCH vz8] - sorry for missing that. vz7/vz8/vz9? -- Best regards, Konstantin Khorenko, Virtuozzo Linux Kernel Team On 18.10.2021 19:51, Nikita Yushchenko wrote: The assumption that bm_fill_super() is not called for the second time for CT is wrong: umount operation clears sb->s_