!RROtHmAaQIkiJzJZZE:nixos.org

NixOS Infrastructure

422 Members
Next Infra call: 2024-07-11, 18:00 CEST (UTC+2) | Infra operational issues backlog: https://github.com/orgs/NixOS/projects/52 | See #infra-alerts:nixos.org for real time alerts from Prometheus.132 Servers

Load older messages


SenderMessageTime
21 Oct 2021
@k900:0upti.meK900https://github.com/NixOS/nixpkgs/blob/master/nixos/lib/test-driver/test-driver.py#L95719:37:14
@k900:0upti.meK900That's weird19:37:16
@k900:0upti.meK900Also that whole thing should probably use the JSON protocol...19:37:33
@janne.hess:helsinki-systems.deJanne Heß
In reply to @baloo_:matrix.org
diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py
index e659b0c04f5..1518bf3562a 100755
--- a/nixos/lib/test-driver/test-driver.py
+++ b/nixos/lib/test-driver/test-driver.py
@@ -1021,6 +1021,7 @@ class Machine:
         assert self.process
         assert self.shell
         assert self.monitor
+        self.send_monitor_command("quit")
         self.process.terminate()
         self.shell.close()
         self.monitor.close()

I'd give this a try

Still hangs at the end
19:39:26
@k900:0upti.meK900Can you get a traceback?19:41:19
@janne.hess:helsinki-systems.deJanne Heßin python?19:41:28
@janne.hess:helsinki-systems.deJanne Heßpy-spy should be enough?19:41:34
@k900:0upti.meK900Yeah19:41:56
@janne.hess:helsinki-systems.deJanne Heßoh lol it failed more horribly now19:43:00
@janne.hess:helsinki-systems.deJanne Heß
clean up
kill machine (pid 9)
machine: sending monitor command: quit
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/nix/store/97w52ckcjnfiz89h3lh7zf1kysgfm2s8-python3-3.9.6/lib/python3.9/contextlib.py", line 135, in __exit__
    self.gen.throw(type, value, traceback)
  File "/nix/store/7v40kpl69d7ydhm2mz7wkl8q04yc8xly-nixos-test-driver/bin/.nixos-test-driver-wrapped", line 172, in nested
    yield
  File "/nix/store/7v40kpl69d7ydhm2mz7wkl8q04yc8xly-nixos-test-driver/bin/.nixos-test-driver-wrapped", line 1139, in clean_up
    machine.release()
  File "/nix/store/7v40kpl69d7ydhm2mz7wkl8q04yc8xly-nixos-test-driver/bin/.nixos-test-driver-wrapped", line 1039, in release
    self.send_monitor_command("quit")
  File "/nix/store/7v40kpl69d7ydhm2mz7wkl8q04yc8xly-nixos-test-driver/bin/.nixos-test-driver-wrapped", line 509, in send_monitor_command
    self.monitor.send(message)
BrokenPipeError: [Errno 32] Broken pipe
19:43:11
@k900:0upti.meK900Huh19:43:21
@k900:0upti.meK900That looks like QEMU is dead19:43:34
@k900:0upti.meK900But not like19:43:40
@k900:0upti.meK900All the way dead19:43:42
@k900:0upti.meK900But presumably dead enough to close the monitor socket?19:44:02
@janne.hess:helsinki-systems.deJanne Heß

it properly failed this time:

Process 43896: /nix/store/97w52ckcjnfiz89h3lh7zf1kysgfm2s8-python3-3.9.6/bin/python3 /nix/store/7v40kpl69d7ydhm2mz7wkl8q04yc8xly-nixos-test-driver/bin/.nixos-test-driver-wrapped
Python v3.9.6 (/nix/store/97w52ckcjnfiz89h3lh7zf1kysgfm2s8-python3-3.9.6/bin/python3.9)

Thread 0x7FFFF77EB340 (active)
    _shutdown (threading.py:1448)
Thread 0x7FFFF6191640 (active)
    process_serial_output (.nixos-test-driver-wrapped:931)
    run (threading.py:910)
    _bootstrap_inner (threading.py:973)
    _bootstrap (threading.py:930)
19:45:27
@k900:0upti.meK900 What if you just self.process.kill() instead of self.process.terminate()? 19:46:27
@janne.hess:helsinki-systems.deJanne Heßhmb19:46:39
@janne.hess:helsinki-systems.deJanne Heßhangs again, same stack19:48:43
@k900:0upti.meK900Does the process get killed?19:48:55
@janne.hess:helsinki-systems.deJanne HeßI already killed the runner, wait a minute19:49:04
@janne.hess:helsinki-systems.deJanne Heß(or two…)19:49:08
@k900:0upti.meK900If QEMU is ignoring SIGKILL, we're extremely fucked tbh19:49:43
@janne.hess:helsinki-systems.deJanne Heßqemu is still there19:52:12
@k900:0upti.meK900Uhh19:52:36
@k900:0upti.meK900That is not a good sign19:52:40
@k900:0upti.meK900Stack trace?19:52:47
@janne.hess:helsinki-systems.deJanne Heßqemu or python?19:52:57
@k900:0upti.meK900QEMU19:53:10
@janne.hess:helsinki-systems.deJanne Heß
/proc/44797/task/44797/stack
[<0>] do_sys_poll+0x3ab/0x5b0
[<0>] __x64_sys_ppoll+0xbc/0x150
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
/proc/44797/task/44805/stack
[<0>] futex_wait_queue_me+0xb6/0x110
[<0>] futex_wait+0xe9/0x240
[<0>] do_futex+0x174/0xbf0
[<0>] __x64_sys_futex+0x146/0x1c0
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
/proc/44797/task/44810/stack
[<0>] kvm_vcpu_block+0x58/0x2f0 [kvm]
[<0>] kvm_arch_vcpu_ioctl_run+0x6c4/0x1720 [kvm]
[<0>] kvm_vcpu_ioctl+0x211/0x5a0 [kvm]
[<0>] __x64_sys_ioctl+0x83/0xb0
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
/proc/44797/stack
[<0>] do_sys_poll+0x3ab/0x5b0
[<0>] __x64_sys_ppoll+0xbc/0x150
[<0>] do_syscall_64+0x33/0x40
[<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
19:53:31

Show newer messages


Back to Room ListRoom Version: 6