summary refs log tree commit diff stats
path: root/results/classifier/gemma3:12b/kvm/897750
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/gemma3:12b/kvm/897750')
-rw-r--r--results/classifier/gemma3:12b/kvm/897750255
1 files changed, 255 insertions, 0 deletions
diff --git a/results/classifier/gemma3:12b/kvm/897750 b/results/classifier/gemma3:12b/kvm/897750
new file mode 100644
index 000000000..0a04ff5a4
--- /dev/null
+++ b/results/classifier/gemma3:12b/kvm/897750
@@ -0,0 +1,255 @@
+
+libvirt/kvm problem with disk attach/detach/reattach on running virt
+
+Release:         Ubuntu 11.10 (Oneiric)
+libvirt-bin:      0.9.2-4ubuntu15.1
+qemu-kvm:   0.14.1+noroms-0ubuntu6
+
+Summary:    With a running KVM virt,   performing an 'attach-disk',  then a 'detach-disk', then another 'attach-disk' 
+in an attempt to reattach the volume at the same point on the virt, fails, with the qemu reporting back to
+libvirt a 'Duplicate ID' error.
+
+Expected behavior:   The 2nd invocation of 'attach-disk' should have succeeded
+Actual behavior:         Duplicate ID error reported
+
+
+I believe this is most likely a qemu-kvm issue, as the DOM  kvm spits back at libvirt after the 'detach-disk'
+does not show the just-detached disk.   There is some kind of registry/lookup for devices in qemu-kvm
+and for whatever reason, the entry for the disk does not get removed when it is detached from the
+virt.   Specifically, the error gets reported at the 2nd attach-disk attempt from:
+  
+  qemu-option.c:qemu_opts_create:697
+
+684 QemuOpts *qemu_opts_create(QemuOptsList *list, const char *id, int fail_if_exists)                                                  
+685 {                                                                                                                                   
+686     QemuOpts *opts = NULL;                                                                                                          
+687                                                                                                                                     
+688     if (id) {                                                                                                                       
+689         if (!id_wellformed(id)) {                                                                                                   
+690             qerror_report(QERR_INVALID_PARAMETER_VALUE, "id", "an identifier");                                                     
+691             error_printf_unless_qmp("Identifiers consist of letters, digits, '-', '.', '_', starting with a letter.\n");            
+692             return NULL;                                                                                                            
+693         }                                                                                                                           
+694         opts = qemu_opts_find(list, id);                                                                                            
+695         if (opts != NULL) {                                                                                                         
+696             if (fail_if_exists) {                                                                                                   
+697                 qerror_report(QERR_DUPLICATE_ID, id, list->name);           <<<< ====== HERE ===========                                                          
+698                 return NULL;                                                                                                        
+699             } else {                                                                                                                
+700                 return opts;                                                                                                        
+701             }                                                                                                                       
+702         }                                                                                                                           
+703     }                                                                                                                               
+704     opts = qemu_mallocz(sizeof(*opts));                                                                                             
+705     if (id) {                                                                                                                       
+706         opts->id = qemu_strdup(id);                                                                                                 
+707     }                                                                                                                               
+708     opts->list = list;                                                                                                              
+709     loc_save(&opts->loc);                                                                                                           
+710     QTAILQ_INIT(&opts->head);                                                                                                       
+711     QTAILQ_INSERT_TAIL(&list->head, opts, next);                                                                                    
+712     return opts;                                                                                                                    
+713 }                                                                                                                                   
+
+========================================
+Output of my  attach/detach/attach
+========================================
+virsh # attach-disk base1 /var/lib/libvirt/images/extrastorage.img vdb
+Disk attached successfully
+
+virsh # dumpxml base1
+<domain type='kvm' id='2'>
+  <name>base1</name>
+  <uuid>9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</uuid>
+  <memory>1048576</memory>
+  <currentMemory>1048576</currentMemory>
+  <vcpu>2</vcpu>
+  <os>
+    <type arch='x86_64' machine='pc-0.14'>hvm</type>
+    <boot dev='hd'/>
+  </os>
+  <features>
+    <acpi/>
+    <apic/>
+    <pae/>
+  </features>
+  <cpu match='exact'>
+    <model>Opteron_G3</model>
+    <vendor>AMD</vendor>
+    <feature policy='require' name='skinit'/>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='mmxext'/>
+    <feature policy='require' name='fxsr_opt'/>
+    <feature policy='require' name='cr8legacy'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='3dnowprefetch'/>
+    <feature policy='require' name='3dnowext'/>
+    <feature policy='require' name='wdt'/>
+    <feature policy='require' name='extapic'/>
+    <feature policy='require' name='pdpe1gb'/>
+    <feature policy='require' name='osvw'/>
+    <feature policy='require' name='cmp_legacy'/>
+    <feature policy='require' name='3dnow'/>
+  </cpu>
+  <clock offset='utc'/>
+  <on_poweroff>destroy</on_poweroff>
+  <on_reboot>restart</on_reboot>
+  <on_crash>restart</on_crash>
+  <devices>
+    <emulator>/usr/bin/kvm</emulator>
+    <disk type='file' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source file='/dev/rbd1'/>
+      <target dev='vda' bus='virtio'/>
+      <alias name='virtio-disk0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
+    </disk>
+    <disk type='block' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source dev='/var/lib/libvirt/images/extrastorage.img'/>
+      <target dev='vdb' bus='virtio'/>
+      <alias name='virtio-disk1'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
+    </disk>
+    <controller type='ide' index='0'>
+      <alias name='ide0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
+    </controller>
+    <interface type='bridge'>
+      <mac address='52:54:00:a2:c1:2d'/>
+      <source bridge='br0'/>
+      <target dev='vnet0'/>
+      <model type='virtio'/>
+      <alias name='net0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
+    </interface>
+    <serial type='pty'>
+      <source path='/dev/pts/1'/>
+      <target port='0'/>
+      <alias name='serial0'/>
+    </serial>
+    <console type='pty' tty='/dev/pts/1'>
+      <source path='/dev/pts/1'/>
+      <target type='serial' port='0'/>
+      <alias name='serial0'/>
+    </console>
+    <input type='mouse' bus='ps2'/>
+    <graphics type='vnc' port='5900' autoport='yes'/>
+    <sound model='ich6'>
+      <alias name='sound0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
+    </sound>
+    <video>
+      <model type='cirrus' vram='9216' heads='1'/>
+      <alias name='video0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
+    </video>
+    <memballoon model='virtio'>
+      <alias name='balloon0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
+    </memballoon>
+  </devices>
+  <seclabel type='dynamic' model='apparmor'>
+    <label>libvirt-9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</label>
+    <imagelabel>libvirt-9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</imagelabel>
+  </seclabel>
+</domain>
+
+virsh # detach-disk base1 vdb
+Disk detached successfully
+
+virsh # dumpxml base1
+<domain type='kvm' id='2'>
+  <name>base1</name>
+  <uuid>9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</uuid>
+  <memory>1048576</memory>
+  <currentMemory>1048576</currentMemory>
+  <vcpu>2</vcpu>
+  <os>
+    <type arch='x86_64' machine='pc-0.14'>hvm</type>
+    <boot dev='hd'/>
+  </os>
+  <features>
+    <acpi/>
+    <apic/>
+    <pae/>
+  </features>
+  <cpu match='exact'>
+    <model>Opteron_G3</model>
+    <vendor>AMD</vendor>
+    <feature policy='require' name='skinit'/>
+    <feature policy='require' name='vme'/>
+    <feature policy='require' name='mmxext'/>
+    <feature policy='require' name='fxsr_opt'/>
+    <feature policy='require' name='cr8legacy'/>
+    <feature policy='require' name='ht'/>
+    <feature policy='require' name='3dnowprefetch'/>
+    <feature policy='require' name='3dnowext'/>
+    <feature policy='require' name='wdt'/>
+    <feature policy='require' name='extapic'/>
+    <feature policy='require' name='pdpe1gb'/>
+    <feature policy='require' name='osvw'/>
+    <feature policy='require' name='cmp_legacy'/>
+    <feature policy='require' name='3dnow'/>
+  </cpu>
+  <clock offset='utc'/>
+  <on_poweroff>destroy</on_poweroff>
+  <on_reboot>restart</on_reboot>
+  <on_crash>restart</on_crash>
+  <devices>
+    <emulator>/usr/bin/kvm</emulator>
+    <disk type='file' device='disk'>
+      <driver name='qemu' type='raw'/>
+      <source file='/dev/rbd1'/>
+      <target dev='vda' bus='virtio'/>
+      <alias name='virtio-disk0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
+    </disk>
+    <controller type='ide' index='0'>
+      <alias name='ide0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
+    </controller>
+    <interface type='bridge'>
+      <mac address='52:54:00:a2:c1:2d'/>
+      <source bridge='br0'/>
+      <target dev='vnet0'/>
+      <model type='virtio'/>
+      <alias name='net0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
+    </interface>
+    <serial type='pty'>
+      <source path='/dev/pts/1'/>
+      <target port='0'/>
+      <alias name='serial0'/>
+    </serial>
+    <console type='pty' tty='/dev/pts/1'>
+      <source path='/dev/pts/1'/>
+      <target type='serial' port='0'/>
+      <alias name='serial0'/>
+    </console>
+    <input type='mouse' bus='ps2'/>
+    <graphics type='vnc' port='5900' autoport='yes'/>
+    <sound model='ich6'>
+      <alias name='sound0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
+    </sound>
+    <video>
+      <model type='cirrus' vram='9216' heads='1'/>
+      <alias name='video0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
+    </video>
+    <memballoon model='virtio'>
+      <alias name='balloon0'/>
+      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
+    </memballoon>
+  </devices>
+  <seclabel type='dynamic' model='apparmor'>
+    <label>libvirt-9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</label>
+    <imagelabel>libvirt-9ebebe7f-7dfa-4735-a80c-c19ebe4e1459</imagelabel>
+  </seclabel>
+</domain>
+
+virsh # attach-disk base1 /var/lib/libvirt/images/extrastorage.img vdb
+error: Failed to attach disk
+error: operation failed: adding virtio-blk-pci,bus=pci.0,addr=0x8,drive=drive-virtio-disk1,id=virtio-disk1 device failed: Duplicate ID 'virtio-disk1' for device
+======================================================
\ No newline at end of file