]> git.proxmox.com Git - pve-manager.git/blobdiff - www/manager6/qemu/HardwareView.js
ui: lxc/qemu: cpu edit: make cpuunits depend on node's cgroup version
[pve-manager.git] / www / manager6 / qemu / HardwareView.js
index 3974d94982290b7efbb9b71657ca68098acb2a85..6b05d7a50d3c581329933c39f8a076d1e7535234 100644 (file)
@@ -59,6 +59,12 @@ Ext.define('PVE.qemu.HardwareView', {
 
        let isCloudInitKey = v => v && v.toString().match(/vm-.*-cloudinit/);
 
+       const nodeInfo = PVE.data.ResourceStore.getNodes().find(node => node.node === nodename);
+       let processorEditor = {
+           xtype: 'pveQemuProcessorEdit',
+           cgroupMode: nodeInfo['cgroup-mode'],
+       };
+
        let rows = {
            memory: {
                header: gettext('Memory'),
@@ -93,7 +99,7 @@ Ext.define('PVE.qemu.HardwareView', {
                header: gettext('Processors'),
                never_delete: true,
                editor: caps.vms['VM.Config.CPU'] || caps.vms['VM.Config.HWType']
-                   ? 'PVE.qemu.ProcessorEdit' : undefined,
+                   ? processorEditor : undefined,
                tdCls: 'pve-itype-icon-cpu',
                group: 3,
                defaultValue: '1',
@@ -411,7 +417,7 @@ Ext.define('PVE.qemu.HardwareView', {
                    return;
                }
 
-               Ext.create('PVE.window.HDReassign', {
+               Ext.create('PVE.window.GuestDiskReassign', {
                    autoShow: true,
                    disk: rec.data.key,
                    nodename: nodename,
@@ -544,6 +550,11 @@ Ext.define('PVE.qemu.HardwareView', {
 
        let counts = {};
        let isAtLimit = (type) => counts[type] >= PVE.Utils.hardware_counts[type];
+       let isAtUsbLimit = () => {
+           let ostype = me.getObjectValue('ostype');
+           let machine = me.getObjectValue('machine');
+           return counts.usb >= PVE.Utils.get_max_usb_count(ostype, machine);
+       };
 
        let set_button_status = function() {
            let selection_model = me.getSelectionModel();
@@ -570,7 +581,7 @@ Ext.define('PVE.qemu.HardwareView', {
            const noVMConfigNetPerm = !caps.vms['VM.Config.Network'];
            const noVMConfigDiskPerm = !caps.vms['VM.Config.Disk'];
 
-           me.down('#addUsb').setDisabled(noSysConsolePerm || isAtLimit('usb'));
+           me.down('#addUsb').setDisabled(noSysConsolePerm || isAtUsbLimit());
            me.down('#addPci').setDisabled(noSysConsolePerm || isAtLimit('hostpci'));
            me.down('#addAudio').setDisabled(noVMConfigHWTypePerm || isAtLimit('audio'));
            me.down('#addSerial').setDisabled(noVMConfigHWTypePerm || isAtLimit('serial'));