[LTP] [PATCH] cgroup_dir_mk: set the umask to '0' before creating the subdir
Li Wang
liwang@redhat.com
Fri Mar 1 11:23:47 CET 2024
This is to resolve the permission issue when creating
a new subdir in the cgroup, in case of system's default
umask is 0077, this will trigger issues for LTP case.
cgroup_core01.c will report following error msg:
cgroup_core01.c:50: TBROK: openat(21</sys/fs/cgroup/memory/ltp/test-3519/child_b>, 'tasks', 2, 0): EACCES (13)
Signed-off-by: Li Wang <liwang@redhat.com>
Cc: Wei Gao <wegao@suse.com>
---
Notes:
Hi Wei, can you help confirm if this patch works for you?
lib/tst_cgroup.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/tst_cgroup.c b/lib/tst_cgroup.c
index a8a598e0e..f6afb51d6 100644
--- a/lib/tst_cgroup.c
+++ b/lib/tst_cgroup.c
@@ -361,6 +361,7 @@ static void cgroup_dir_mk(const struct cgroup_dir *const parent,
struct cgroup_dir *const new)
{
const char *dpath;
+ mode_t old_umask = umask(0);
new->dir_root = parent->dir_root;
new->dir_name = dir_name;
@@ -394,6 +395,7 @@ static void cgroup_dir_mk(const struct cgroup_dir *const parent,
opendir:
new->dir_fd = SAFE_OPENAT(parent->dir_fd, dir_name,
O_PATH | O_DIRECTORY);
+ umask(old_umask);
}
#define PATH_MAX_STRLEN 4095
--
2.40.1
More information about the ltp
mailing list