summary refs log tree commit diff stats
path: root/results/classifier/gemma3:12b/performance/1659
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/gemma3:12b/performance/1659')
-rw-r--r--results/classifier/gemma3:12b/performance/165928
1 files changed, 28 insertions, 0 deletions
diff --git a/results/classifier/gemma3:12b/performance/1659 b/results/classifier/gemma3:12b/performance/1659
new file mode 100644
index 00000000..0dbd80df
--- /dev/null
+++ b/results/classifier/gemma3:12b/performance/1659
@@ -0,0 +1,28 @@
+
+x86 vm fails to stop on Darwin aarch64 when qemu compiled with -O1/-O2
+Description of problem:
+When compiled with `-O2` or `-O1` qemu process hangs on full VM stopping on macOS aarch64 host if `shutdown -P now` initiated from guest system.
+Steps to reproduce:
+1. Compile latest qemu version with -O2 (default value) or -O1 passed 
+2. Run qemu-system-x86_64 with ubuntu image, e.g. https://cloud-images.ubuntu.com/focal/20230215/focal-server-cloudimg-amd64.img and custom cloud-init (for user/password authentication)
+3. Wait until image is loaded, connect via vnc or provide login/password in stdio
+4. Initiate shutdown with `sudo shutdown -P now`
+5. See that VM indefinitely shutdowns
+6. Kill VM from host system with kill -9 <qemu-system-x86_64-process-pid>
+7. Recompile qemu with -O0
+8. Repeat steps 2-4
+9. See that vm successfully stopped, and qemu process exited with code 0
+Additional information:
+I've created thread dump from activity monitor with threads which qemu hanging on, attached below
+[sample-qemu-system-x86_64.txt](/uploads/119b89b7f55f4374acb9ae1f9dc2e517/sample-qemu-system-x86_64.txt)
+
+Probably there is some compiler optimisation which prevents qemu threads from receive shutdown signal or appropriate notification from another threads.
+
+The compiler version with which qemu is built:
+```bash
+% cc --version
+Apple clang version 14.0.3 (clang-1403.0.22.14.1)
+Target: arm64-apple-darwin22.4.0
+Thread model: posix
+InstalledDir: /Library/Developer/CommandLineTools/usr/bin
+```