** Description changed:

+ [Impact]
+ 
  WSL 24.04 / systemd 255.4-1ubuntu8
  
  * Upstream report: https://github.com/microsoft/WSL/issues/8879
  * Upstream PR: https://github.com/systemd/systemd/pull/32534
  * Upstream commit: 
https://github.com/systemd/systemd-stable/commit/8e57759d6d80ef772d8e17a4559a6797e09af93a.patch
  
+ In WSL, the cgroup.procs PID list for some reason contain a ton of zeros 
everywhere from unmapped PIDs.
+ Whenever cg_read_pid encounters such a zero, it throws an error. This makes 
systemd near unusable inside of WSL.
+ 
+ [Test Plan]
+ 
+ On WSL running Ubuntu 24.04, run systemctl status. On an affected
+ system, there will be an error saying "Failed to dump process list
+ [...]". On a patched system, the command should work as expected.
+ 
+ [Where problems could occur]
+ 
+ This patch adds a flags parameter to cg_read_pid(), and adds a new flag,
+ CGROUP_DONT_SKIP_UNMAPPED. The new default behavior of cg_read_pid() is
+ that unmapped pids *will* be skipped. When this flag is set in a call to
+ cg_read_pid(), encountering an unmapped pid will leave the caller to
+ deal with it.
+ 
+ There are several places where cg_read_pid() is called in systemd, so
+ there are several places where this would come up. If we did see
+ problems, it would likely because a caller is skipping the unmapped pids
+ when it should not be. For callers that do not skip (i.e. pass
+ CGROUP_DONT_SKIP_UNMAPPED), they either handle it cleanly, or propagate
+ a different error to signal this case.
+ 
+ [Original Description]
+ 
+ WSL 24.04 / systemd 255.4-1ubuntu8
+ 
+ * Upstream report: https://github.com/microsoft/WSL/issues/8879
+ * Upstream PR: https://github.com/systemd/systemd/pull/32534
+ * Upstream commit: 
https://github.com/systemd/systemd-stable/commit/8e57759d6d80ef772d8e17a4559a6797e09af93a.patch
  
  In WSL, the cgroup.procs PID list for some reason contain a ton of zeros 
everywhere from unmapped PIDs.
  Whenever cg_read_pid encounters such a zero, it throws an error. This makes 
systemd near unusable inside of WSL.
- 
  
  # Test Case
  install Ubuntu WSL 24.04 from the MS STore. This version has systemd already 
enabled.
  
  ## Expected Behavior
  systemctl status command to work
  
  ## Actual Behavior
  toor@XPS:~$ systemctl status
  Failed to dump process list for 'XPS', ignoring: Input/output error
  ● XPS
-     State: degraded
-     Units: 318 loaded (incl. loaded aliases)
-      Jobs: 0 queued
-    Failed: 1 units
-     Since: Sat 2022-09-24 08:43:15 PDT; 14min ago
-   systemd: 251.4-1ubuntu6
-   Tainted: cgroupsv1
-    CGroup: /
+     State: degraded
+     Units: 318 loaded (incl. loaded aliases)
+      Jobs: 0 queued
+    Failed: 1 units
+     Since: Sat 2022-09-24 08:43:15 PDT; 14min ago
+   systemd: 251.4-1ubuntu6
+   Tainted: cgroupsv1
+    CGroup: /

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2067922

Title:
  on WSL systemd status fails output

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/2067922/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to