diff --git a/lib/fs.c b/lib/fs.c index 644bb486..12a4657a 100644 --- a/lib/fs.c +++ b/lib/fs.c @@ -80,13 +80,21 @@ char *find_cgroup2_mount(void) if (mount("none", mnt, CGROUP2_FS_NAME, 0, NULL)) { /* EBUSY means already mounted */ - if (errno != EBUSY) { + if (errno == EBUSY) + goto out; + + if (errno == ENODEV) { fprintf(stderr, "Failed to mount cgroup2. Are CGROUPS enabled in your kernel?\n"); - free(mnt); - return NULL; + } else { + fprintf(stderr, + "Failed to mount cgroup2: %s\n", + strerror(errno)); } + free(mnt); + return NULL; } +out: return mnt; }