** Description changed:

- Network Manager 1.36 has a bug that prevents it to activate veth pairs.
- The problem was found in the Netplan's CI with the new support for veths
- in Netplan (because we run the tests on Jammy).
+ [ Impact ]
+ 
+  * Network Manager 1.36 has a bug that prevents it to activate veth pairs.
+  * The problem was found in the Netplan's CI with the new support for veths 
in Netplan v0.107.
+ 
+  * We cherry-pick upstream patches to fix the issue:
+ - 
https://gitlab.freedesktop.org/piotrdrag/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423
+ - 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/07e0ab48d194b8bd6663a34887c2e753720ae4d3
+ - 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/50f738bde5b441b5ca52024c1a0998399b87337b
+ 
+ [ Test Plan ]
+ 
+  * Run netplan.io's autopkgtests against the new network-manager package and 
make sure it passes the veth tests, especially those two:
+    - test_create_veth_pair (__main__.TestNetworkManager)
+    - test_create_veth_pair_with_ip_address (__main__.TestNetworkManager)
+ 
+  * In addition to that, reproduce the steps from this bug report:
+ 1) Launch a Jammy VM and install network-manager
+ 
+ lxc launch  ubuntu:jammy jammy --vm
+ lxc shell jammy
+ apt -y install network-manager
+ 
+ 2) Set the default Netplan's renderer to NetworkManager so NM can manage
+ interfaces (it will make Netplan create the file
+ /var/run/NetworkManager/conf.d/10-globally-managed-devices.conf)
+ 
+ netplan set --origin-hint=50-cloud-init network.renderer=NetworkManager
+ netplan apply
+ 
+ 3) Create the veth pair
+ 
+ nmcli con add type veth ifname veth0 peer veth1 ipv4.method disabled 
ipv6.method disabled
+ nmcli con add type veth ifname veth1 peer veth0 ipv4.method disabled 
ipv6.method disabled
+ 
+ 4) Reboot
+ 
+ 5) Check with "nmcli con show" that the new connections were activated,
+ and created in the system. Also, check the systemd journal and you
+ should NOT see this error message:
+ 
+ <error> [1692805758.9025] manager: (veth-veth0) couldn't create the
+ device: Failed to create veth interface 'veth0' for 'veth-veth0': exists
+ 
+ [ Where problems could occur ]
+ 
+  * We're pulling upstream patchces to modify NetworkManager's
+ src/core/devices/nm-device-veth.c file. This could have side-effects on
+ veth functionality in general when NetworkManager is in use.
+ 
+ [ Other Info ]
+ 
+ * This issue appears to be fixed by this commit
+ 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423
+ 
+ * Danilo created a PPA with the fix here
+ https://launchpad.net/~danilogondolfo/+archive/ubuntu/network-manager
+ 
+ 
+ === Original bug report ===
+ Network Manager 1.36 has a bug that prevents it to activate veth pairs. The 
problem was found in the Netplan's CI with the new support for veths in Netplan 
(because we run the tests on Jammy).
  
  How to reproduce the problem:
  
  1) Launch a Jammy VM and install network-manager
  
  lxc launch  ubuntu:jammy jammy --vm
  lxc shell jammy
  apt -y install network-manager
  
  2) Set the default Netplan's renderer to NetworkManager so NM can manage
  interfaces (it will make Netplan create the file
  /var/run/NetworkManager/conf.d/10-globally-managed-devices.conf)
  
  netplan set --origin-hint=50-cloud-init network.renderer=NetworkManager
  netplan apply
  
  3) Create the veth pair
  
  nmcli con add type veth ifname veth0 peer veth1 ipv4.method disabled 
ipv6.method disabled
  nmcli con add type veth ifname veth1 peer veth0 ipv4.method disabled 
ipv6.method disabled
  
  4) Reboot
  
  5) Check with "nmcli con show" that the new connections were not
  activated, even though both interfaces were created in the system. Also,
  check the systemd journal and you should see this error message:
  
  <error> [1692805758.9025] manager: (veth-veth0) couldn't create the
  device: Failed to create veth interface 'veth0' for 'veth-veth0': exists
  
+ Try the very same steps on Lunar and you'll see that the connections
+ will be activated just fine.
  
- Try the very same steps on Lunar and you'll see that the connections will be 
activated just fine.
- 
- 
- This issue appears to be fixed by this commit 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423
+ This issue appears to be fixed by this commit
+ 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423
  
  I created a PPA with the fix here
  https://launchpad.net/~danilogondolfo/+archive/ubuntu/network-manager
  
  If you run the same steps again on Jammy with this PPA you'll see it
  fixes this issue. In fact, Netplan's integration tests will work on
  Jammy using the PPA.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to network-manager in Ubuntu.
