** Description changed:

+ [ Impact ]
+ 
+ Due to limitations in how Netplan handles SR-IOV devices it wasn't possible
+ to change the embedded switch mode without having to create Virtual Functions.
+ 
+ Setting the e-switch mode should be allowed independently of
+ the existence of Virtual Functions.
+ This problem prevents the use of Scalable Functions without SR-IOV.
+ 
+ This fix is available on Ubuntu 24.04.
+  
+ [ Test Plan ]
+ 
+ To reproduce the problem addressed by this SRU one needs to
+ have access to specialized hardware (SR-IOV-capable NICs).
+ 
+ This fix was tested on real hardware when they were implemented
+ (see https://github.com/canonical/netplan/pull/454 for details) but still 
need to be
+ tested on Ubuntu 22.04.
+ 
+ We will work with Canonical's Openstack team to do the fix verification.
+ 
+  * detailed instructions how to reproduce the bug
+ 
+ A configuration like the below can be used to test if the e-switch mode
+ can be set to "switchdev" without Virtual Functions:
+ 
+ network:
+   version: 2
+   ethernets:
+     enp3s0f0np0:
+       match:
+         macaddress: 98:03:9b:c3:ef:ba
+       mtu: 9000
+       set-name: enp3s0f0np0
+       embedded-switch-mode: switchdev
+     enp3s0f1np1:
+       match:
+         macaddress: 98:03:9b:c3:ef:bb
+       mtu: 9000
+       set-name: enp3s0f1np1
+       embedded-switch-mode: switchdev
+ 
+ After applying the configuration, the e-switch mode can be checked with
+ the devlink tool. For example:
+ 
+ root@node-laveran:~# devlink dev eswitch show pci/0000:03:00.0
+ pci/0000:03:00.0: mode switchdev inline-mode none encap-mode basic
+ root@node-laveran:~# devlink dev eswitch show pci/0000:03:00.1
+ pci/0000:03:00.1: mode switchdev inline-mode none encap-mode basic
+ 
+ [ Where problems could occur ]
+ 
+ These changes should affect only SR-IOV related scenarios.
+ Undetected problems could cause Netplan to fail to configure the device
+ and Virtual Functions wouldn't be created anymore.
+ 
+ [ Other Info ]
+ 
+ Related work:
+ 
+ https://bugs.launchpad.net/netplan/+bug/2020409
+ https://github.com/canonical/netplan/pull/454
+ 
+ A PPA for Ubuntu 22.04 can be found here
+ https://launchpad.net/~danilogondolfo/+archive/ubuntu/netplan-sru
+ 
+ 
+ ---- Original bug description ----
+ 
  I am looking on the netplan implementation of switchdev [1]. The current code 
assume that we can move to switchdev only if SR-IOV enabled.
- This assumption is incorrect, as we can move to switchdev even if SR-IOV is 
disabled. 
- 
+ This assumption is incorrect, as we can move to switchdev even if SR-IOV is 
disabled.
  
  There 2 use-case come to mind:
  
  1. VF Lag with Subfunction (you don't need SR-IOV to enable Subfunction)
  2. VF Lag creation. It better to first move the PF (physicals function) to 
switchdev mode before creating the SR-IOV VF. In this case you don't need to 
unbind and bind the VFs, which mean you save time at boot.
  
- 
- Who will be the best person at canonical side so help use fix this issues? 
- 
+ Who will be the best person at canonical side so help use fix this
+ issues?
  
  [1] -
  
https://github.com/canonical/netplan/blob/3279c57e8b1745be0d19119b4ad1a061c327593e/netplan/cli/sriov.py#L373-L459

** Summary changed:

- can't move mellanox interface to switchdev when SR-IOV disable
+ [SRU] can't move mellanox interface to switchdev when SR-IOV disable

** Changed in: netplan.io (Ubuntu Noble)
       Status: New => Fix Released

** Changed in: netplan.io (Ubuntu Jammy)
       Status: New => In Progress

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2020409

Title:
  [SRU] can't move mellanox interface to switchdev when SR-IOV disable

To manage notifications about this bug go to:
https://bugs.launchpad.net/netplan/+bug/2020409/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to