Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1829702
Summary: | gdb fails to build with Python 3.9: Segmentation fault in selftest | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Miro Hrončok <mhroncok> |
Component: | gdb | Assignee: | Keith Seitz <keiths> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | cstratak, jan.kratochvil, keiths, kevinb, mhroncok, mplch, pmuldoon, sergiodj, vstinner |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | gdb-9.1-8.fc33 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-06-05 23:13:03 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1803234, 1785415 |
Description
Miro Hrončok
2020-04-30 07:04:05 UTC
I'll look into it. Side note: We can temporarily build gdb --without python to workaround this problem. Sorry for the delay - I plan to look into this problem this week. I'm trying to reproduce this locally via the following command: mock -r fedora-rawhide-python39 --enablerepo=local gdb-9.1-6.fc33.src.rpm But I'm not getting very far. I'm seeing the following problem: ... Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1586995200 Wrote: /builddir/build/SRPMS/gdb-9.1-6.fc33.src.rpm No matches found for the following disable plugin patterns: local, spacewalk Copr repo for python3.9 owned by @python 13 kB/s | 3.0 kB 00:00 fedora 30 kB/s | 11 kB 00:00 fedora 2.1 MB/s | 5.8 MB 00:02 local 23 kB/s | 3.8 kB 00:00 Package rpm-libs-4.15.90-0.git14971.12.fc33.x86_64 is already installed. Error: Problem 1: package texlive-collection-latexrecommended-9:svn54074-21.fc33.noarch requires texlive-fancyvrb, but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-20.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-21.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-20.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-21.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - cannot install the best candidate for the job - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-20.fc33.noarch - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-21.fc33.noarch Problem 2: package texinfo-tex-6.7-7.fc33.x86_64 requires tex(tex), but none of the providers can be installed - package texlive-collection-basic-9:svn54186-20.fc33.noarch requires dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-20.fc33.noarch requires texlive-dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-21.fc33.noarch requires dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-21.fc33.noarch requires texlive-dvipdfmx, but none of the providers can be installed - package texlive-dvipdfmx-7:20200327-2.fc33.x86_64 requires texlive-xetex, but none of the providers can be installed - package texlive-xetex-7:20200327-2.fc33.x86_64 requires texlive-l3kernel, but none of the providers can be installed - package texlive-l3kernel-9:svn54672-20.fc33.noarch requires tex(fancyvrb.sty), but none of the providers can be installed - package texlive-l3kernel-9:svn54672-21.fc33.noarch requires tex(fancyvrb.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-20.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-21.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-20.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-21.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - cannot install the best candidate for the job - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-20.fc33.noarch - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-21.fc33.noarch (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) Finish: build setup for gdb-9.1-6.fc33.src.rpm Finish: build phase for gdb-9.1-6.fc33.src.rpm ERROR: Exception(gdb-9.1-6.fc33.src.rpm) Config(fedora-rawhide-python39) 2 minutes 58 seconds INFO: Results and/or logs in: /var/lib/mock/fedora-rawhide-python39/result ERROR: Command failed: # /usr/bin/systemd-nspawn -q -M ab5337df2f8d4321a313def2cbc9b6d2 -D /var/lib/mock/fedora-rawhide-python39-bootstrap/root -a --capability=cap_ipc_lock --bind=/tmp/mock-resolv.mbyl_1vs:/etc/resolv.conf --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/var/lib/mock/fedora-rawhide-python39/root/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$ --setenv=LANG=C.UTF-8 --setenv=LC_MESSAGES=C.UTF-8 /usr/bin/dnf builddep --installroot /var/lib/mock/fedora-rawhide-python39/root/ --releasever 33 --enablerepo local --setopt=deltarpm=False --allowerasing --disableplugin=local --disableplugin=spacewalk --disableplugin=local --disableplugin=spacewalk /var/lib/mock/fedora-rawhide-python39/root//builddir/build/SRPMS/gdb-9.1-6.fc33.src.rpm --setopt=tsflags=nocontexts No matches found for the following disable plugin patterns: local, spacewalk Copr repo for python3.9 owned by @python 13 kB/s | 3.0 kB 00:00 fedora 30 kB/s | 11 kB 00:00 fedora 2.1 MB/s | 5.8 MB 00:02 local 23 kB/s | 3.8 kB 00:00 Package rpm-libs-4.15.90-0.git14971.12.fc33.x86_64 is already installed. Error: Problem 1: package texlive-collection-latexrecommended-9:svn54074-21.fc33.noarch requires texlive-fancyvrb, but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-20.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-21.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-20.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-21.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - cannot install the best candidate for the job - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-20.fc33.noarch - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-21.fc33.noarch Problem 2: package texinfo-tex-6.7-7.fc33.x86_64 requires tex(tex), but none of the providers can be installed - package texlive-collection-basic-9:svn54186-20.fc33.noarch requires dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-20.fc33.noarch requires texlive-dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-21.fc33.noarch requires dvipdfmx, but none of the providers can be installed - package texlive-collection-basic-9:svn54186-21.fc33.noarch requires texlive-dvipdfmx, but none of the providers can be installed - package texlive-dvipdfmx-7:20200327-2.fc33.x86_64 requires texlive-xetex, but none of the providers can be installed - package texlive-xetex-7:20200327-2.fc33.x86_64 requires texlive-l3kernel, but none of the providers can be installed - package texlive-l3kernel-9:svn54672-20.fc33.noarch requires tex(fancyvrb.sty), but none of the providers can be installed - package texlive-l3kernel-9:svn54672-21.fc33.noarch requires tex(fancyvrb.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-20.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-fancyvrb-9:svn53392-21.fc33.noarch requires tex(pstricks.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-20.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - package texlive-pstricks-9:svn54080-21.fc33.noarch requires tex(biblatex.sty), but none of the providers can be installed - cannot install the best candidate for the job - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-20.fc33.noarch - nothing provides biber >= 2.14 needed by texlive-biblatex-9:svn53063-21.fc33.noarch (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) Any thoughts on how to proceed? Disable the documentation build for debugging purposes? The texlive stack is broken in rawhide, nothing we can do about it but wait. See https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/EKASW5ECAQTFU43KDZHZPERDLLNGIELB/ Just an update... I've reproduced the problem. There appears to be a problem with GDB calling PyEval_ReleaseLock() during initialization. Documentation indicates that this function has been deprecated since 3.2, so that could be part of the problem. I'm working on a fix. Thanks for the update. As a side note, 3.9.0b1 is out (this problem remains). I am going to temporarily disable the Python support in gdb now and build it in the f33-python target. If you fix this, please don't build it yet. (In reply to Miro Hrončok from comment #8) > I am going to temporarily disable the Python support in gdb now and build it > in the f33-python target. > If you fix this, please don't build it yet. Okay, understood. When I have a fix, I'll check here first before doing anything. Do you know of working programs (i.e. working with Python 3.9) that have embedded python support? If so, I'd like to know what they are so that I can see how they handle the python GIL. I haven't actually run anything myself, but there are successful builds in copr for libreoffice, nbdkit, swift-lang, uwsgi, krita, postgresql, samba, kig, calamares, fontforge... I hope at least some of them have reasonable covered tests in %check. Inspiration: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/IAIUO5XU54FQM64TDXWF4YMHHWGQFNXT/ For guidance, you could also also ask Victor Stinner if you have specific questions about handling the GIL. (In reply to Kevin Buettner from comment #9) > (In reply to Miro Hrončok from comment #8) > > I am going to temporarily disable the Python support in gdb now and build it > > in the f33-python target. > > If you fix this, please don't build it yet. > > Okay, understood. When I have a fix, I'll check here first before doing > anything. When you have the fix, you can re-enable Python and build it with: $ fedpkg build --target=f33-python This comment is mass posted to all bugs blocking the Python 3.9 tracker, sorry if it is not 100 % relevant. When in doubt, please ask. The Python 3.9 rebuild is in progress in a Koji side tag. If you fix this bug, please don't rebuild the package in regular rawhide, but do it in the side tag with: $ fedpkg build --target=f33-python The rebuild is progressing slowly and it is possible this package won't have all the required build dependencies yet. If that's the case, please just leave the fix committed and pushed and we will eventually rebuild it for you. You are not asked to go and try rebuild all the missing dependencies yourself. If you know there is a bootstrap loop in the dependencies, let me know and we can untangle it together. If you want to test your fix or reproduce the failure, you can still use the Copr repo mentioned in the initial comment of this bug: https://copr.fedorainfracloud.org/coprs/g/python/python3.9/ It's fixed now in GDB's upstream master... https://sourceware.org/pipermail/gdb-patches/2020-May/169110.html How soon do you need it in Fedora? I'd like to rebase against upstream master, but that'll take a while; if you need it sooner, I can backport this one patch. I don't think other packages use the gdb Python integration, so this is not blocking anything. Python 3.9 update: The f33-python side tag is currently being merged. New builds in f33-python are no longer possible, but python3 is not yet updated to Python 3.9 in rawhide. You can check when Python is Python 3.9 with: $ koji wait-repo f33-build --build python3.9-3.9.0~b1-3.fc3 And build the packages normally after that. FYI a similar bug different issue was reported to Python upstream: https://bugs.python.org/issue40826 Crash in the REPL. It's also related to PyOS_InterruptOccurred() which must be called with the GIL held. I checked: PyOS_InterruptOccurred() must be called with the GIL held since Python 3.8. But previously, it was possible to call it without the GIL held if SIGINT signal was no received. I am pushing a new build with the patch which should fix this package. Let me know if this is still a problem. Thank You, Keith. |