Created attachment 541564 [details] qemu-2.12.0-r3.build.log.xz TIME+ Command 0:25.12 /usr/bin/python2.7 -b /usr/lib/python-exec/python2.7/emerge -t1 --quiet-build=y --quiet-repo-display --nospinner --autounmask=y --autounmask-keep-masks=y --autounmask-unrestricted-atoms=n --autounmask-continue --unordered-display --verbose --backtrack=10 --jobs=1 --with-test-deps=n =dev-perl/Sys-Virt-1.1.2 0:00.00 └─ [app-emulation/qemu-2.12.0-r3] sandbox /usr/lib/portage/python2.7/ebuild.sh compile 0:00.06 └─ /bin/bash /usr/lib/portage/python2.7/ebuild.sh compile 0:00.00 └─ /bin/bash /usr/lib/portage/python2.7/ebuild.sh compile 0:00.00 └─ /bin/bash /usr/lib/portage/python2.7/ebuild-helpers/emake 0:01.05 └─ make -j3 V=1 13h50:06 └─ /usr/bin/perl /usr/bin/makeinfo --no-split --number-sections -I docs -I /var/tmp/portage/app-emulation/qemu-2.12.0-r3/work/qemu-2.12.0 -I . --no-headers --plaintext /var/tmp/portage/app-emulation/qemu-2.12.0-r3/work/qemu-2.12.0/qemu-doc.texi -o qemu-doc.txt Build log attached after sending SIGALRM to the makeinfo process. Note the extensive warnings from makeinfo about escaping "{", suggesting Perl 5.28 is likely a large player in this issue. Portage 2.3.40 (python 2.7.14-final-0, default/linux/amd64/17.1/no-multilib, gcc-7.3.0, glibc-2.26-r7, 4.9.6-gentoo-r1 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-4.9.6-gentoo-r1-x86_64-Intel-R-_Core-TM-2_Duo_CPU_E6750_@_2.66GHz-with-gentoo-2.4.1 KiB Mem: 2042732 total, 34908 free KiB Swap: 18588764 total, 18525536 free Head commit of repository gentoo: 2019468d7e751b6cff135d1a0700f78c7b380825 sh bash 4.4_p12 ld GNU ld (Gentoo 2.30 p2) 2.30.0 ccache version 3.3.4 [enabled] app-shells/bash: 4.4_p12::gentoo dev-lang/perl: 5.28.0::gentoo dev-lang/python: 2.7.14-r1::gentoo, 3.6.5::gentoo dev-util/ccache: 3.3.4-r1::gentoo dev-util/cmake: 3.9.6::gentoo sys-apps/baselayout: 2.4.1-r2::gentoo sys-apps/openrc: 0.34.11::gentoo sys-apps/sandbox: 2.13::gentoo sys-devel/autoconf: 2.69-r4::gentoo sys-devel/automake: 1.15.1-r2::gentoo sys-devel/binutils: 2.30-r2::gentoo sys-devel/gcc: 7.3.0-r3::gentoo sys-devel/gcc-config: 1.8-r1::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers) sys-libs/glibc: 2.26-r7::gentoo app-emulation/qemu-2.12.0-r3::gentoo would be built with the following: USE="aio bzip2 caps curl fdt filecaps jpeg ncurses nls pin-upstream-blobs png seccomp test vhost-net vnc xattr -accessibility -alsa -bluetooth (-capstone) -debug (-glusterfs) -gnutls -gtk -gtk2 -infiniband -iscsi -lzo -nfs -numa -opengl -pulseaudio -python -rbd -sasl -sdl -sdl2 (-selinux) -smartcard -snappy -spice -ssh (-static) -static-user -systemtap -tci -usb -usbredir -vde -virgl -virtfs -vte -xen -xfs" PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" QEMU_SOFTMMU_TARGETS="x86_64 -aarch64 -alpha -arm -cris -hppa -i386 -lm32 -m68k -microblaze -microblazeel -mips -mips64 -mips64el -mipsel -moxie -nios2 -or1k -ppc -ppc64 -ppcemb -riscv32 -riscv64 -s390x -sh4 -sh4eb -sparc -sparc64 -tricore -unicore32 -xtensa -xtensaeb" QEMU_USER_TARGETS="-aarch64 -aarch64_be -alpha -arm -armeb -cris -hppa -i386 -m68k -microblaze -microblazeel -mips -mips64 -mips64el -mipsel -mipsn32 -mipsn32el -nios2 -or1k -ppc -ppc64 -ppc64abi32 -ppc64le -riscv32 -riscv64 -s390x -sh4 -sh4eb -sparc -sparc32plus -sparc64 -tilegx -x86_64 -xtensa -xtensaeb" >>> Attempting to run pkg_info() for 'app-emulation/qemu-2.12.0-r3' Using: sys-firmware/edk2-ovmf-2017_p20180211 USE=binary sys-firmware/ipxe-1.0.0_p20180211 sys-firmware/seabios-1.11.0 USE=binary sys-firmware/sgabios-0.1_pre8-r1
In the event it might be helpful, here are the (non-system) dependencies that are pulled prior to tripping a failure: [ebuild N ] dev-perl/Sys-Virt-1.1.2 USE="{-test}" 0 KiB [ebuild N ] app-emulation/libvirt-4.3.0:0/4.3.0 USE="caps dbus libvirtd macvtap nls qemu udev vepa -apparmor -audit -firewalld -fuse -glusterfs -iscsi -libssh -lvm -lxc -nfs -numa (-openvz) -parted -pcap -phyp -policykit -rbd -sasl (-selinux) -uml -virt-network -virtualbox -wireshark-plugins -xen -zeroconf (-zfs)" 0 KiB [ebuild N ] app-emulation/qemu-2.12.0-r3 USE="aio bzip2 caps curl fdt filecaps jpeg ncurses nls pin-upstream-blobs png seccomp vhost-net vnc xattr -accessibility -alsa -bluetooth (-capstone) -debug (-glusterfs) -gnutls -gtk -gtk2 -infiniband -iscsi -lzo -nfs -numa -opengl -pulseaudio -python -rbd -sasl -sdl -sdl2 (-selinux) -smartcard -snappy -spice -ssh (-static) -static-user -systemtap -tci {-test} -usb -usbredir -vde -virgl -virtfs -vte -xen -xfs" PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" QEMU_SOFTMMU_TARGETS="x86_64 -aarch64 -alpha -arm -cris -hppa -i386 -lm32 -m68k -microblaze -microblazeel -mips -mips64 -mips64el -mipsel -moxie -nios2 -or1k -ppc -ppc64 -ppcemb -riscv32 -riscv64 -s390x -sh4 -sh4eb -sparc -sparc64 -tricore -unicore32 -xtensa -xtensaeb" QEMU_USER_TARGETS="-aarch64 -aarch64_be -alpha -arm -armeb -cris -hppa -i386 -m68k -microblaze -microblazeel -mips -mips64 -mips64el -mipsel -mipsn32 -mipsn32el -nios2 -or1k -ppc -ppc64 -ppc64abi32 -ppc64le -riscv32 -riscv64 -s390x -sh4 -sh4eb -sparc -sparc32plus -sparc64 -tilegx -x86_64 -xtensa -xtensaeb" 0 KiB [ebuild N ] sys-firmware/edk2-ovmf-2017_p20180211 USE="binary" 0 KiB [ebuild N ] x11-libs/pixman-0.34.0 USE="(-altivec) (-iwmmxt) (-loongson2f) (-neon) -static-libs" CPU_FLAGS_X86="mmxext sse2 ssse3" 0 KiB [ebuild N ] dev-libs/glib-2.52.3:2 USE="mime xattr -dbus -debug (-fam) (-selinux) -static-libs -systemtap {-test} -utils" PYTHON_TARGETS="python2_7" 0 KiB [ebuild N ] x11-misc/shared-mime-info-1.9 USE="{-test}" 0 KiB [ebuild N ] sys-libs/libcap-ng-0.7.8 USE="-python -static-libs" PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" 0 KiB [ebuild N ] media-libs/libpng-1.6.34:0/16 USE="-apng (-neon) -static-libs" CPU_FLAGS_X86="sse" 0 KiB [ebuild N ] virtual/jpeg-0-r2 USE="-static-libs" 0 KiB [ebuild N ] media-libs/libjpeg-turbo-1.5.1 USE="-java -static-libs" 0 KiB [ebuild N ] dev-lang/nasm-2.13.01 USE="-doc" 0 KiB [ebuild N ] sys-firmware/sgabios-0.1_pre8-r1 USE="binary" 0 KiB [ebuild N ] sys-firmware/ipxe-1.0.0_p20180211 USE="binary ipv6 qemu -efi -iso -lkrn -savedconfig -undi -usb -vmware" 0 KiB [ebuild N ] sys-firmware/seabios-1.11.0 USE="binary seavgabios -debug" 0 KiB [ebuild N ] dev-libs/libaio-0.3.110 USE="-static-libs {-test}" 0 KiB [ebuild N ] x11-libs/libxkbcommon-0.8.0 USE="-X -doc -static-libs {-test}" 0 KiB [ebuild N ] sys-apps/dtc-1.4.4 USE="-static-libs" 0 KiB [ebuild N ] dev-libs/yajl-2.1.0:0/2 USE="-static-libs" 0 KiB [ebuild N ] dev-util/cmake-3.9.6 USE="ncurses -doc -emacs -qt5 -server -system-jsoncpp {-test}" 0 KiB [ebuild N ] app-crypt/rhash-1.3.5 USE="nls ssl -debug -libressl -static-libs" 0 KiB [ebuild N ] app-arch/libarchive-3.3.1:0/13 USE="acl bzip2 e2fsprogs iconv lzma threads xattr zlib -expat -libressl -lz4 -lzo -nettle -static-libs" 0 KiB [ebuild N ] dev-perl/XML-XPath-1.130.0-r1 0 KiB [ebuild N ] app-text/xhtml1-20020801-r5 0 KiB [ebuild N ] dev-libs/libnl-3.4.0:3 USE="debug threads -python -static-libs -utils" PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" 0 KiB [ebuild N ] sys-apps/dmidecode-3.1 USE="(-selinux)" 0 KiB [ebuild N ] net-libs/libssh2-1.8.0-r1 USE="zlib -gcrypt -libressl -static-libs {-test}" 0 KiB [ebuild N ] sys-apps/dbus-1.10.24 USE="-X -debug -doc -elogind (-selinux) -static-libs -systemd {-test} -user-session" 0 KiB [ebuild N ] app-text/xmlto-0.0.26-r1 USE="-latex -text" 0 KiB [ebuild NS ] app-text/docbook-xml-dtd-4.2-r2:4.2 [4.1.2-r6:4.1.2] 0 KiB [ebuild NS ] app-text/docbook-xml-dtd-4.4-r2:4.4 [4.1.2-r6:4.1.2] 0 KiB [ebuild N ] x11-libs/libpciaccess-0.14 USE="zlib -static-libs" 0 KiB [ebuild N ] net-analyzer/netcat6-1.0-r2 USE="ipv6 nls -bluetooth" 0 KiB [ebuild N ] app-misc/scrub-2.6.1 0 KiB [ebuild N ] net-libs/rpcsvc-proto-1.3.1-r1 0 KiB And texinfo is the current stable 6.3
I've got the same problem happening with lilypond as well, making this squarely texinfos problem. Even the latest texinfo suffers this problem, and more research needs to be done as to whether 5.26 produces this problem as well. A potentially related note is building texinfo on 5.28 results in: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*/ at ../tp/Texinfo/Parser.pm line 5481. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*/ at ../tp/Texinfo/Parser.pm line 5481. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*(\@(c|comment)((\@|\s+).*)?)?/ at ../tp/Texinfo/Parser.pm line 5485. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*(\@(c|comment)((\@|\s+).*)?)?/ at ../tp/Texinfo/Parser.pm line 5485. make[3]: Leaving directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5/doc' make[2]: Leaving directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5/doc' Making all in man make[2]: Entering directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5/man' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5/man' make[2]: Entering directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5' make[2]: Leaving directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5' make[1]: Leaving directory '/var/tmp/portage/sys-apps/texinfo-6.5/work/texinfo-6.5' >>> Source compiled.
When building lilypond, the place it fails is during src_configure, as ./configure calls `make top-doc` Documentation/topdocs/INSTALL.makeinfotxt.log Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*/ at /usr/share/texinfo/Texinfo/Parser.pm line 5481. Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^\s+@([[:alnum:]][[:alnum:]\-]*)({ <-- HERE })?\s*(\@(c|comment)((\@|\s+).*)?)?/ at /usr/share/texinfo/Texinfo/Parser.pm line 5485. /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/common-macros.itexi:183: warning: @end ifset should only appear at the beginning of a line /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:31: warning: @vindex should only appear at the beginning of a line (possibly involving @rweb) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:217: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:226: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:300: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:309: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:368: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:377: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:427: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:436: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:532: warning: @vindex should only appear at the beginning of a line (possibly involving @ruser) /var/tmp/portage/media-sound/lilypond-2.19.80-r1/work/lilypond-2.19.80/Documentation/included/compile.itexi:566: warning: @vindex should only appear at the beginning of a line (possibly involving @rcontrib) Curiously, the qemu failure seems dependent on LC_ALL=C Running the makeinfo command manually without expressly setting LC_ALL=C first doesn't fail. Running the makeinfo command *with* LC_ALL=C hangs. Same pattern occurs for lilypond. `make top-doc` doesn't hang. `LC_ALL=C make top-doc` hangs.
Further poking indicates LC_ALL=C + --enable-encoding is the smoking gun. LC_ALL=en_NZ.utf8 + --enable-encoding is fine. LC_ALL=C + --disable-encoding is fine.
Ugh. Attempting to diagnose this with perl's debugger is a waste of time. The problem can't be exhibited under `perl -d`. Throwing gdb at the problem, after the program reaches the "freeze" point, an interrupt and backtrace returns: Thread 1 (Thread 0x7ffff7fee580 (LWP 51025)): #0 0x00007ffff7522478 in ?? () from /lib64/libc.so.6 No symbol table info available. #1 0x00007ffff75a7773 in mbrtowc () from /lib64/libc.so.6 No symbol table info available. #2 0x00007ffff51ceefb in xspara.add_next () from /usr/lib64/texinfo/XSParagraph.so No symbol table info available. #3 0x00007ffff51cefc4 in xspara_add_next () from /usr/lib64/texinfo/XSParagraph.so No symbol table info available. #4 0x00007ffff51cceec in ?? () from /usr/lib64/texinfo/XSParagraph.so No symbol table info available. #5 0x00007ffff79b2e31 in Perl_pp_entersub () from /usr/lib64/libperl.so.5.28 No symbol table info available. #6 0x00007ffff79a9086 in Perl_runops_standard () from /usr/lib64/libperl.so.5.28 No symbol table info available. #7 0x00007ffff79289e7 in perl_run () from /usr/lib64/libperl.so.5.28 No symbol table info available. #8 0x0000555555554eda in main () No symbol table info available. Getting stuck in mbrtowc is very suspicious. Documentation indicating mbrtowc's behaviour is LC_CTYPE dependent exposes the observation that all that is required to trip a fault is LC_CTYPE=C And that digs up: https://www.mail-archive.com/bug-texinfo@gnu.org/msg08815.html
removing 5.26 blocker as breakage is due to a 5.28 change.
I used patches from this thread: http://lists.gnu.org/archive/html/bug-texinfo/2018-06/msg00032.html It's work like a charm.
Any update on this bug? :-)
A patched texinfo-6.5-r1 is available in my overlay: https://github.com/stefantalpalaru/gentoo-overlay
I'm having this very problem with sys-libs/glibc-2.28-r5::gentoo
I hit the same issue with qemu-3.0.1 and perl-5.28.9999 now. The makeinfo ran in my case almost for 750 CPU hrs, what a waste. Please mask either the perl-5.28.* or makeinfo unless this is fixed. I do not see USE=doc flag in qemu ebuild. Could you at least force no doc building in quemu as a temporary workaround? The original makeinfo discussion referred to in bug #662368#c7 happened in June 2018. Why is this broken package kept in Gentoo. At the best just package mask the broken combination. I do not need anything fancy from new perl.
Created attachment 562376 [details, diff] [PATCH] Update locale handling for Perl 5.28 From http://lists.gnu.org/archive/html/bug-texinfo/2018-06/msg00032.html
Created attachment 562378 [details, diff] [PATCH] Fix unescaped left braces in regexps, deprecated since Perl 5.27.8 From http://lists.gnu.org/archive/html/bug-texinfo/2018-06/msg00032.html
Comment on attachment 562376 [details, diff] [PATCH] Update locale handling for Perl 5.28 Perl 5.28 introduced thread-safe locales, where setlocale() only affects the locale of the current thread. External code like mbrtowc(3) isn't aware of this thread specific locale, so we need to explicitly modify the global one instead. Without this we could enter a busy loop in xspara__add_next() (Texinfo::Convert::XSParagraph) for UTF-8 documents when mbrtowc(3) returned -1. Attached from http://lists.gnu.org/archive/html/bug-texinfo/2018-06/msg00032.html
Patches from the mentioned thread attached. I can confirm this fixes the issues, would be great to mainline this as 5.28 is keyworded for ~amd64 and destined for stable.
*** Bug 675798 has been marked as a duplicate of this bug. ***
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3331aabac66e77ff61f11c8e35c5a6f121f4cdc9 commit 3331aabac66e77ff61f11c8e35c5a6f121f4cdc9 Author: Andreas K. Hüttel <dilfridge@gentoo.org> AuthorDate: 2019-01-24 22:18:54 +0000 Commit: Andreas K. Hüttel <dilfridge@gentoo.org> CommitDate: 2019-01-24 22:19:20 +0000 sys-apps/texinfo: Backport perl-5.28 fixes from upstream Closes: https://bugs.gentoo.org/662368 Package-Manager: Portage-2.3.57, Repoman-2.3.12 Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> .../files/texinfo-6.5-escape-braces-in-regex.patch | 28 +++++++++++++ ...texinfo-6.5-perl-5.28-thread-safe-locales.patch | 37 +++++++++++++++++ sys-apps/texinfo/texinfo-6.5-r1.ebuild | 47 ++++++++++++++++++++++ 3 files changed, 112 insertions(+)
We should probably stabilize something here.
*** Bug 678416 has been marked as a duplicate of this bug. ***
(In reply to Andreas K. Hüttel from comment #18) > We should probably stabilize something here. Let's reopen it to avoid duplicates. See bug 679174 for the relevant stabilization.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ebf70ac0534ba9c5ab2ce309f38e12d8382a41cb commit ebf70ac0534ba9c5ab2ce309f38e12d8382a41cb Author: Andreas K. Hüttel <dilfridge@gentoo.org> AuthorDate: 2019-10-25 05:32:24 +0000 Commit: Andreas K. Hüttel <dilfridge@gentoo.org> CommitDate: 2019-10-25 05:35:29 +0000 sys-apps/texinfo: drop all keywords of 6.3 except ia64 Closes: https://bugs.gentoo.org/662368 Bug: https://bugs.gentoo.org/679174 Package-Manager: Portage-2.3.77, Repoman-2.3.17 Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> sys-apps/texinfo/texinfo-6.3.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39367cf38a99acb606ab389340b2f1fb40e990ce commit 39367cf38a99acb606ab389340b2f1fb40e990ce Author: Andreas K. Hüttel <dilfridge@gentoo.org> AuthorDate: 2020-01-22 00:48:25 +0000 Commit: Andreas K. Hüttel <dilfridge@gentoo.org> CommitDate: 2020-01-22 00:48:25 +0000 sys-apps/texinfo: Remove old Closes: https://bugs.gentoo.org/662368 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> sys-apps/texinfo/Manifest | 1 - sys-apps/texinfo/texinfo-6.3.ebuild | 40 ------------------------------------- 2 files changed, 41 deletions(-)