Skip to content

RFE: Add the ability for slices to block specific cgroup controllers #10473

@htejun

Description

@htejun

Is your feature request related to a problem? Please describe.
systemd automatically and hierarchically enables cgroup controllers when a unit requests the usage of those controllers. Generally, enabling controllers don't cause a noticeable amount of overhead and this behavior is completely fine; however, there are cases where controller nesting can add a significant amount of overhead (e.g. cpu control). Combined with the auto-enable of controllers, this can lead to unexpected performance issues. It'd be useful if there is a way to block certain controllers from being enabled.

Describe the solution you'd like
If a slice could block controllers using a config similar to Delegate=, it'd be great. Maybe sth like DisableControllers=? We'd also need a matching system-level config so that a controller can be blocked from system root level too.

Describe alternatives you've considered

  • We could add cpu-controller specific knob at the system level to limit maximum level of nesting but it's nasty interface-wise, and something more generic could be useful for other purposes.
  • There are efforts to improve CPU controller performance but that likely is gonna take a long time and there's a pretty high level of uncertainty.

Metadata

Metadata

Assignees

No one assigned

    Labels

    RFE 🎁Request for Enhancement, i.e. a feature requestcgroupspid1

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions