!RROtHmAaQIkiJzJZZE:nixos.org

NixOS Infrastructure

387 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.119 Servers

Load older messages


SenderMessageTime
21 Oct 2021
@janne.hess:helsinki-systems.deJanne Heß I also outlined the flakyness that you mentioned, K900 without rewriting the entire function ;) 19:02:39
@janne.hess:helsinki-systems.deJanne Heß * I also fixed the flakyness that you mentioned, K900 without rewriting the entire function ;) 19:02:44
@baloo_:matrix.orgbaloo(qemu is in uninterruptible sleep, and dump the kernel stack might prove useful)19:02:47
@k900:0upti.meK900Which one?19:02:50
@baloo_:matrix.orgbaloo * (qemu is in uninterruptible sleep, and dumping the kernel stack might prove useful)19:02:55
@janne.hess:helsinki-systems.deJanne Heßhttps://github.com/NixOS/nixpkgs/pull/14249819:03:13
@janne.hess:helsinki-systems.deJanne Heßthis one19:03:14
@k900:0upti.meK900Oh yeah nice19:03:30
@k900:0upti.meK900I was less going to rewrite that particular function19:04:15
@k900:0upti.meK900And more going to rewrite the whole damn thing19:04:20
@k900:0upti.meK900But that is nice19:04:23
@janne.hess:helsinki-systems.deJanne Heßokay back at the end of the test script19:07:59
@janne.hess:helsinki-systems.deJanne Heßso what's the idea what I should do?19:08:14
@k900:0upti.meK900
In reply to @baloo_:matrix.org
may I suggest find /proc/$(pidof qemu)/ -name stack -print -exec cat {} \; as well?
This is probably a good start
19:13:47
@janne.hess:helsinki-systems.deJanne Heß
In reply to @baloo_:matrix.org
may I suggest find /proc/$(pidof qemu)/ -name stack -print -exec cat {} \; as well?
/proc/41543/task/41543/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/41543/task/41551/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/41543/task/41556/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/41543/task/41704/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/41543/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:24:53
@baloo_:matrix.orgbalooNot entirely sure I read the test driver correctly but, we’re just sending it a sigterm right?19:30:44
@baloo_:matrix.orgbalooone option would be to just SIGKILL, which should work and is just fine. (we don't care about the consistency of any open file, they are either readonly or about to be deleted)19:32:07
@k900:0upti.meK900Yes19:32:08
@k900:0upti.meK900I find it weird that it seems to lock up when sigterm'd19:32:29
@k900:0upti.meK900On one hand, we don't care, and it's probably qemu's fault19:32:36
@k900:0upti.meK900 On the other hand, it really shouldn't do that 19:32:40
@baloo_:matrix.orgbaloo

one other is to ask qemu to quit like:

echo "quit" | socat STDIO UNIX-CONNECT:./console.pipe

with qemu started like:

-mon chardev=con0,mode=readline \
    -chardev socket,id=con0,path=./console.pipe,server,nowait \
19:32:59
@k900:0upti.meK900There's already a socket for that19:33:18
@k900:0upti.meK900It's what all the commands run through19:33:23
@baloo_:matrix.orgbaloothe socket the commands run through is the serial console of the inner vm19:33:49
@baloo_:matrix.orgbaloothis is the monitor socket of qemu itself19:33:58
@k900:0upti.meK900There's a second socket for the monitor too19:34:02
@baloo_:matrix.orgbaloo
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

19:36:41
@janne.hess:helsinki-systems.deJanne HeßI'll do that19:36:57
@k900:0upti.meK900https://github.com/NixOS/nixpkgs/blob/master/nixos/lib/test-driver/test-driver.py#L95719:37:14

There are no newer messages yet.


Back to Room ListRoom Version: 6