Summary: | <dev-libs/libxml2-2.9.10-r1: upstream patch included in patchset causes dev-ruby/nokogiri segfault on exit | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Hank Leininger <hlein> |
Component: | Current packages | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ago, anton.bugs, gentoo.wayne, ruby, sam, toralf |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 710748 |
Description
Hank Leininger
2020-08-13 23:49:54 UTC
Thanks for this, and even better with the bug references and commits. I'd ask for a traceback but it's probably not needed here given this upstream. Give me a bit of time to look into it, should not be too long. Oh cool, thanks. Actually I still have a gdb backtrace in scrollback (when I started writing the b.g.o ticket, I had not yet tied it to a known issue upstream; left out these details when it turned out to be a known issue): (gdb) bt #0 0x00007f7b5a282f41 in raise () from /lib64/libc.so.6 #1 0x00007f7b5a26c53d in abort () from /lib64/libc.so.6 #2 0x00007f7b5a43dc37 in rb_bug_context.cold () from /usr/lib64/libruby26.so.2.6 #3 0x00007f7b5a58b952 in sigsegv () from /usr/lib64/libruby26.so.2.6 #4 <signal handler called> #5 0x00007f7b5a4d20dd in ruby_sized_xfree.part () from /usr/lib64/libruby26.so.2.6 #6 0x00007f7b57d3b886 in xmlCleanupCharEncodingHandlers () from /usr/lib64/libxml2.so.2 #7 0x00007f7b57d44939 in xmlCleanupParser__internal_alias.part.0 () from /usr/lib64/libxml2.so.2 #8 0x00007f7b5a754714 in _dl_fini () from /lib64/ld-linux-x86-64.so.2 #9 0x00007f7b5a2858d3 in __run_exit_handlers () from /lib64/libc.so.6 #10 0x00007f7b5a285a8c in exit () from /lib64/libc.so.6 #11 0x00007f7b5a26dd22 in __libc_start_main () from /lib64/libc.so.6 #12 0x0000556f47e6115a in _start () (gdb) quit I said I'd make a PR, but since you are looking into this I'll skip that - it's literally just adding that other upstream commit, and if you're likely to bundle into the patch.tar.xz, then I can't do that easily in a PR anyway. I had been holding off on new versions of nokogiri because they required libxml2 2.9.10 and libxslt 1.1.34. Unfortunately I'm still seeing a segfault when running the tests, and it is the same with both 1.10.4 and 1.10.10. Backtrace: -- C level backtrace information ------------------------------------------- /usr/lib64/libruby25.so.2.5(rb_vm_bugreport+0x50a) [0x7f3ac6886c2a] /usr/lib64/libruby25.so.2.5(0x87849) [0x7f3ac6742849] /usr/lib64/libruby25.so.2.5(0x156302) [0x7f3ac6811302] /lib64/libc.so.6(0x7f3ac653a6a0) [0x7f3ac653a6a0] /usr/lib64/libruby25.so.2.5(ruby_xfree+0x17) [0x7f3ac675ca27] /usr/lib64/libxml2.so.2(xmlCleanupCharEncodingHandlers+0x96) [0x7f3ac5a7f646] /usr/lib64/libxml2.so.2(0x7f3ac5a7bc31) [0x7f3ac5a7bc31] /lib64/ld-linux-x86-64.so.2(0x7f3ac69f03e3) [0x7f3ac69f03e3] /lib64/libc.so.6(0x7f3ac653ccf7) [0x7f3ac653ccf7] /lib64/libc.so.6(0x3aeaa) [0x7f3ac653ceaa] /lib64/libc.so.6(__libc_start_main+0xf2) [0x7f3ac6525e12] /usr/bin/ruby25(_start+0x2a) [0x563b10ec111a] ./main.c:44 This looks like the same issue given that xmlCleanupCharEncodingHandlers is involved here as well. In any case I've just added 1.10.10 since this is not a regression and we will have a nokogiri version that is meant to work with the newer versions of libxml2 and libxslt. *** Bug 736214 has been marked as a duplicate of this bug. *** *** Bug 735666 has been marked as a duplicate of this bug. *** The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc0c637a699f51f9736527c162675b52548207c0 commit dc0c637a699f51f9736527c162675b52548207c0 Author: Sam James <sam@gentoo.org> AuthorDate: 2020-08-16 04:23:08 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2020-08-16 04:23:15 +0000 dev-libs/libxml2: add upstream patch for consumers Within our patchset (which included various upstream memory correctness fixes), we included a patch (0034-Call-xmlCleanupParser-on-ELF-destruction.patch) which has caused crashes in some applications e.g. nokogiri because they use a custom free handler. We apply upstream's patch for this issue (check-for-custom-free-function-in-global-destructor.patch). We will likely give this a small amount of time in ~arch, then move the stable keywords from 2.9.10 forward, as this is a minor change and affects the current stable for most arches. Bug: https://bugs.gentoo.org/710748 Bug: https://bugs.gentoo.org/737024 Package-Manager: Portage-3.0.2, Repoman-2.3.23 Signed-off-by: Sam James <sam@gentoo.org> dev-libs/libxml2/Manifest | 1 + dev-libs/libxml2/libxml2-2.9.10-r1.ebuild | 224 ++++++++++++++++++++++++++++++ 2 files changed, 225 insertions(+) I won't close the bug until we make the fixed version stable (in a day or so?). Thanks both for the research & information. *** Bug 737282 has been marked as a duplicate of this bug. *** I can confirm that this fixes the nokogiri crashes for me. (In reply to Hans de Graaff from comment #9) > I can confirm that this fixes the nokogiri crashes for me. Brilliant. If there's no open bugs, the plan is to move the stable keywords forward before midnight to get into the snapshot for tomorrow. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=542bf48302386a611ce63693f42114162f3d86a7 commit 542bf48302386a611ce63693f42114162f3d86a7 Author: Sam James <sam@gentoo.org> AuthorDate: 2020-08-16 22:51:04 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2020-08-16 22:51:13 +0000 dev-libs/libxml2: move forward stable keywords This contains a minor fix and we want to get it into today's snapshot. This was suggested in the bug and on IRC with no objections. Closes: https://bugs.gentoo.org/737024 Package-Manager: Portage-3.0.2, Repoman-2.3.23 Signed-off-by: Sam James <sam@gentoo.org> dev-libs/libxml2/libxml2-2.9.10-r1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) |