I've been running Hashicorp Nomad to control the docker containers on my Unraid server for a while now, and encountered some errors when updating to the 1.7.x versions of it. The 1.7.0 version had some major updates to the way they handle cgroup version support detection, and is now failing to identify the cgroup v2 support of Unraid.
This seems to be caused by a rather odd mount configuration on Unraid. For the path `/sys/fs/cgroup` there are two mounts on top of each other:
# mount -l | grep cgroup
cgroup_root on /sys/fs/cgroup type tmpfs (rw,relatime,size=8192k,mode=755,inode64)
none on /sys/fs/cgroup type cgroup2 (rw,relatime)
These file systems are mounted in /etc/rc.d/rc.S. Comparing it to the init script in the upstream slackware sources, it seems to be different: https://mirrors.slackware.com/slackware/slackware64-15.0/source/a/sysvinit-scripts/scripts/rc.S. Can someone confirm this is a unraid-specific change? Is there some specific reason for the tmpfs mount, which seems to be unnecessary and causing my problem.
I've created a ticket on the Nomad issue tracker, link here for reference: https://github.com/hashicorp/nomad/issues/19735