selftests/bpf: Add test for cgroup iterator on a dead cgroup
authorHou Tao <houtao1@huawei.com>
Mon, 21 Nov 2022 07:34:40 +0000 (15:34 +0800)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 21 Nov 2022 16:40:42 +0000 (17:40 +0100)
commit8589e92675aa4727bede3f9230709624619844f3
tree0d15145fcf37e6140896fc1067e7da657872e71a
parent2a42461a88314bbeaa3dcad3d19a4bb3d9aa546f
selftests/bpf: Add test for cgroup iterator on a dead cgroup

The test closes both iterator link fd and cgroup fd, and removes the
cgroup file to make a dead cgroup before reading from cgroup iterator.
It also uses kern_sync_rcu() and usleep() to wait for the release of
start cgroup. If the start cgroup is not pinned by cgroup iterator,
reading from iterator fd will trigger use-after-free.

Signed-off-by: Hou Tao <houtao1@huawei.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Yonghong Song <yhs@fb.com>
Acked-by: Hao Luo <haoluo@google.com>
Link: https://lore.kernel.org/bpf/20221121073440.1828292-4-houtao@huaweicloud.com
tools/testing/selftests/bpf/prog_tests/cgroup_iter.c