]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
qa/lsan.supp: suppress CPython 3.12/3.13 interpreter leaks 69664/head
authorKefu Chai <k.chai@proxmox.com>
Tue, 23 Jun 2026 08:14:19 +0000 (16:14 +0800)
committerKefu Chai <k.chai@proxmox.com>
Tue, 23 Jun 2026 15:02:05 +0000 (23:02 +0800)
The python binaries on some CI images and dev boxes ship stripped, so the
allocator frames in an interpreter-shutdown leak come through unsymbolised
(/usr/bin/python3.13+0x...) and the function-name matches above cannot apply.
leak:python3.10 already handled this for 3.10, and a stale comment claimed 3.12
does not leak.

Add leak:python3.12 and leak:python3.13, mirroring the 3.10 entry, so the
interpreter globals are suppressed whatever CPython the build uses.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
qa/lsan.supp

index e1a20fdccd821a58701012ec05382b412e1a0434..df0897fc96e5deb56398a76427ee21e46d90e7f1 100644 (file)
@@ -29,15 +29,14 @@ leak:^PyUnicode_New
 leak:^PyMem_Malloc
 leak:^PyDict_Copy
 leak:^_PyObject_GC_NewVar
-# Catch unsymbolised interpreter frames in both the standalone
-# /usr/bin/python3.10 binary (used by the bin/ceph wrapper) and the
-# /lib/.../libpython3.10.so.1.0 embedded by C++ unittests such as
-# unittest_mgr_pyformatter / unittest_mgr_pyutil.  Not all CPython
-# 3.10 internal helpers are exported in .dynsym, so function-name
-# matches above don't cover everything; this substring-matches the
-# module path in the stack frame.  Remove when CI moves to >= 3.12.
+# Catch unsymbolised interpreter frames in the standalone python binary used by
+# the bin/ceph wrapper and in the libpython embedded by C++ unittests such as
+# unittest_mgr_pyformatter / unittest_mgr_pyutil.  Not all CPython internal
+# helpers are exported in .dynsym, so the function-name matches above don't
+# cover everything; this substring-matches the module path in the stack frame.
 leak:python3.10
-# python3.12 doesn't leak anything
+leak:python3.12
+leak:python3.13
 # python3.13
 leak:^PyModule_ExecDef