Thread (4 messages) 4 messages, 2 authors, 2021-09-20

Re: KCSAN: data-race in cgroup_rstat_flush_locked / cgroup_rstat_updated

From: Hao Sun <hidden>
Date: 2021-09-18 01:27:25
Also in: lkml

Hi Michal,

Michal Koutný [off-list ref] 于2021年9月18日周六 上午12:41写道:
Hello Hao.

On Thu, Sep 16, 2021 at 09:53:55PM +0800, Hao Sun [off-list ref] wrote:
quoted
KCSAN reported the following data race during the kernel booting when
using Healer to fuzz the latest Linux kernel.
[...]
 cgroup_rstat_cpu_pop_updated kernel/cgroup/rstat.c:139 [inline]
 [...]
 cgroup_rstat_updated+0x53/0x1b0 kernel/cgroup/rstat.c:38
FWIW, it's a "safe" race between updaters and flushers (possibly
missing the latest update(s)). This is expected as explained in
cgroup_rstat_updated() comment.
Would it be better to add a `data_race` macro to the corresponding
location so that the false report can be disabled?
See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/memory-model/Documentation/access-marking.txt#n58
for more details.
Currently, fuzzer can not test the kernel with KCSAN enabled for a
long time, because cgroups setup is the basic step before executing
any test case.

Regards
Hao
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help