From: Mike Yuan Date: Sat, 5 Jul 2025 23:57:51 +0000 (+0200) Subject: core/cgroup: workaround for kernel < 5.4 is now irrelevant X-Git-Tag: v258-rc1~147^2~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=00c4851af06fb6fb8a4d8386b0ea14445f2016c7;p=thirdparty%2Fsystemd.git core/cgroup: workaround for kernel < 5.4 is now irrelevant --- diff --git a/src/core/cgroup.c b/src/core/cgroup.c index ea2d95dfe7f..60b77346949 100644 --- a/src/core/cgroup.c +++ b/src/core/cgroup.c @@ -1188,7 +1188,6 @@ static uint64_t cgroup_context_io_weight(CGroupContext *c, ManagerState state) { } static int set_bfq_weight(Unit *u, const char *controller, dev_t dev, uint64_t io_weight) { - static bool warned = false; char buf[DECIMAL_STR_MAX(dev_t)*2+2+DECIMAL_STR_MAX(uint64_t)+STRLEN("\n")]; const char *p; uint64_t bfq_weight; @@ -1213,18 +1212,7 @@ static int set_bfq_weight(Unit *u, const char *controller, dev_t dev, uint64_t i xsprintf(buf, "%" PRIu64 "\n", bfq_weight); r = cg_set_attribute(controller, crt->cgroup_path, p, buf); - - /* FIXME: drop this when kernels prior - * 795fe54c2a82 ("bfq: Add per-device weight") v5.4 - * are not interesting anymore. Old kernels will fail with EINVAL, while new kernels won't return - * EINVAL on properly formatted input by us. Treat EINVAL accordingly. */ - if (r == -EINVAL && major(dev) > 0) { - if (!warned) { - log_unit_warning(u, "Kernel version does not accept per-device setting in %s.", p); - warned = true; - } - r = -EOPNOTSUPP; /* mask as unconfigured device */ - } else if (r >= 0 && io_weight != bfq_weight) + if (r >= 0 && io_weight != bfq_weight) log_unit_debug(u, "%s=%" PRIu64 " scaled to %s=%" PRIu64, major(dev) > 0 ? "IODeviceWeight" : "IOWeight", io_weight, p, bfq_weight);