* ARM compilation via qemu binfmt - Assertion failure [not found] ` <87k1vqv23v.fsf@abyayala.i-did-not-set--mail-host-address--so-tickle-me> @ 2018-02-08 16:42 ` Danny Milosavljevic 2018-02-10 23:45 ` Chris Marusich 2018-02-16 10:35 ` bug#30394: " Ludovic Courtès 0 siblings, 2 replies; 5+ messages in thread From: Danny Milosavljevic @ 2018-02-08 16:42 UTC (permalink / raw) To: ng0, guix-devel, bug-guix Hi ng0, On Tue, 06 Feb 2018 10:33:56 +0000 ng0@n0.is wrote: > recently I've read about slow but native compiling of ARM on qemu. Unfortunately, there's a (pretty reproducible) problem with it. guix-master/guix $ ./pre-inst-env guix system disk-image --system=armhf-linux -e "(@ (gnu system install) installation-os)" [... building grub-2.02 ...] phase `configure' succeeded after 821.8 seconds starting phase `patch-generated-file-shebangs' patch-makefile-SHELL: ./po/Makefile: changing `SHELL' from `/bin/sh' to `/gnu/st[...] phase `patch-generated-file-shebangs' succeeded after 14.6 seconds starting phase `build' bison -d -p grub_script_yy -b grub_script ./grub-core/script/parser.y flex -o grub_script.yy.c --header-file=grub_script.yy.h ./grub-core/script/yylex[...] bison: ../sysdeps/unix/sysv/linux/spawni.c:360: __spawnix: Assertion `ec >= 0' failed This is only fixed in glibc 2.27 (not in core-updates). The fix is: https://sourceware.org/bugzilla/show_bug.cgi?id=22273 diff --git a/sysdeps/unix/sysv/linux/spawni.c b/sysdeps/unix/sysv/linux/spawni.c index dea1650..f02ac19 100644 --- a/sysdeps/unix/sysv/linux/spawni.c +++ b/sysdeps/unix/sysv/linux/spawni.c @@ -365,9 +365,15 @@ __spawnix (pid_t * pid, const char *file, if (new_pid > 0) { ec = args.err; - assert (ec >= 0); if (ec != 0) - __waitpid (new_pid, NULL, 0); + { + /* It handles the unlikely case where the auxiliary vfork process + is killed before calling _exit or execve. */ + int status; + __waitpid (new_pid, &status, 0); + if (WIFSIGNALED (status)) + ec = 0; + } } else ec = -new_pid; ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: ARM compilation via qemu binfmt - Assertion failure 2018-02-08 16:42 ` ARM compilation via qemu binfmt - Assertion failure Danny Milosavljevic @ 2018-02-10 23:45 ` Chris Marusich 2018-02-11 1:07 ` bug#30394: " Leo Famulari 2018-02-11 9:53 ` Pjotr Prins 2018-02-16 10:35 ` bug#30394: " Ludovic Courtès 1 sibling, 2 replies; 5+ messages in thread From: Chris Marusich @ 2018-02-10 23:45 UTC (permalink / raw) To: Danny Milosavljevic; +Cc: guix-devel, bug-guix, ng0 [-- Attachment #1: Type: text/plain, Size: 279 bytes --] Danny Milosavljevic <dannym@scratchpost.org> writes: > This is only fixed in glibc 2.27 (not in core-updates). Should we upgrade glibc in core-updates, then? Or is it better to do it in the next core-updates cycle, to avoid still more unexpected breakage? -- Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 832 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#30394: ARM compilation via qemu binfmt - Assertion failure 2018-02-10 23:45 ` Chris Marusich @ 2018-02-11 1:07 ` Leo Famulari 2018-02-11 9:53 ` Pjotr Prins 1 sibling, 0 replies; 5+ messages in thread From: Leo Famulari @ 2018-02-11 1:07 UTC (permalink / raw) To: Chris Marusich; +Cc: guix-devel, 30394, ng0 [-- Attachment #1: Type: text/plain, Size: 454 bytes --] On Sun, Feb 11, 2018 at 12:45:18AM +0100, Chris Marusich wrote: > Danny Milosavljevic <dannym@scratchpost.org> writes: > > > This is only fixed in glibc 2.27 (not in core-updates). > > Should we upgrade glibc in core-updates, then? Or is it better to do it > in the next core-updates cycle, to avoid still more unexpected breakage? It's too late in this cycle. Upgrading glibc would require a full rebuild and would introduce new failures. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ARM compilation via qemu binfmt - Assertion failure 2018-02-10 23:45 ` Chris Marusich 2018-02-11 1:07 ` bug#30394: " Leo Famulari @ 2018-02-11 9:53 ` Pjotr Prins 1 sibling, 0 replies; 5+ messages in thread From: Pjotr Prins @ 2018-02-11 9:53 UTC (permalink / raw) To: Chris Marusich; +Cc: guix-devel, bug-guix, ng0 On Sun, Feb 11, 2018 at 12:45:18AM +0100, Chris Marusich wrote: > Danny Milosavljevic <dannym@scratchpost.org> writes: > > > This is only fixed in glibc 2.27 (not in core-updates). > > Should we upgrade glibc in core-updates, then? Or is it better to do it > in the next core-updates cycle, to avoid still more unexpected breakage? I think we should not update packages deep in the tree unless there is a security patch. What we have now is well tested. Pj. -- ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#30394: ARM compilation via qemu binfmt - Assertion failure 2018-02-08 16:42 ` ARM compilation via qemu binfmt - Assertion failure Danny Milosavljevic 2018-02-10 23:45 ` Chris Marusich @ 2018-02-16 10:35 ` Ludovic Courtès 1 sibling, 0 replies; 5+ messages in thread From: Ludovic Courtès @ 2018-02-16 10:35 UTC (permalink / raw) To: Danny Milosavljevic; +Cc: guix-devel, 30394, ng0 Hello, Danny Milosavljevic <dannym@scratchpost.org> skribis: > Unfortunately, there's a (pretty reproducible) problem with it. > > guix-master/guix $ ./pre-inst-env guix system disk-image --system=armhf-linux -e "(@ (gnu system install) installation-os)" > [... building grub-2.02 ...] > phase `configure' succeeded after 821.8 seconds > starting phase `patch-generated-file-shebangs' > patch-makefile-SHELL: ./po/Makefile: changing `SHELL' from `/bin/sh' to `/gnu/st[...] > phase `patch-generated-file-shebangs' succeeded after 14.6 seconds > starting phase `build' > bison -d -p grub_script_yy -b grub_script ./grub-core/script/parser.y > flex -o grub_script.yy.c --header-file=grub_script.yy.h ./grub-core/script/yylex[...] > bison: ../sysdeps/unix/sysv/linux/spawni.c:360: __spawnix: Assertion `ec >= 0' failed [...] > https://sourceware.org/bugzilla/show_bug.cgi?id=22273 > diff --git a/sysdeps/unix/sysv/linux/spawni.c b/sysdeps/unix/sysv/linux/spawni.c > index dea1650..f02ac19 100644 > --- a/sysdeps/unix/sysv/linux/spawni.c > +++ b/sysdeps/unix/sysv/linux/spawni.c > @@ -365,9 +365,15 @@ __spawnix (pid_t * pid, const char *file, > if (new_pid > 0) > { > ec = args.err; > - assert (ec >= 0); > if (ec != 0) Note that this is only a problem for code that uses the ‘posix_spawn’ interface, such as Bison in the example above. In practice that interface is rarely used, which is probably why I never hit that assertion before. Ludo’. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-02-16 10:36 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <87bmh4qrf5.fsf@abyayala.i-did-not-set--mail-host-address--so-tickle-me> [not found] ` <87bmh3kbd9.fsf@gnu.org> [not found] ` <87k1vqv23v.fsf@abyayala.i-did-not-set--mail-host-address--so-tickle-me> 2018-02-08 16:42 ` ARM compilation via qemu binfmt - Assertion failure Danny Milosavljevic 2018-02-10 23:45 ` Chris Marusich 2018-02-11 1:07 ` bug#30394: " Leo Famulari 2018-02-11 9:53 ` Pjotr Prins 2018-02-16 10:35 ` bug#30394: " Ludovic Courtès
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).