** Description changed:

  [Impact]
  
  Because of this bug upstream
  https://github.com/svinota/pyroute2/issues/923, in the versions of
  pyroute2 prior to 0.6.10, all delete operations (address, link, route,
  ...) fail with 'Operation not supported'.
  
  This is related to the kernel commit
  
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a6cec0bcd34264be8887791594be793b3f12719f
  
  Pyroute package has to be upgraded to a version 0.6.10 or later as long
  as the distro comes with the kernel that contains the above commit.
  
  Reproducer:
  
  $ sudo python3
  Python 3.10.7 (main, Sep  8 2022, 14:34:29) [GCC 12.2.0] on linux
  Type "help", "copyright", "credits" or "license" for more information.
  >>> from pyroute2 import IPRoute
  >>> IPRoute().link("add", ifname="dum0", kind="dummy")
  ({'header': {'length': 36, 'type': 2, 'flags': 256, 'sequence_number': 255, 
'pid': 4993, 'error': None, 'target': 'localhost', 'stats': Stats(qsize=0, 
delta=0, delay=0)}, 'event': 'NLMSG_ERROR'},)
  >>> IPRoute().link_lookup(ifname="dum0")
  [10]
  >>> IPRoute().link("del", ifname="dum0")
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/pr2modules/iproute/linux.py", line 
1489, in link
      ret = self.nlm_request(msg, msg_type=command, msg_flags=msg_flags)
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
401, in nlm_request
      return tuple(self._genlm_request(*argv, **kwarg))
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
906, in nlm_request
      for msg in self.get(
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
404, in get
      return tuple(self._genlm_get(*argv, **kwarg))
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
732, in get
      raise msg['header']['error']
  pr2modules.netlink.exceptions.NetlinkError: (95, 'Operation not supported')
  
  ProblemType: Bug
  DistroRelease: Ubuntu 22.10
  Package: python3-pyroute2 0.6.7-3
  ProcVersionSignature: Ubuntu 5.19.0-23.24-generic 5.19.7
  Uname: Linux 5.19.0-23-generic x86_64
  ApportVersion: 2.23.1-0ubuntu3
  Architecture: amd64
  CasperMD5CheckResult: unknown
  CurrentDesktop: ubuntu:GNOME
  Date: Wed Nov  2 10:44:29 2022
  InstallationDate: Installed on 2021-08-18 (440 days ago)
  InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Release amd64 (20200423)
  PackageArchitecture: all
  SourcePackage: pyroute2
  UpgradeStatus: Upgraded to kinetic on 2022-10-23 (9 days ago)
  
  [Test Case]
  
- There is a small reproducer above that Eugene included in the bug
- report.
+ There is a small reproducer above that Eugene included in the bug report.
+ Ensure the reproducer does not traceback with kernel versions containing the 
commit and kernel versions lacking the commit.
  
  Additionally we can use the standard charm-deployed regression test
  suite to test kinetic-zed support. nova-compute units can be inspected
  to see if the 'Operation not supported' errors are no longer produced in
  /var/log/neutron/neutron-ovn-metadata-agent.log.
  
  [Regression Potential]
  
  The patch has already landed in releases of pyroute2 0.6.10 and above.
  Since pyroute2 is also backported to the zed cloud archive (which is on
  jammy) we'll need to ensure that this patch behaves as expected with
  jammy-zed deploys as well.

** Description changed:

  [Impact]
  
  Because of this bug upstream
  https://github.com/svinota/pyroute2/issues/923, in the versions of
  pyroute2 prior to 0.6.10, all delete operations (address, link, route,
  ...) fail with 'Operation not supported'.
  
  This is related to the kernel commit
  
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a6cec0bcd34264be8887791594be793b3f12719f
  
  Pyroute package has to be upgraded to a version 0.6.10 or later as long
  as the distro comes with the kernel that contains the above commit.
  
  Reproducer:
  
  $ sudo python3
  Python 3.10.7 (main, Sep  8 2022, 14:34:29) [GCC 12.2.0] on linux
  Type "help", "copyright", "credits" or "license" for more information.
  >>> from pyroute2 import IPRoute
  >>> IPRoute().link("add", ifname="dum0", kind="dummy")
  ({'header': {'length': 36, 'type': 2, 'flags': 256, 'sequence_number': 255, 
'pid': 4993, 'error': None, 'target': 'localhost', 'stats': Stats(qsize=0, 
delta=0, delay=0)}, 'event': 'NLMSG_ERROR'},)
  >>> IPRoute().link_lookup(ifname="dum0")
  [10]
  >>> IPRoute().link("del", ifname="dum0")
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/lib/python3/dist-packages/pr2modules/iproute/linux.py", line 
1489, in link
      ret = self.nlm_request(msg, msg_type=command, msg_flags=msg_flags)
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
401, in nlm_request
      return tuple(self._genlm_request(*argv, **kwarg))
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
906, in nlm_request
      for msg in self.get(
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
404, in get
      return tuple(self._genlm_get(*argv, **kwarg))
    File "/usr/lib/python3/dist-packages/pr2modules/netlink/nlsocket.py", line 
732, in get
      raise msg['header']['error']
  pr2modules.netlink.exceptions.NetlinkError: (95, 'Operation not supported')
  
  ProblemType: Bug
  DistroRelease: Ubuntu 22.10
  Package: python3-pyroute2 0.6.7-3
  ProcVersionSignature: Ubuntu 5.19.0-23.24-generic 5.19.7
  Uname: Linux 5.19.0-23-generic x86_64
  ApportVersion: 2.23.1-0ubuntu3
  Architecture: amd64
  CasperMD5CheckResult: unknown
  CurrentDesktop: ubuntu:GNOME
  Date: Wed Nov  2 10:44:29 2022
  InstallationDate: Installed on 2021-08-18 (440 days ago)
  InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Release amd64 (20200423)
  PackageArchitecture: all
  SourcePackage: pyroute2
  UpgradeStatus: Upgraded to kinetic on 2022-10-23 (9 days ago)
  
  [Test Case]
  
  There is a small reproducer above that Eugene included in the bug report.
- Ensure the reproducer does not traceback with kernel versions containing the 
commit and kernel versions lacking the commit.
+ Ensure the reproducer does not traceback with 'Operation not supported' with 
kernel versions containing the commit and kernel versions lacking the commit.
  
  Additionally we can use the standard charm-deployed regression test
  suite to test kinetic-zed support. nova-compute units can be inspected
  to see if the 'Operation not supported' errors are no longer produced in
  /var/log/neutron/neutron-ovn-metadata-agent.log.
  
  [Regression Potential]
  
  The patch has already landed in releases of pyroute2 0.6.10 and above.
  Since pyroute2 is also backported to the zed cloud archive (which is on
  jammy) we'll need to ensure that this patch behaves as expected with
  jammy-zed deploys as well.

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

Title:
  Version 0.6.7-3 is broken for "del" operations on recent kernels

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1995469/+subscriptions


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

Reply via email to