Hi,
Sorry to bring this back up, but I can not find any error yet in the legacy C code.
gdb with python 3.11 gives no error (on F38, program exited normally) but gdb with python 3.12 segfaults.
On Thu Nov23'23 08:18:05AM, Community Support for Fedora Users wrote:
From: Ranjan Maitra via users users@lists.fedoraproject.org Date: Thu, 23 Nov 2023 08:18:05 -0600 To: Community support for Fedora users users@lists.fedoraproject.org Cc: Ranjan Maitra mlmaitra@gmx.com Reply-To: Community support for Fedora users users@lists.fedoraproject.org Subject: Re: Python code error in F39, but not in F38
On Thu Nov23'23 08:28:36AM, Barry wrote:
From: Barry barry@barrys-emacs.org Date: Thu, 23 Nov 2023 08:28:36 +0000 To: Community support for Fedora users users@lists.fedoraproject.org CC: Ranjan Maitra mlmaitra@gmx.com Reply-To: Community support for Fedora users users@lists.fedoraproject.org Subject: Re: Python code error in F39, but not in F38
On 22 Nov 2023, at 22:21, Ranjan Maitra via users users@lists.fedoraproject.org wrote:
#4 sipOMFinalise (om=0x7fff9e5ff9a0 <cppPyMap.lto_priv.0>) at /usr/src/debug/
It is a bug in the sip code is my strong expectation.
So, it seems, so is this a bug that needs to be reported? Where to? I am not even sure how to build a small reproducible example because I do not understand what part of the C or the python code is resulting in this bug. All the files referenced in the valgrind output are in the system(?) python files. The code files do not even appear to show up.
I would also guess that tstate is likely 0 and causing a SEGV.
The segfault is here (per gdb):
at /usr/src/debug/python3.12-3.12.0-1.fc39.x86_64/Include/internal/pycore_pystate.h:118 118 return tstate->interp;
What did sip do to damage the tstate (thread state I think).
I don't know what sip is, and how it comes into that code.
Any suggestions on what I should do?
Many thanks and best wishes, Ranjan
Barry
From another thread:
(gdb) p tstate
$1 = <optimized out>
Sorry, I forgot this (also posted on another sub-thread).
And here are the complete valgrind errors from
valgrind --leak-check=full --track-origins=yes --show-leak-kinds=all python ./test.py ~/Datasets/Images/tiffs/ultadanga.tiff ../results/ultadanga-64-rgb.png 1 7
at:
https://raw.githubusercontent.com/maitra/Visual-Information-Fidelity---Pytho...
One aspect to note is that the C code (not by me) is from 1988, though last updated in 1997. It is not clear to me if that is a plus (because programmers had the time to be more careful in those days) or a minus (because more sophisticated environments are available now). I do compile with -Wall -pedantic and there are no complaints. However, that does not mean that there can not be some memory leak or something else that has stayed dormant all these years and have surfaced with the changes to Python 3.12.
Many thanks and best wishes, Ranjan
-- _______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
-- _______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue