[Buildroot] [PATCH] package/lxc: cgroups: initialize cpuset properly

Romain Naour romain.naour at smile.fr
Sun Mar 1 21:06:09 UTC 2020


The tests.package.test_lxc.TestLxc failure on gitlab
is similar to the issue reported by [1] and fixed by [2].

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/454255988

[1] https://github.com/NixOS/nixpkgs/issues/75467#issuecomment-569386159
[2] https://github.com/lxc/lxc/pull/3109

Signed-off-by: Romain Naour <romain.naour at smile.fr>
Cc: Jérôme Pouiller <jezz at sysmic.org>
Cc: Patrick Havelange <patrick.havelange at essensium.com>
---
 ...4-cgroups-initialize-cpuset-properly.patch | 38 +++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 package/lxc/0004-cgroups-initialize-cpuset-properly.patch

diff --git a/package/lxc/0004-cgroups-initialize-cpuset-properly.patch b/package/lxc/0004-cgroups-initialize-cpuset-properly.patch
new file mode 100644
index 0000000000..86aa708d56
--- /dev/null
+++ b/package/lxc/0004-cgroups-initialize-cpuset-properly.patch
@@ -0,0 +1,38 @@
+From 6a8a510211515824ff20699d45f6d07a84f3c02e Mon Sep 17 00:00:00 2001
+From: Christian Brauner <christian.brauner at ubuntu.com>
+Date: Sun, 28 Jul 2019 23:13:26 +0200
+Subject: [PATCH] cgroups: initialize cpuset properly
+
+Closes #3108.
+Signed-off-by: Christian Brauner <christian.brauner at ubuntu.com>
+(cherry picked from commit b31d62b847a3ee013613795094cce4acc12345ef)
+Signed-off-by: Romain Naour <romain.naour at smile.fr>
+---
+ src/lxc/cgroups/cgfsng.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/lxc/cgroups/cgfsng.c b/src/lxc/cgroups/cgfsng.c
+index 87e12d2dd..7e691d7cc 100644
+--- a/src/lxc/cgroups/cgfsng.c
++++ b/src/lxc/cgroups/cgfsng.c
+@@ -496,12 +496,12 @@ static bool cg_legacy_filter_and_set_cpus(char *path, bool am_initialized)
+ 	}
+ 
+ 	if (!flipped_bit) {
+-		DEBUG("No isolated or offline cpus present in cpuset");
+-		return true;
++		cpulist = lxc_cpumask_to_cpulist(possmask, maxposs);
++		TRACE("No isolated or offline cpus present in cpuset");
++	} else {
++		cpulist = move_ptr(posscpus);
++		TRACE("Removed isolated or offline cpus from cpuset");
+ 	}
+-	DEBUG("Removed isolated or offline cpus from cpuset");
+-
+-	cpulist = lxc_cpumask_to_cpulist(possmask, maxposs);
+ 	if (!cpulist) {
+ 		ERROR("Failed to create cpu list");
+ 		return false;
+-- 
+2.24.1
+
-- 
2.24.1



More information about the buildroot mailing list