On 4/28/22 01:47, Shakeel Butt wrote: > On Wed, Apr 27, 2022 at 3:43 PM Vasily Averin <vvs@xxxxxxxxxx> wrote: >> >> On 4/27/22 18:06, Shakeel Butt wrote: >>> On Wed, Apr 27, 2022 at 5:22 AM Michal Koutný <mkoutny@xxxxxxxx> wrote: >>>> >>>> On Tue, Apr 26, 2022 at 10:23:32PM -0700, Shakeel Butt <shakeelb@xxxxxxxxxx> wrote: >>>>> [...] >>>>>> >>>>>> +static inline struct mem_cgroup *get_mem_cgroup_from_obj(void *p) >>>>>> +{ >>>>>> + struct mem_cgroup *memcg; >>>>>> + >>>>> >>>>> Do we need memcg_kmem_enabled() check here or maybe >>>>> mem_cgroup_from_obj() should be doing memcg_kmem_enabled() instead of >>>>> mem_cgroup_disabled() as we can have "cgroup.memory=nokmem" boot >>>>> param. >> >> Shakeel, unfortunately I'm not ready to answer this question right now. >> I even did not noticed that memcg_kmem_enabled() and mem_cgroup_disabled() >> have a different nature. >> If you have no objections I'm going to keep this place as is and investigate >> this question later. >> > > Patch is good as is. Just add the documentation to the functions in > the next version and you can keep the ACKs. I noticed that the kernel already has a function get_mem_cgroup_from_objcg(), the name of which is very similar to my new function get_mem_cgroup_from_obj(). Maybe it's better to rename my function to get_mem_cgroup_from_ptr()? Thank you, Vasily Averin