We keep the same logic as before: once the iothread option is selected, the default SCSI controller is switched to virtio-scsi-single until iothread is unselected again. --- www/manager6/qemu/HDEdit.js | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-)
diff --git a/www/manager6/qemu/HDEdit.js b/www/manager6/qemu/HDEdit.js index 075ad667..14ee0b50 100644 --- a/www/manager6/qemu/HDEdit.js +++ b/www/manager6/qemu/HDEdit.js @@ -19,9 +19,13 @@ Ext.define('PVE.qemu.HDInputPanel', { var value = field.getValue(); var allowIOthread = value.match(/^(virtio|scsi)/); - this.lookup('iothread').setDisabled(!allowIOthread); + var iothread = this.lookup('iothread'); + iothread.setDisabled(!allowIOthread); if (!allowIOthread) { - this.lookup('iothread').setValue(false); + // prevent event loop + iothread.suspendEvent('change'); + iothread.setValue(false); + iothread.resumeEvent('change'); } var scsi = value.match(/^scsi/); @@ -74,6 +78,15 @@ Ext.define('PVE.qemu.HDInputPanel', { me.hdsizesel.setVisible(true); } } + }, + 'field[name=iothread]' : { + change: function(f, value) { + if (!this.getView().insideWizard) { + return; + } + this.lookupReference('scsiType') + .setValue(value ? 'virtio-scsi-single' : 'virtio-scsi-pci'); + } } } }, @@ -116,10 +129,6 @@ Ext.define('PVE.qemu.HDInputPanel', { if (values.iothread) { me.drive.iothread = 'on'; - // do not silently change a VM-wide option after creating it - if (me.insideWizard) { - params.scsihw = 'virtio-scsi-single'; - } } else { delete me.drive.iothread; } @@ -130,6 +139,10 @@ Ext.define('PVE.qemu.HDInputPanel', { delete me.drive.cache; } + if (values.scsihw) { + params.scsihw = values.scsihw; + } + params[confid] = PVE.Parser.printQemuDrive(me.drive); return params; @@ -198,9 +211,12 @@ Ext.define('PVE.qemu.HDInputPanel', { }); me.column1.push(me.bussel); me.scsiType = Ext.create('Ext.form.field.Display', { + name: 'scsihw', fieldLabel: gettext('Type'), reference: 'scsiType', renderer: PVE.Utils.render_scsihw, + // do not change a VM wide option after creation + submitValue: me.insideWizard, hidden: true }); me.column1.push(me.scsiType); -- 2.11.0 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel