PP-810: cgroups v2 with systemd

This message is to inform the community that there is a new design document available for review:

It covers the addition of four new parameters that may be set in a forthcoming version of the PBS Pro cgroups hook. This review is time sensitive, so I ask that you respond with comments at your earliest convenience.

Thank you!

In general it looks good to me, thanks @mkaro! It might be helpful to include in interface 1 how or if this impacts the resources_available.ncpus on the vnode.

I am interested to hear from @alexis.cousein, if possible.

Thanks for the feedback @scc. I have updated the details of interface 1.

Hey @scc, I just updated the design doc to clarify the behavior of exclude_cpus. Please have a look when you get the chance.

Great, thanks for clarifying, sounds good to me.

One formatting note: the “Example:” sections in interfaces 2, 3, and 4 are all named “exclude_cpus”, should be renamed.

Thanks for catching that. They have been fixed.

Design changes for cgroups v2 looks good to me

Just a minor terminology nit: what is being discussed here is the interoperability between cgroups and systemd. v2 cgroups are not used by any major distribution right now, and are (AFAIK) only related because systemd is getting prepared to become the single writer for all cgroup-related operations. But the namespaces and controls present for cgroups are very much still v1 cgroups.