On Thu 02-02-23 12:32:57, zhaoyang.huang wrote: > From: Zhaoyang Huang <zhaoyang.huang@xxxxxxxxxx> > > Introducing memory.root_current for the memory charges on root_mem_cgroup. Charges are not currently accounted for the root memcg universally. See try_charge which is used for all user space and skmem charges. I am not 100% sure about objcg based accounting because there is no explicit check for the root memcg but this might be hidden somewhere as well. That means that the patch as is doesn't really provide and usable value. The root exemption has been removed in the past but that has been reverted due to a regression. See ce00a967377b ("mm: memcontrol: revert use of root_mem_cgroup res_counter") for more. > Signed-off-by: Zhaoyang Huang <zhaoyang.huang@xxxxxxxxxx> > --- > mm/memcontrol.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index ab457f0..158d4232 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -6681,6 +6681,11 @@ static ssize_t memory_reclaim(struct kernfs_open_file *of, char *buf, > > static struct cftype memory_files[] = { > { > + .name = "root_current", > + .flags = CFTYPE_ONLY_ON_ROOT, > + .read_u64 = memory_current_read, > + }, > + { > .name = "current", > .flags = CFTYPE_NOT_ON_ROOT, > .read_u64 = memory_current_read, > -- > 1.9.1 -- Michal Hocko SUSE Labs