>> @@ -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));
>> }
>
> How about a *switch* instead?
I did consider it. Did not make the code simpler or easier to read.