|
|
6136c1 |
From af9f03ba48dd75be8c6a923f70da9804b3a3a2c3 Mon Sep 17 00:00:00 2001
|
|
|
6136c1 |
From: Pavel Hrdina <phrdina@redhat.com>
|
|
|
6136c1 |
Date: Wed, 25 Nov 2020 09:05:36 +0100
|
|
|
6136c1 |
Subject: [PATCH] cgroup: Also set blkio.bfq.weight
|
|
|
6136c1 |
|
|
|
6136c1 |
Commit [1] added a workaround when unified cgroups are used but missed
|
|
|
6136c1 |
legacy cgroups where there is the same issue.
|
|
|
6136c1 |
|
|
|
6136c1 |
[1] <https://github.com/systemd/systemd/commit/2dbc45aea747f25cc1c3848fded2ec0062f96bcf>
|
|
|
6136c1 |
|
|
|
6136c1 |
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
|
|
|
6136c1 |
(cherry picked from commit 35e7a62ca32a30169a94693b831e53c832251984)
|
|
|
6136c1 |
|
|
|
6136c1 |
Resolves: #1657810
|
|
|
6136c1 |
---
|
|
|
6136c1 |
src/core/cgroup.c | 8 ++++++++
|
|
|
6136c1 |
1 file changed, 8 insertions(+)
|
|
|
6136c1 |
|
|
|
6136c1 |
diff --git a/src/core/cgroup.c b/src/core/cgroup.c
|
|
|
6136c1 |
index f1ce070f9a..71e30fd4db 100644
|
|
|
6136c1 |
--- a/src/core/cgroup.c
|
|
|
6136c1 |
+++ b/src/core/cgroup.c
|
|
|
6136c1 |
@@ -1063,6 +1063,14 @@ static void cgroup_context_apply(
|
|
|
6136c1 |
log_unit_full(u, IN_SET(r, -ENOENT, -EROFS, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
|
|
|
6136c1 |
"Failed to set blkio.weight: %m");
|
|
|
6136c1 |
|
|
|
6136c1 |
+ /* FIXME: drop this when distro kernels properly support BFQ through "blkio.weight"
|
|
|
6136c1 |
+ * See also: https://github.com/systemd/systemd/pull/13335 */
|
|
|
6136c1 |
+ xsprintf(buf, "%" PRIu64 "\n", weight);
|
|
|
6136c1 |
+ r = cg_set_attribute("blkio", path, "blkio.bfq.weight", buf);
|
|
|
6136c1 |
+ if (r < 0)
|
|
|
6136c1 |
+ log_unit_full(u, IN_SET(r, -ENOENT, -EROFS, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
|
|
|
6136c1 |
+ "Failed to set blkio.bfq.weight: %m");
|
|
|
6136c1 |
+
|
|
|
6136c1 |
if (has_io) {
|
|
|
6136c1 |
CGroupIODeviceWeight *w;
|
|
|
6136c1 |
|