https://bugs.launchpad.net/bugs/2032824

Title:
  Veth pairs fail activation on Jammy

Status in network-manager package in Ubuntu:
  Fix Released
Status in network-manager source package in Jammy:
  Triaged

Bug description:
  [ Impact ]

   * Network Manager 1.36 has a bug that prevents it to activate veth pairs.
   * The problem was found in the Netplan's CI with the new support for veths 
in Netplan v0.107.

   * We cherry-pick upstream patches to fix the issue:
  - 
https://gitlab.freedesktop.org/piotrdrag/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423
  - 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/07e0ab48d194b8bd6663a34887c2e753720ae4d3
  - 
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/50f738bde5b441b5ca52024c1a0998399b87337b

  [ Test Plan ]

   * Run netplan.io's autopkgtests against the new network-manager package and 
make sure it passes the veth tests, especially those two:
     - test_create_veth_pair (__main__.TestNetworkManager)
     - test_create_veth_pair_with_ip_address (__main__.TestNetworkManager)

   * In addition to that, reproduce the steps from this bug report:
  1) Launch a Jammy VM and install network-manager

  lxc launch  ubuntu:jammy jammy --vm
  lxc shell jammy
  apt -y install network-manager

  2) Set the default Netplan's renderer to NetworkManager so NM can
  manage interfaces (it will make Netplan create the file
  /var/run/NetworkManager/conf.d/10-globally-managed-devices.conf)

  netplan set --origin-hint=50-cloud-init network.renderer=NetworkManager
  netplan apply

  3) Create the veth pair

  nmcli con add type veth ifname veth0 peer veth1 ipv4.method disabled 
ipv6.method disabled
  nmcli con add type veth ifname veth1 peer veth0 ipv4.method disabled 
ipv6.method disabled

  4) Reboot

  5) Check with "nmcli con show" that the new connections were
  activated, and created in the system. Also, check the systemd journal
  and you should NOT see this error message:

  <error> [1692805758.9025] manager: (veth-veth0) couldn't create the
  device: Failed to create veth interface 'veth0' for 'veth-veth0':
  exists

  [ Where problems could occur ]

   * We're pulling upstream patchces to modify NetworkManager's
  src/core/devices/nm-device-veth.c file. This could have side-effects
  on veth functionality in general when NetworkManager is in use.

  [ Other Info ]

  * This issue appears to be fixed by this commit
  
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423

  * Danilo created a PPA with the fix here
  https://launchpad.net/~danilogondolfo/+archive/ubuntu/network-manager

  
  === Original bug report ===
  Network Manager 1.36 has a bug that prevents it to activate veth pairs. The 
problem was found in the Netplan's CI with the new support for veths in Netplan 
(because we run the tests on Jammy).

  How to reproduce the problem:

  1) Launch a Jammy VM and install network-manager

  lxc launch  ubuntu:jammy jammy --vm
  lxc shell jammy
  apt -y install network-manager

  2) Set the default Netplan's renderer to NetworkManager so NM can
  manage interfaces (it will make Netplan create the file
  /var/run/NetworkManager/conf.d/10-globally-managed-devices.conf)

  netplan set --origin-hint=50-cloud-init network.renderer=NetworkManager
  netplan apply

  3) Create the veth pair

  nmcli con add type veth ifname veth0 peer veth1 ipv4.method disabled 
ipv6.method disabled
  nmcli con add type veth ifname veth1 peer veth0 ipv4.method disabled 
ipv6.method disabled

  4) Reboot

  5) Check with "nmcli con show" that the new connections were not
  activated, even though both interfaces were created in the system.
  Also, check the systemd journal and you should see this error message:

  <error> [1692805758.9025] manager: (veth-veth0) couldn't create the
  device: Failed to create veth interface 'veth0' for 'veth-veth0':
  exists

  Try the very same steps on Lunar and you'll see that the connections
  will be activated just fine.

  This issue appears to be fixed by this commit
  
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/4655b7c308461ae1f86d592ea6d45e00a2820423

  I created a PPA with the fix here
  https://launchpad.net/~danilogondolfo/+archive/ubuntu/network-manager

  If you run the same steps again on Jammy with this PPA you'll see it
  fixes this issue. In fact, Netplan's integration tests will work on
  Jammy using the PPA.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/2032824/+subscriptions


-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to