summary refs log tree commit diff stats
path: root/results/classifier/gemma3:12b/boot/1516
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/gemma3:12b/boot/1516')
-rw-r--r--results/classifier/gemma3:12b/boot/151640
1 files changed, 40 insertions, 0 deletions
diff --git a/results/classifier/gemma3:12b/boot/1516 b/results/classifier/gemma3:12b/boot/1516
new file mode 100644
index 00000000..d267e8ed
--- /dev/null
+++ b/results/classifier/gemma3:12b/boot/1516
@@ -0,0 +1,40 @@
+
+QEMU does not reload kernel image on guest reboot (direct kernel boot)
+Description of problem:
+I am using virtiofs as root filesystem with QEMU direct kernel boot. The kernel is loaded from the guests directory structure that is exported from the host.
+
+The problem is that QEMU does not reload the kernel image file from disk during a guest reboot. This means it is not possible to update the kernel from inside the guest and do a simple reboot to load it. A full power cycle of the guest is required to load the updated kernel image.
+Steps to reproduce:
+1. Migrate a Linux guest to virtiofs as root fs. 
+2. Enable QEMU direct kernel boot and point to guest's kernel in the exported root filesystem. 
+3. Boot. 
+4. Update the kernel inside the guest. Overwrite the existing kernel image
+5. Issue `reboot` inside the guest. 
+6. When the guest reboots, the old kernel is still booted, even though the image file was overwritten. 
+7. Issue `poweroff` inside the guest. 
+8. Issue `virsh start <guest-vm>`
+9. Now the new kernel image is booted.
+Additional information:
+XML:
+```
+<type arch='x86_64' machine='pc-q35-7.0'>hvm</type>
+    <kernel>/media/vm/libvirt/images/alpine-q/root/boot/vmlinuz-virt</kernel>
+    <initrd>/media/vm/libvirt/images/alpine-q/root/boot/initramfs-virt</initrd>
+    <cmdline>rootfstype=virtiofs root=root rw</cmdline>
+    <boot dev='hd'/>
+    <bootmenu enable='no'/>
+  </os>
+
+...
+
+    <filesystem type='mount' accessmode='passthrough'>
+      <driver type='virtiofs'/>
+      <binary path='/usr/libexec/virtiofsd' xattr='on'>
+        <cache mode='always'/>
+        <lock posix='on' flock='on'/>
+      </binary>
+      <source dir='/media/vm/libvirt/images/alpine-q/root'/>
+      <target dir='root'/>
+      <address type='pci' domain='0x0000' bus='0x09' slot='0x00' function='0x0'/>
+    </filesystem>
+```