[pve-devel] [PATCH v3 manager] ui: vm network: allow to override MTU for virtio devices

DERUMIER, Alexandre Alexandre.DERUMIER at groupe-cyllene.com
Fri Feb 11 08:29:56 CET 2022


Note that mtu=1 is a special value, it's inherit from the current
bridge mtu value.
(I don't known if it's possible to add some kind of message in the gui
when this value is choose ?)

Thanks for this patch, It's really usefull for vxlan network.


Le jeudi 10 février 2022 à 15:33 +0100, Oguz Bektas a écrit :
> we already have the 'mtu' option in the API, so we can just expose
> that option inside the 'Advanced' menu for virtio network interfaces.
> 
> Reviewed-By: Aaron Lauterer <a.lauterer at proxmox.com>
> Tested-By: Aaron Lauterer <a.lauterer at proxmox.com>
> Tested-By: Dylan Whyte <d.whyte at proxmox.com>
> Signed-off-by: Oguz Bektas <o.bektas at proxmox.com>
> ---
> v2->v3:
> * use minValue and maxValue for validating the int range (thx aaron)
> * removed the superfluous whitespace lines from v2
> 
> and i've added dylan's and aaron's tags from the previous mails as
> well :)
> 
>  www/manager6/qemu/NetworkEdit.js | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
> 
> diff --git a/www/manager6/qemu/NetworkEdit.js
> b/www/manager6/qemu/NetworkEdit.js
> index b39cffdc..3db3a569 100644
> --- a/www/manager6/qemu/NetworkEdit.js
> +++ b/www/manager6/qemu/NetworkEdit.js
> @@ -19,6 +19,7 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>         me.network.macaddr = values.macaddr;
>         me.network.disconnect = values.disconnect;
>         me.network.queues = values.queues;
> +       me.network.mtu = values.mtu;
>  
>         if (values.rate) {
>             me.network.rate = values.rate;
> @@ -33,6 +34,15 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>         return params;
>      },
>  
> +    viewModel: {
> +       data: {
> +           network_model: '',
> +       },
> +       formulas: {
> +           isVirtio: (get) => get('network_model') === 'virtio',
> +       },
> +    },
> +
>      setNetwork: function(confid, data) {
>         var me = this;
>  
> @@ -112,6 +122,7 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>                             'macaddr',
>                             'rate',
>                             'queues',
> +                           'mtu',
>                         ];
>                         fields.forEach(function(fieldname) {
>                            
> me.down('field[name='+fieldname+']').setDisabled(value);
> @@ -130,6 +141,7 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>                 xtype: 'pveNetworkCardSelector',
>                 name: 'model',
>                 fieldLabel: gettext('Model'),
> +               bind: '{network_model}',
>                 value: PVE.qemu.OSDefaults.generic.networkCard,
>                 allowBlank: false,
>             },
> @@ -161,6 +173,18 @@ Ext.define('PVE.qemu.NetworkInputPanel', {
>                 value: '',
>                 allowBlank: true,
>             },
> +           {
> +               xtype: 'proxmoxintegerfield',
> +               name: 'mtu',
> +               fieldLabel: 'MTU',
> +               value: '',
> +               bind: {
> +                   disabled: '{!isVirtio}',
> +               },
> +               minValue: 1,
> +               maxValue: 65520,
> +               allowBlank: true,
> +           },
>         ];
>  
>         me.callParent();



More information about the pve-devel mailing list