selftests/bpf: Add per worker cgroup suffix
authorYucong Sun <sunyucong@gmail.com>
Wed, 6 Oct 2021 18:56:09 +0000 (11:56 -0700)
committerAndrii Nakryiko <andrii@kernel.org>
Fri, 8 Oct 2021 21:45:18 +0000 (14:45 -0700)
This patch make each worker use a unique cgroup base directory, thus
allowing tests that uses cgroups to run concurrently.

Signed-off-by: Yucong Sun <sunyucong@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20211006185619.364369-5-fallentree@fb.com
tools/testing/selftests/bpf/cgroup_helpers.c
tools/testing/selftests/bpf/cgroup_helpers.h

index f3daa44..8fcd448 100644 (file)
@@ -11,6 +11,7 @@
 #include <fcntl.h>
 #include <unistd.h>
 #include <ftw.h>
+#include <unistd.h>
 
 #include "cgroup_helpers.h"
 
 #define CGROUP_MOUNT_DFLT              "/sys/fs/cgroup"
 #define NETCLS_MOUNT_PATH              CGROUP_MOUNT_DFLT "/net_cls"
 #define CGROUP_WORK_DIR                        "/cgroup-test-work-dir"
-
 #define format_cgroup_path(buf, path) \
-       snprintf(buf, sizeof(buf), "%s%s%s", CGROUP_MOUNT_PATH, \
-                CGROUP_WORK_DIR, path)
+       snprintf(buf, sizeof(buf), "%s%s%d%s", CGROUP_MOUNT_PATH, \
+       CGROUP_WORK_DIR, getpid(), path)
 
 #define format_classid_path(buf)                               \
        snprintf(buf, sizeof(buf), "%s%s", NETCLS_MOUNT_PATH,   \
index 629da38..fcc9cb9 100644 (file)
@@ -26,4 +26,4 @@ int join_classid(void);
 int setup_classid_environment(void);
 void cleanup_classid_environment(void);
 
-#endif /* __CGROUP_HELPERS_H */
+#endif /* __CGROUP_HELPERS_H */
\ No newline at end of file