Messages in this thread | | | From | Roman Gushchin <> | Subject | Re: [PATCH] mm: change memcg->oom_group access with atomic operations | Date | Mon, 20 Feb 2023 21:17:25 -0800 |
| |
> On Feb 20, 2023, at 3:06 PM, Shakeel Butt <shakeelb@google.com> wrote: > > On Mon, Feb 20, 2023 at 01:09:44PM -0800, Roman Gushchin wrote: >>> On Mon, Feb 20, 2023 at 11:16:38PM +0800, Yue Zhao wrote: >>> The knob for cgroup v2 memory controller: memory.oom.group >>> will be read and written simultaneously by user space >>> programs, thus we'd better change memcg->oom_group access >>> with atomic operations to avoid concurrency problems. >>> >>> Signed-off-by: Yue Zhao <findns94@gmail.com> >> >> Hi Yue! >> >> I'm curious, have any seen any real issues which your patch is solving? >> Can you, please, provide a bit more details. >> > > IMHO such details are not needed. oom_group is being accessed > concurrently and one of them can be a write access. At least > READ_ONCE/WRITE_ONCE is needed here.
Needed for what?
I mean it’s obviously not a big deal to put READ_ONCE()/WRITE_ONCE() here, but I struggle to imagine a scenario when it will make any difference. IMHO it’s easier to justify a proper atomic operation here, even if it’s most likely an overkill.
My question is very simple: the commit log mentions “… to avoid concurrency problems”, so I wonder what problems are these.
Also there are other similar cgroup interfaces without READ_ONCE()/WRITE_ONCE().
Thanks!
| |