summaryrefslogtreecommitdiffhomepage
path: root/test/util/cgroup_util.h
diff options
context:
space:
mode:
authorRahat Mahmood <rahat@google.com>2021-05-14 11:06:07 -0700
committergVisor bot <gvisor-bot@google.com>2021-05-14 11:07:57 -0700
commit78ae3db1a39c0cd925c6b75807fa1dc76ba99986 (patch)
treef4efaef41e425289ed253596c8e632431e21fdc2 /test/util/cgroup_util.h
parent2b457d9ee9ba50da4a9208d957053fac2c77932d (diff)
Fix cgroup hierarchy registration.
Previously, registration was racy because we were publishing hierarchies in the registry without fully initializing the underlying filesystem. This led to concurrent mount(2)s discovering the partially intialized filesystems and dropping the final refs on them which cause them to be freed prematurely. Reported-by: syzbot+13f54e77bdf59f0171f0@syzkaller.appspotmail.com Reported-by: syzbot+2c7f0a9127ac6a84f17e@syzkaller.appspotmail.com PiperOrigin-RevId: 373824552
Diffstat (limited to 'test/util/cgroup_util.h')
-rw-r--r--test/util/cgroup_util.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/test/util/cgroup_util.h b/test/util/cgroup_util.h
index b797a8b24..e3f696a89 100644
--- a/test/util/cgroup_util.h
+++ b/test/util/cgroup_util.h
@@ -83,6 +83,8 @@ class Mounter {
PosixError Unmount(const Cgroup& c);
+ void release(const Cgroup& c);
+
private:
// The destruction order of these members avoids errors during cleanup. We
// first unmount (by executing the mounts_ cleanups), then delete the