Your message dated Sat, 14 Mar 2026 11:48:36 +0000
with message-id <[email protected]>
and subject line Released with 13.4
has caused the Debian Bug report #1124763,
regarding trixie-pu: package python-os-ken/3.0.1-2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1124763: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1124763
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: trixie
X-Debbugs-Cc: [email protected]
Control: affects -1 + src:python-os-ken
User: [email protected]
Usertags: pu

Dear release team,

[ Reason ]
During production, we found out that in some cases, OpenStack Neutron's
openvswitch agent could crash. My colleague wrote the details here:
https://bugs.launchpad.net/neutron/+bug/2133487

This was then fixed upstream, and backported by upstream:
https://review.opendev.org/q/I9069337270cc261974c524a5ab284b055177ab3e

(note: the version in Trixie is 2025.1)

The impact may be very bad in production, with compute nodes not reacting
at all to network port creation / deletion / updates as neutron-ovs-agent
is in fact dead.

[ Impact ]
Without fixing os-ken, it's possible that neutron-openvswitch-agent main
thread just crashes, while the service still reports itself as running
(as it reports in another thread).

[ Tests ]
Extensive unit and functional test are done in upstream CI.

[ Risks ]
The patch is minimal and well tested, with a new test case. So risk is
minimal.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]
The function in os-ken that wasn't accepting None as value, now does, and
there is a new unit test for that.

Please allow me to upload python-os-ken_3.0.1-2+deb13u1 to Trixie p-u.

Cheers,

Thomas Goirand (zigo)
diff -Nru python-os-ken-3.0.1/debian/changelog 
python-os-ken-3.0.1/debian/changelog
--- python-os-ken-3.0.1/debian/changelog        2025-03-28 09:34:42.000000000 
+0100
+++ python-os-ken-3.0.1/debian/changelog        2026-01-06 14:20:12.000000000 
+0100
@@ -1,3 +1,9 @@
+python-os-ken (3.0.1-2+deb13u1) trixie; urgency=medium
+
+  * Add Accept_empty_OXM_fields.patch.
+
+ -- Thomas Goirand <[email protected]>  Tue, 06 Jan 2026 14:20:12 +0100
+
 python-os-ken (3.0.1-2) unstable; urgency=medium
 
   * Uploading to unstable.
diff -Nru python-os-ken-3.0.1/debian/patches/Accept_empty_OXM_fields.patch 
python-os-ken-3.0.1/debian/patches/Accept_empty_OXM_fields.patch
--- python-os-ken-3.0.1/debian/patches/Accept_empty_OXM_fields.patch    
1970-01-01 01:00:00.000000000 +0100
+++ python-os-ken-3.0.1/debian/patches/Accept_empty_OXM_fields.patch    
2026-01-06 14:20:12.000000000 +0100
@@ -0,0 +1,68 @@
+Description: Accept empty "OXM" fields (tuple, list)
+ When decoding an "OXM" field, now it is possible to accept
+ and empty tuple or list. The value and the mask are considered as
+ "None".
+Author: lajoskatona <[email protected]>
+Date: Wed, 10 Dec 2025 10:23:17 +0100
+Bug: https://launchpad.net/bugs/2133487
+Signed-off-by: lajoskatona <[email protected]>
+Co-Authored-By: Rodolfo Alonso Hernandez <[email protected]>
+Change-Id: I9069337270cc261974c524a5ab284b055177ab3e
+Origin: upstream, https://review.opendev.org/c/openstack/os-ken/+/972086
+Last-Update: 2026-01-06
+
+diff --git a/os_ken/ofproto/oxx_fields.py b/os_ken/ofproto/oxx_fields.py
+index c37557f..84facd5 100644
+--- a/os_ken/ofproto/oxx_fields.py
++++ b/os_ken/ofproto/oxx_fields.py
+@@ -59,7 +59,10 @@
+     # the 'list' case below is a bit hack; json.dumps silently maps
+     # python tuples into json lists.
+     if oxx == 'oxm' and isinstance(user_value, (tuple, list)):
+-        (value, mask) = user_value
++        if not user_value:
++            value, mask = None, None
++        else:
++            (value, mask) = user_value
+     else:
+         value = user_value
+         mask = None
+diff --git a/os_ken/tests/unit/ofproto/test_oxm.py 
b/os_ken/tests/unit/ofproto/test_oxm.py
+index 3a58ac9..1b00142 100644
+--- a/os_ken/tests/unit/ofproto/test_oxm.py
++++ b/os_ken/tests/unit/ofproto/test_oxm.py
+@@ -24,6 +24,8 @@
+         (f, uv) = user
+         (n, v, m) = ofp.oxm_from_user(f, uv)
+         buf = bytearray()
++        m = b'' if m is None else m
++        v = b'' if v is None else v
+         ofp.oxm_serialize(n, v, m, buf, 0)
+         self.assertEqual(on_wire, buf)
+ 
+@@ -46,9 +48,10 @@
+         f = ofp.oxm_to_user_header(n)
+         self.assertEqual(user, f)
+ 
+-    def _test(self, user, on_wire, header_bytes):
++    def _test(self, user, on_wire, header_bytes, test_decode=True):
+         self._test_encode(user, on_wire)
+-        self._test_decode(user, on_wire)
++        if test_decode:
++            self._test_decode(user, on_wire)
+         if isinstance(user[1], tuple):  # has mask?
+             return
+         user_header = user[0]
+@@ -186,3 +189,12 @@
+             b'fugafuga'
+         )
+         self._test(user, on_wire, 4)
++
++    def test_empty_values(self):
++        # This test is a corner case that rarely happens. The decoded
++        # information is empty.
++        user = ('ipv4_src', ())
++        on_wire = (
++            b'\x80\x00\x16\x00'
++        )
++        self._test(user, on_wire, 4, test_decode=False)
diff -Nru python-os-ken-3.0.1/debian/patches/series 
python-os-ken-3.0.1/debian/patches/series
--- python-os-ken-3.0.1/debian/patches/series   1970-01-01 01:00:00.000000000 
+0100
+++ python-os-ken-3.0.1/debian/patches/series   2026-01-06 14:20:12.000000000 
+0100
@@ -0,0 +1 @@
+Accept_empty_OXM_fields.patch

--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 13.4

This update has been released as part of Debian 13.4.

--- End Message ---

Reply via email to