unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34427: guile-bootstrap@2.2 segfault?
@ 2019-02-11  9:11 Efraim Flashner
  2019-02-12  9:17 ` bug#34427: [PATCH] build guile-static with guile-2.0 Efraim Flashner
  2019-02-12 14:27 ` bug#34427: guile-bootstrap@2.2 segfault? Ludovic Courtès
  0 siblings, 2 replies; 15+ messages in thread
From: Efraim Flashner @ 2019-02-11  9:11 UTC (permalink / raw)
  To: 34427


[-- Attachment #1.1: Type: text/plain, Size: 362 bytes --]

I'm testing %bootstrap-guile from bootstrap.scm and I'm getting a
segfault when runing guile --version. I've attached an strace of the
process.


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #1.2: guile_strace --]
[-- Type: text/plain, Size: 7700 bytes --]

16301 execve("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/bin/guile", ["/gnu/store/m7xa9rd869yrd88x6x7ri"..., "--version"], 0xbf8fd040 /* 27 vars */) = 0
16301 brk(NULL)                         = 0x106cc000
16301 brk(0x106ccd4c)                   = 0x106ccd4c
16301 uname({sysname="Linux", nodename="g4", ...}) = 0
16301 set_tid_address(0x106cc068)       = 16301
16301 set_robust_list(0x106cc070, 12)   = 0
16301 rt_sigaction(SIGRTMIN, {sa_handler=0x100f0748, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0
16301 rt_sigaction(SIGRT_1, {sa_handler=0x100f0828, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
16301 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
16301 ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
16301 readlink("/proc/self/exe", "/gnu/store/m7xa9rd869yrd88x6x7ri"..., 4096) = 73
16301 brk(0x106edd4c)                   = 0x106edd4c
16301 brk(0x106ee000)                   = 0x106ee000
16301 openat(AT_FDCWD, "/run/current-system/locale/2.28/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
16301 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.28/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
16301 openat(AT_FDCWD, "/run/current-system/locale/2.28/en_IL/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
16301 openat(AT_FDCWD, "/run/current-system/locale/2.28/en/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
16301 write(2, "guile: warning: failed to instal"..., 41) = 41
16301 futex(0x1036dd44, FUTEX_WAKE_PRIVATE, 2147483647) = 0
16301 openat(AT_FDCWD, "/proc/self/maps", O_RDONLY|O_CLOEXEC) = 3
16301 ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
16301 fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
16301 read(3, "00100000-00103000 r-xp 00000000 "..., 1024) = 456
16301 close(3)                          = 0
16301 sched_getaffinity(16301, 32, [0]) = 4
16301 brk(0x106fe000)                   = 0x106fe000
16301 brk(0x1070e000)                   = 0x1070e000
16301 brk(0x1071e000)                   = 0x1071e000
16301 brk(0x1072e000)                   = 0x1072e000
16301 brk(0x1073e000)                   = 0x1073e000
16301 rt_sigaction(SIGPWR, {sa_handler=0x100e1514, sa_mask=~[INT QUIT ABRT TERM RTMIN RT_1], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
16301 rt_sigaction(SIGXCPU, {sa_handler=0x100e1200, sa_mask=~[INT QUIT ABRT TERM RTMIN RT_1], sa_flags=SA_RESTART}, NULL, 8) = 0
16301 rt_sigprocmask(SIG_UNBLOCK, [XCPU PWR], NULL, 8) = 0
16301 openat(AT_FDCWD, "/proc/stat", O_RDONLY) = 3
16301 read(3, "cpu  79046 1474 32444 6400729 91"..., 4096) = 1308
16301 close(3)                          = 0
16301 swapcontext(0xbfd68968, 0)        = 0
16301 brk(0x107be000)                   = 0x107be000
16301 pipe2([3, 4], O_CLOEXEC)          = 0
16301 futex(0x1036dc98, FUTEX_WAKE_PRIVATE, 2147483647) = 0
16301 clock_gettime(CLOCK_REALTIME, {tv_sec=1549875824, tv_nsec=168848026}) = 0
16301 clock_gettime(CLOCK_PROCESS_CPUTIME_ID, {tv_sec=0, tv_nsec=7758656}) = 0
16301 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.28/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No such file or directory)
16301 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.28/lib/gconv/gconv-modules", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
16301 futex(0x10380884, FUTEX_WAKE_PRIVATE, 2147483647) = 0
16301 openat(AT_FDCWD, "/dev/urandom", O_RDONLY|O_LARGEFILE) = 5
16301 fstat64(5, {st_mode=S_IFCHR|0666, st_rdev=makedev(0x1, 0x9), ...}) = 0
16301 ioctl(5, TCGETS, 0xbfd68ec8)      = -1 EINVAL (Invalid argument)
16301 read(5, "U\254.\237\4u\321\354\272\36e\316\7%\262\230\31A\2373\372p\313V7Le\325s\32\351\225"..., 4096) = 4096
16301 close(5)                          = 0
16301 brk(0x107ce000)                   = 0x107ce000
16301 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
16301 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7b6e000
16301 fcntl64(0, F_GETFL)               = 0x2 (flags O_RDWR)
16301 _llseek(0, 0, 0xbfd68a38, SEEK_CUR) = -1 ESPIPE (Illegal seek)
16301 ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
16301 fcntl64(1, F_GETFL)               = 0x2 (flags O_RDWR)
16301 _llseek(1, 0, 0xbfd68a38, SEEK_CUR) = -1 ESPIPE (Illegal seek)
16301 ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) = 0
16301 fcntl64(2, F_GETFL)               = 0x2 (flags O_RDWR)
16301 _llseek(2, 0, 0xbfd68a38, SEEK_CUR) = -1 ESPIPE (Illegal seek)
16301 readlink("/proc/self/exe", "/gnu/store/m7xa9rd869yrd88x6x7ri"..., 256) = 73
16301 lstat64("/gnu", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
16301 lstat64("/gnu/store", {st_mode=S_IFDIR|S_ISVTX|0775, st_size=73728, ...}) = 0
16301 lstat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0
16301 lstat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/bin", {st_mode=S_IFDIR|0555, st_size=4096, ...}) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/share/guile/2.2/ice-9/eval.scm", {st_mode=S_IFREG|0444, st_size=25718, ...}) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/eval.go", {st_mode=S_IFREG|0444, st_size=87205, ...}) = 0
16301 openat(AT_FDCWD, "/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/eval.go", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
16301 _llseek(5, 0, [87205], SEEK_END)  = 0
16301 mmap2(NULL, 87205, PROT_READ, MAP_PRIVATE, 5, 0) = 0xb7b58000
16301 close(5)                          = 0
16301 mprotect(0xb7b68000, 1892, PROT_READ|PROT_WRITE) = 0
16301 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/share/guile/2.2/init.scm", 0xbfd69048) = -1 ENOENT (No such file or directory)
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/share/guile/2.2/ice-9/boot-9.scm", {st_mode=S_IFREG|0444, st_size=147360, ...}) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/boot-9.go", {st_mode=S_IFREG|0444, st_size=516373, ...}) = 0
16301 openat(AT_FDCWD, "/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/boot-9.go", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
16301 _llseek(5, 0, [516373], SEEK_END) = 0
16301 mmap2(NULL, 516373, PROT_READ, MAP_PRIVATE, 5, 0) = 0xb7ad9000
16301 close(5)                          = 0
16301 mprotect(0xb7b29000, 73344, PROT_READ|PROT_WRITE) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/share/guile/2.2/ice-9/psyntax-pp.scm", {st_mode=S_IFREG|0444, st_size=185011, ...}) = 0
16301 stat64("/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/psyntax-pp.go", {st_mode=S_IFREG|0444, st_size=472229, ...}) = 0
16301 openat(AT_FDCWD, "/gnu/store/m7xa9rd869yrd88x6x7ri6wnan4f7yl4-guile-bootstrap-2.0/lib/guile/2.2/ccache/ice-9/psyntax-pp.go", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
16301 _llseek(5, 0, [472229], SEEK_END) = 0
16301 mmap2(NULL, 472229, PROT_READ, MAP_PRIVATE, 5, 0) = 0xb7a65000
16301 close(5)                          = 0
16301 mprotect(0xb7ab5000, 34496, PROT_READ|PROT_WRITE) = 0
16301 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x31dbc378} ---
16301 +++ killed by SIGSEGV +++

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: [PATCH] build guile-static with guile-2.0
  2019-02-11  9:11 bug#34427: guile-bootstrap@2.2 segfault? Efraim Flashner
@ 2019-02-12  9:17 ` Efraim Flashner
  2019-02-16 16:06   ` bug#34427: [bug#34453] " Ludovic Courtès
  2019-02-12 14:27 ` bug#34427: guile-bootstrap@2.2 segfault? Ludovic Courtès
  1 sibling, 1 reply; 15+ messages in thread
From: Efraim Flashner @ 2019-02-12  9:17 UTC (permalink / raw)
  To: guix-patches; +Cc: 34427


[-- Attachment #1.1: Type: text/plain, Size: 365 bytes --]

When experimenting I found that using guile@2.0 as a base for
guile-static, the resulting guile-static didn't segfault on the target
architecture.


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #1.2: 0001-gnu-guile-static-Build-for-guile-2.0.patch --]
[-- Type: text/plain, Size: 5192 bytes --]

From 18035c4ec2c698f01e6324bc013a536fc036cc0a Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 11 Feb 2019 15:10:29 +0200
Subject: [PATCH 1/2] gnu: %guile-static: Build for guile@2.0.

%guile-static@2.2 currently segfaults when run.

* gnu/packages/make-bootstrap.scm (%guile-static): Rewrite package to
use guile@2.0 as a base.
---
 gnu/packages/make-bootstrap.scm | 34 ++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm
index c6002eb63a..836f24debf 100644
--- a/gnu/packages/make-bootstrap.scm
+++ b/gnu/packages/make-bootstrap.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
 ;;;
@@ -518,29 +518,29 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
   ;; .scm and .go files relative to its installation directory, rather
   ;; than in hard-coded configure-time paths.
   (let* ((patches (cons* (search-patch "guile-relocatable.patch")
-                         (search-patch "guile-2.2-default-utf8.patch")
+                         (search-patch "guile-default-utf8.patch")
                          (search-patch "guile-linux-syscalls.patch")
-                         (origin-patches (package-source guile-2.2))))
-         (source  (origin (inherit (package-source guile-2.2))
+                         (origin-patches (package-source guile-2.0))))
+         (source  (origin (inherit (package-source guile-2.0))
                     (patches patches)))
-         (guile (package (inherit guile-2.2)
-                  (name (string-append (package-name guile-2.2) "-static"))
+         (guile (package (inherit guile-2.0)
+                  (name (string-append (package-name guile-2.0) "-static"))
                   (source source)
                   (synopsis "Statically-linked and relocatable Guile")
 
                   ;; Remove the 'debug' output (see above for the reason.)
-                  (outputs (delete "debug" (package-outputs guile-2.2)))
+                  (outputs (delete "debug" (package-outputs guile-2.0)))
 
                   (inputs
                    `(("libunistring:static" ,libunistring "static")
-                     ,@(package-inputs guile-2.2)))
+                     ,@(package-inputs guile-2.0)))
 
                   (propagated-inputs
                    `(("bdw-gc" ,libgc)
                      ,@(alist-delete "bdw-gc"
-                                     (package-propagated-inputs guile-2.2))))
+                                     (package-propagated-inputs guile-2.0))))
                   (arguments
-                   (substitute-keyword-arguments (package-arguments guile-2.2)
+                   (substitute-keyword-arguments (package-arguments guile-2.0)
                      ((#:configure-flags flags '())
                       ;; When `configure' checks for ltdl availability, it
                       ;; doesn't try to link using libtool, and thus fails
@@ -563,7 +563,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
                                (("^guile_LDFLAGS =")
                                 "guile_LDFLAGS = -all-static")
 
-                               ;; Add `-ldl' *after* libguile-2.2.la.
+                               ;; Add `-ldl' *after* libguile-2.0.la.
                                (("^guile_LDADD =(.*)$" _ ldadd)
                                 (string-append "guile_LDADD = "
                                                (string-trim-right ldadd)
@@ -591,13 +591,13 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
                 (out    (assoc-ref %outputs "out"))
                 (guile1 (string-append in "/bin/guile"))
                 (guile2 (string-append out "/bin/guile")))
-           (mkdir-p (string-append out "/share/guile/2.2"))
-           (copy-recursively (string-append in "/share/guile/2.2")
-                             (string-append out "/share/guile/2.2"))
+           (mkdir-p (string-append out "/share/guile/2.0"))
+           (copy-recursively (string-append in "/share/guile/2.0")
+                             (string-append out "/share/guile/2.0"))
 
-           (mkdir-p (string-append out "/lib/guile/2.2/ccache"))
-           (copy-recursively (string-append in "/lib/guile/2.2/ccache")
-                             (string-append out "/lib/guile/2.2/ccache"))
+           (mkdir-p (string-append out "/lib/guile/2.0/ccache"))
+           (copy-recursively (string-append in "/lib/guile/2.0/ccache")
+                             (string-append out "/lib/guile/2.0/ccache"))
 
            (mkdir (string-append out "/bin"))
            (copy-file guile1 guile2)
-- 
2.20.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2019-02-11  9:11 bug#34427: guile-bootstrap@2.2 segfault? Efraim Flashner
  2019-02-12  9:17 ` bug#34427: [PATCH] build guile-static with guile-2.0 Efraim Flashner
@ 2019-02-12 14:27 ` Ludovic Courtès
  2019-02-12 15:44   ` Efraim Flashner
  1 sibling, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2019-02-12 14:27 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34427

Hello Efraim,

Efraim Flashner <efraim@flashner.co.il> skribis:

> I'm testing %bootstrap-guile from bootstrap.scm and I'm getting a
> segfault when runing guile --version. I've attached an strace of the
> process.

To be clear, I believe this is for a *cross-compiled* Guile, right?

The natively-built binary on x86_64-linux works fine:

--8<---------------cut here---------------start------------->8---
$ unshare -mrf chroot $(guix build guile-static-stripped) ./bin/guile --version
guile: warning: failed to install locale
GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
GC Warning: Couldn't read /proc/stat
guile (GNU Guile) 2.2.4
Copyright (C) 2018 Free Software Foundation, Inc.

License LGPLv3+: GNU LGPL 3 or later <http://gnu.org/licenses/lgpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
$ guix describe
Generacio 61	Feb 12 2019 11:14:38	(nuna)
  guix c86b5f1
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: c86b5f1b9bdfdd478ba15804f9343feb8d9c019b
$ uname -m
x86_64
--8<---------------cut here---------------end--------------->8---

Since I saw a build failure similar to the one you mention when
cross-building for GNU/Hurd, I’m tempted to think this has to do with
cross-compilation.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2019-02-12 14:27 ` bug#34427: guile-bootstrap@2.2 segfault? Ludovic Courtès
@ 2019-02-12 15:44   ` Efraim Flashner
  2022-04-12 10:12     ` zimoun
  2022-04-12 16:01     ` Ludovic Courtès
  0 siblings, 2 replies; 15+ messages in thread
From: Efraim Flashner @ 2019-02-12 15:44 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34427

[-- Attachment #1: Type: text/plain, Size: 1925 bytes --]

On Tue, Feb 12, 2019 at 03:27:37PM +0100, Ludovic Courtès wrote:
> Hello Efraim,
> 
> Efraim Flashner <efraim@flashner.co.il> skribis:
> 
> > I'm testing %bootstrap-guile from bootstrap.scm and I'm getting a
> > segfault when runing guile --version. I've attached an strace of the
> > process.
> 
> To be clear, I believe this is for a *cross-compiled* Guile, right?

That's right, %bootstrap-guile is extracted from $(guix build
--target=powerpc-linux-gnu bootstrap-tarballs)

> 
> The natively-built binary on x86_64-linux works fine:
> 
> --8<---------------cut here---------------start------------->8---
> $ unshare -mrf chroot $(guix build guile-static-stripped) ./bin/guile --version
> guile: warning: failed to install locale
> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
> GC Warning: Couldn't read /proc/stat
> guile (GNU Guile) 2.2.4
> Copyright (C) 2018 Free Software Foundation, Inc.
> 
> License LGPLv3+: GNU LGPL 3 or later <http://gnu.org/licenses/lgpl.html>.
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> $ guix describe
> Generacio 61	Feb 12 2019 11:14:38	(nuna)
>   guix c86b5f1
>     repository URL: https://git.savannah.gnu.org/git/guix.git
>     branch: master
>     commit: c86b5f1b9bdfdd478ba15804f9343feb8d9c019b
> $ uname -m
> x86_64
> --8<---------------cut here---------------end--------------->8---
> 
> Since I saw a build failure similar to the one you mention when
> cross-building for GNU/Hurd, I’m tempted to think this has to do with
> cross-compilation.
> 
> Thanks,
> Ludo’.

I saw you mentioned that on IRC.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: [bug#34453] [PATCH] build guile-static with guile-2.0
  2019-02-12  9:17 ` bug#34427: [PATCH] build guile-static with guile-2.0 Efraim Flashner
@ 2019-02-16 16:06   ` Ludovic Courtès
  2022-04-12 10:10     ` bug#34427: bug#34453: " zimoun
  0 siblings, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2019-02-16 16:06 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34453, 34427

Hi Efraim,

Efraim Flashner <efraim@flashner.co.il> skribis:

> When experimenting I found that using guile@2.0 as a base for
> guile-static, the resulting guile-static didn't segfault on the target
> architecture.

As discussed in <https://issues.guix.info/issue/34427>, I would rather
fix the segfault in 2.2 than move back to 2.0 and effectively delay the
problem.

Ludo’.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: bug#34453: [PATCH] build guile-static with guile-2.0
  2019-02-16 16:06   ` bug#34427: [bug#34453] " Ludovic Courtès
@ 2022-04-12 10:10     ` zimoun
  0 siblings, 0 replies; 15+ messages in thread
From: zimoun @ 2022-04-12 10:10 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34453, 34427

Hi,

What is the status of this old patch #34453?

http://issues.guix.gnu.org/issue/34453


On Sat, 16 Feb 2019 at 17:06, Ludovic Courtès <ludo@gnu.org> wrote:
> Efraim Flashner <efraim@flashner.co.il> skribis:
>
>> When experimenting I found that using guile@2.0 as a base for
>> guile-static, the resulting guile-static didn't segfault on the target
>> architecture.
>
> As discussed in <https://issues.guix.info/issue/34427>, I would rather
> fix the segfault in 2.2 than move back to 2.0 and effectively delay the
> problem.

Note that #34427 is still open.


Cheers,
simon




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2019-02-12 15:44   ` Efraim Flashner
@ 2022-04-12 10:12     ` zimoun
  2022-04-12 16:01     ` Ludovic Courtès
  1 sibling, 0 replies; 15+ messages in thread
From: zimoun @ 2022-04-12 10:12 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34427

Hi,

This bug #34427 is marked as important 3 years, 5 weeks, 1 day ago.  Is
it important? ;-)

http://issues.guix.gnu.org/issue/34427

On Tue, 12 Feb 2019 at 17:44, Efraim Flashner <efraim@flashner.co.il> wrote:
> On Tue, Feb 12, 2019 at 03:27:37PM +0100, Ludovic Courtès wrote:

>> Since I saw a build failure similar to the one you mention when
>> cross-building for GNU/Hurd, I’m tempted to think this has to do with
>> cross-compilation.

What is the status of this bug?


Cheers,
simon




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2019-02-12 15:44   ` Efraim Flashner
  2022-04-12 10:12     ` zimoun
@ 2022-04-12 16:01     ` Ludovic Courtès
  2022-04-13 21:01       ` Efraim Flashner
  1 sibling, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2022-04-12 16:01 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34427

Hi,

Efraim Flashner <efraim@flashner.co.il> skribis:

> On Tue, Feb 12, 2019 at 03:27:37PM +0100, Ludovic Courtès wrote:
>> Hello Efraim,
>> 
>> Efraim Flashner <efraim@flashner.co.il> skribis:
>> 
>> > I'm testing %bootstrap-guile from bootstrap.scm and I'm getting a
>> > segfault when runing guile --version. I've attached an strace of the
>> > process.
>> 
>> To be clear, I believe this is for a *cross-compiled* Guile, right?
>
> That's right, %bootstrap-guile is extracted from $(guix build
> --target=powerpc-linux-gnu bootstrap-tarballs)

Cross-compilation to aarch64-linux-gnu works fine:

--8<---------------cut here---------------start------------->8---
$ unshare -mrf chroot $(guix build guile-static-stripped --target=aarch64-linux-gnu) /bin/guile
guile: warning: failed to install locale
GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
GC Warning: Couldn't read /proc/stat
warning: failed to install locale: Invalid argument
GNU Guile 3.0.7
Copyright (C) 1995-2021 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> %host-type
$1 = "aarch64-unknown-linux-gnu"
scheme@(guile-user)> ,q
$ guix describe
Generation 210  Apr 11 2022 09:34:10    (current)
  guix 7da907f
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 7da907f90e74a4edf96d76ee457ff958265ef8d4
--8<---------------cut here---------------end--------------->8---

The problem has to do specifically with powerpc-linux-gnu (this is with
transparent emulation via QEMU+binfmt_misc):

--8<---------------cut here---------------start------------->8---
$ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
guile: warning: failed to install locale
GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
GC Warning: Couldn't read /proc/stat
Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S" (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
Aborted
--8<---------------cut here---------------end--------------->8---

Unfortunately I fail to get a backtrace from that core dump.

Efraim, could you get a backtrace on the bare metal?

Besides, if PPC32 is the only platform that has a problem, I think this
bug should not be a blocker.

WDYT?

Ludo’.




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-04-12 16:01     ` Ludovic Courtès
@ 2022-04-13 21:01       ` Efraim Flashner
  2022-04-15  7:45         ` Ludovic Courtès
  2022-10-08  2:46         ` Maxim Cournoyer
  0 siblings, 2 replies; 15+ messages in thread
From: Efraim Flashner @ 2022-04-13 21:01 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34427


[-- Attachment #1.1: Type: text/plain, Size: 2921 bytes --]

On Tue, Apr 12, 2022 at 06:01:39PM +0200, Ludovic Courtès wrote:
> Hi,
> 
> Efraim Flashner <efraim@flashner.co.il> skribis:
> 
> > On Tue, Feb 12, 2019 at 03:27:37PM +0100, Ludovic Courtès wrote:
> >> Hello Efraim,
> >> 
> >> Efraim Flashner <efraim@flashner.co.il> skribis:
> >> 
> >> > I'm testing %bootstrap-guile from bootstrap.scm and I'm getting a
> >> > segfault when runing guile --version. I've attached an strace of the
> >> > process.
> >> 
> >> To be clear, I believe this is for a *cross-compiled* Guile, right?
> >
> > That's right, %bootstrap-guile is extracted from $(guix build
> > --target=powerpc-linux-gnu bootstrap-tarballs)
> 
> Cross-compilation to aarch64-linux-gnu works fine:
> 
> --8<---------------cut here---------------start------------->8---
> $ unshare -mrf chroot $(guix build guile-static-stripped --target=aarch64-linux-gnu) /bin/guile
> guile: warning: failed to install locale
> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
> GC Warning: Couldn't read /proc/stat
> warning: failed to install locale: Invalid argument
> GNU Guile 3.0.7
> Copyright (C) 1995-2021 Free Software Foundation, Inc.
> 
> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
> This program is free software, and you are welcome to redistribute it
> under certain conditions; type `,show c' for details.
> 
> Enter `,help' for help.
> scheme@(guile-user)> %host-type
> $1 = "aarch64-unknown-linux-gnu"
> scheme@(guile-user)> ,q
> $ guix describe
> Generation 210  Apr 11 2022 09:34:10    (current)
>   guix 7da907f
>     repository URL: https://git.savannah.gnu.org/git/guix.git
>     branch: master
>     commit: 7da907f90e74a4edf96d76ee457ff958265ef8d4
> --8<---------------cut here---------------end--------------->8---
> 
> The problem has to do specifically with powerpc-linux-gnu (this is with
> transparent emulation via QEMU+binfmt_misc):
> 
> --8<---------------cut here---------------start------------->8---
> $ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
> guile: warning: failed to install locale
> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
> GC Warning: Couldn't read /proc/stat
> Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S" (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
> Aborted
> --8<---------------cut here---------------end--------------->8---
> 
> Unfortunately I fail to get a backtrace from that core dump.
> 
> Efraim, could you get a backtrace on the bare metal?
> 
> Besides, if PPC32 is the only platform that has a problem, I think this
> bug should not be a blocker.
> 
> WDYT?
> 
> Ludo’.

Here's what I get from strace when running on bare metal. I agree, if
it's only affecting ppc32 we shouldn't have it be a blocker.

[-- Attachment #1.2: guile-bootstrap-strace.log --]
[-- Type: text/plain, Size: 10806 bytes --]

28071 execve("/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/bin/guile", ["/gnu/store/imbgn3if51jxi1nhwwdb5"...], 0xaf88c21c /* 30 vars */) = 0
28071 brk(NULL)                         = 0x10849000
28071 brk(0x108498d8)                   = 0x108498d8
28071 uname({sysname="Linux", nodename="g4", ...}) = 0
28071 set_tid_address(0x10849068)       = 28071
28071 set_robust_list(0x10849070, 12)   = 0
28071 rt_sigaction(SIGRTMIN, {sa_handler=0x101154ac, sa_mask=[], sa_flags=SA_SIGINFO}, NULL, 8) = 0
28071 rt_sigaction(SIGRT_1, {sa_handler=0x1011558c, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
28071 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
28071 ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
28071 readlink("/proc/self/exe", "/gnu/store/imbgn3if51jxi1nhwwdb5"..., 4096) = 81
28071 brk(0x1086a8d8)                   = 0x1086a8d8
28071 brk(0x1086b000)                   = 0x1086b000
28071 mprotect(0x1037f000, 4096, PROT_READ) = 0
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.33/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en_US.UTF-8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en_US.utf8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en_US/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en.UTF-8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en.utf8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/run/current-system/locale/2.33/en/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 write(2, "guile: warning: failed to instal"..., 41) = 41
28071 futex(0x10390b7c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
28071 clock_gettime64(CLOCK_PROCESS_CPUTIME_ID, {tv_sec=0, tv_nsec=2676480}) = 0
28071 openat(AT_FDCWD, "/proc/self/maps", O_RDONLY|O_CLOEXEC) = 3
28071 ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
28071 statx(3, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=0, ...}) = 0
28071 read(3, "00100000-00102000 r--p 00000000 "..., 1024) = 921
28071 close(3)                          = 0
28071 sched_getaffinity(28071, 32, [0]) = 4
28071 brk(0x1087b000)                   = 0x1087b000
28071 brk(0x1088b000)                   = 0x1088b000
28071 brk(0x1089b000)                   = 0x1089b000
28071 brk(0x108ab000)                   = 0x108ab000
28071 brk(0x108bb000)                   = 0x108bb000
28071 rt_sigaction(SIGPWR, {sa_handler=0x10105b3c, sa_mask=~[INT QUIT ABRT TERM RTMIN RT_1], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
28071 rt_sigaction(SIGXCPU, {sa_handler=0x10105538, sa_mask=~[INT QUIT ABRT TERM RTMIN RT_1], sa_flags=SA_RESTART}, NULL, 8) = 0
28071 rt_sigprocmask(SIG_UNBLOCK, [XCPU PWR], NULL, 8) = 0
28071 openat(AT_FDCWD, "/proc/stat", O_RDONLY) = 3
28071 read(3, "cpu  24857880 1840144 1968808 43"..., 4096) = 1359
28071 close(3)                          = 0
28071 swapcontext(0xafd65848, 0)        = 0
28071 brk(0x109ab000)                   = 0x109ab000
28071 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xa7bff000
28071 pipe2([3, 4], O_CLOEXEC)          = 0
28071 futex(0x10390ad4, FUTEX_WAKE_PRIVATE, 2147483647) = 0
28071 clock_gettime64(CLOCK_REALTIME, {tv_sec=1649883322, tv_nsec=143410442}) = 0
28071 clock_gettime64(CLOCK_PROCESS_CPUTIME_ID, {tv_sec=0, tv_nsec=8428800}) = 0
28071 openat(AT_FDCWD, "/dev/urandom", O_RDONLY|O_LARGEFILE) = 5
28071 statx(5, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFCHR|0666, stx_size=0, ...}) = 0
28071 ioctl(5, TCGETS, 0xafd65cc8)      = -1 EINVAL (Invalid argument)
28071 read(5, "\353kNl\300\255\360d\1\345%\200s\321\301.\200\2\23*c\275\260\217j\320\325\305`\216Yn"..., 4096) = 4096
28071 close(5)                          = 0
28071 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.33/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No such file or directory)
28071 openat(AT_FDCWD, "/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-powerpc-linux-gnu-2.33/lib/gconv/gconv-modules", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
28071 futex(0x103e3804, FUTEX_WAKE_PRIVATE, 2147483647) = 0
28071 brk(0x109bb000)                   = 0x109bb000
28071 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
28071 fcntl64(0, F_GETFL)               = 0x2 (flags O_RDWR)
28071 _llseek(0, 0, 0xafd65e08, SEEK_CUR) = -1 ESPIPE (Illegal seek)
28071 ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
28071 fcntl64(1, F_GETFL)               = 0x2 (flags O_RDWR)
28071 _llseek(1, 0, 0xafd65e08, SEEK_CUR) = -1 ESPIPE (Illegal seek)
28071 ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) = 0
28071 fcntl64(2, F_GETFL)               = 0x2 (flags O_RDWR)
28071 _llseek(2, 0, 0xafd65e08, SEEK_CUR) = -1 ESPIPE (Illegal seek)
28071 readlink("/proc/self/exe", "/gnu/store/imbgn3if51jxi1nhwwdb5"..., 256) = 81
28071 readlink("/gnu", 0xafd64d90, 1023) = -1 EINVAL (Invalid argument)
28071 readlink("/gnu/store", 0xafd64d90, 1023) = -1 EINVAL (Invalid argument)
28071 readlink("/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7", 0xafd64d90, 1023) = -1 EINVAL (Invalid argument)
28071 readlink("/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/bin", 0xafd64d90, 1023) = -1 EINVAL (Invalid argument)
28071 faccessat2(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/bin/", F_OK, AT_EACCESS) = 0
28071 statx(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/share/guile/3.0/ice-9/eval.scm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=25677, ...}) = 0
28071 statx(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/lib/guile/3.0/ccache/ice-9/eval.go", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=93765, ...}) = 0
28071 openat(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/lib/guile/3.0/ccache/ice-9/eval.go", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
28071 _llseek(5, 0, [93765], SEEK_END)  = 0
28071 mmap2(NULL, 93765, PROT_READ, MAP_PRIVATE, 5, 0) = 0xa7be8000
28071 close(5)                          = 0
28071 mprotect(0xa7bf8000, 4728, PROT_READ|PROT_WRITE) = 0
28071 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
28071 statx(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/share/guile/3.0/init.scm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, 0xafd65ad8) = -1 ENOENT (No such file or directory)
28071 statx(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/share/guile/3.0/ice-9/boot-9.scm", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=170413, ...}) = 0
28071 statx(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/lib/guile/3.0/ccache/ice-9/boot-9.go", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=828061, ...}) = 0
28071 openat(AT_FDCWD, "/gnu/store/imbgn3if51jxi1nhwwdb5q9dpkhz9aff-guile-static-stripped-3.0.7/lib/guile/3.0/ccache/ice-9/boot-9.go", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 5
28071 _llseek(5, 0, [828061], SEEK_END) = 0
28071 mmap2(NULL, 828061, PROT_READ, MAP_PRIVATE, 5, 0) = 0xa7b1d000
28071 close(5)                          = 0
28071 mprotect(0xa7b9d000, 104824, PROT_READ|PROT_WRITE) = 0
28071 write(2, "Pre-boot error; key: ", 21) = 21
28071 write(2, "wrong-type-arg", 14)    = 14
28071 write(2, ", args: ", 8)           = 8
28071 write(2, "(", 1)                  = 1
28071 write(2, "#f", 2)                 = 2
28071 write(2, " ", 1)                  = 1
28071 write(2, "\"", 1)                 = 1
28071 write(2, "W", 1)                  = 1
28071 write(2, "r", 1)                  = 1
28071 write(2, "o", 1)                  = 1
28071 write(2, "n", 1)                  = 1
28071 write(2, "g", 1)                  = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "t", 1)                  = 1
28071 write(2, "y", 1)                  = 1
28071 write(2, "p", 1)                  = 1
28071 write(2, "e", 1)                  = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "t", 1)                  = 1
28071 write(2, "o", 1)                  = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "a", 1)                  = 1
28071 write(2, "p", 1)                  = 1
28071 write(2, "p", 1)                  = 1
28071 write(2, "l", 1)                  = 1
28071 write(2, "y", 1)                  = 1
28071 write(2, ":", 1)                  = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "~", 1)                  = 1
28071 write(2, "S", 1)                  = 1
28071 write(2, "\"", 1)                 = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "(", 1)                  = 1
28071 write(2, "#f", 2)                 = 2
28071 write(2, ")", 1)                  = 1
28071 write(2, " ", 1)                  = 1
28071 write(2, "(", 1)                  = 1
28071 write(2, "#f", 2)                 = 2
28071 write(2, ")", 1)                  = 1
28071 write(2, ")", 1)                  = 1
28071 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
28071 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
28071 getpid()                          = 28071
28071 gettid()                          = 28071
28071 tgkill(28071, 28071, SIGABRT)     = 0
28071 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
28071 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=28071, si_uid=1000} ---
28071 +++ killed by SIGABRT +++

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-04-13 21:01       ` Efraim Flashner
@ 2022-04-15  7:45         ` Ludovic Courtès
  2022-06-23  8:17           ` zimoun
  2022-10-08  2:46         ` Maxim Cournoyer
  1 sibling, 1 reply; 15+ messages in thread
From: Ludovic Courtès @ 2022-04-15  7:45 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34427

Hi,

Efraim Flashner <efraim@flashner.co.il> skribis:

> On Tue, Apr 12, 2022 at 06:01:39PM +0200, Ludovic Courtès wrote:

[...]

>> The problem has to do specifically with powerpc-linux-gnu (this is with
>> transparent emulation via QEMU+binfmt_misc):
>> 
>> --8<---------------cut here---------------start------------->8---
>> $ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
>> guile: warning: failed to install locale
>> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
>> GC Warning: Couldn't read /proc/stat
>> Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S" (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
>> Aborted
>> --8<---------------cut here---------------end--------------->8---
>> 
>> Unfortunately I fail to get a backtrace from that core dump.
>> 
>> Efraim, could you get a backtrace on the bare metal?

Sorry I wasn’t clear; could you get a backtrace from GDB, as in:

  …/bin/guile
  # segfault
  gdb …/bin/guile core

and then at the GDB prompt:

  bt

TIA,
Ludo’.




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-04-15  7:45         ` Ludovic Courtès
@ 2022-06-23  8:17           ` zimoun
  2022-10-18 16:14             ` zimoun
  0 siblings, 1 reply; 15+ messages in thread
From: zimoun @ 2022-06-23  8:17 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34427, Efraim Flashner

Hi Efraim,

On Fri, 15 Apr 2022 at 09:45, Ludovic Courtès <ludo@gnu.org> wrote:

>>> The problem has to do specifically with powerpc-linux-gnu (this is with
>>> transparent emulation via QEMU+binfmt_misc):
>>>
>>> --8<---------------cut here---------------start------------->8---
>>> $ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
>>> guile: warning: failed to install locale
>>> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
>>> GC Warning: Couldn't read /proc/stat
>>> Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S" (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
>>> Aborted
>>> --8<---------------cut here---------------end--------------->8---
>>>
>>> Unfortunately I fail to get a backtrace from that core dump.
>>>
>>> Efraim, could you get a backtrace on the bare metal?
>
> Sorry I wasn’t clear; could you get a backtrace from GDB, as in:
>
>   …/bin/guile
>   # segfault
>   gdb …/bin/guile core
>
> and then at the GDB prompt:
>
>   bt

Efraim, friendly ping. :-)


Cheers,
simon




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-04-13 21:01       ` Efraim Flashner
  2022-04-15  7:45         ` Ludovic Courtès
@ 2022-10-08  2:46         ` Maxim Cournoyer
  1 sibling, 0 replies; 15+ messages in thread
From: Maxim Cournoyer @ 2022-10-08  2:46 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 34427, Ludovic Courtès, GNU Debbugs

tags 34427 -important
thanks

Hi,

Efraim Flashner <efraim@flashner.co.il> writes:

[...]

>> Besides, if PPC32 is the only platform that has a problem, I think this
>> bug should not be a blocker.
>> 
>> WDYT?
>> 
>> Ludo’.
>
> Here's what I get from strace when running on bare metal. I agree, if
> it's only affecting ppc32 we shouldn't have it be a blocker.

I'd removing the important flag since this appears to affect only ppc32
architecture and has been dormant for years.

Thanks,

Maxim




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-06-23  8:17           ` zimoun
@ 2022-10-18 16:14             ` zimoun
  2022-10-18 16:22               ` Efraim Flashner
  0 siblings, 1 reply; 15+ messages in thread
From: zimoun @ 2022-10-18 16:14 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 34427, Efraim Flashner

Hi,

It is about this old report #34427x [1].

1: <http://issues.guix.gnu.org/issue/34427>

On Thu, 23 Jun 2022 at 10:17, zimoun <zimon.toutoune@gmail.com> wrote:
> On Fri, 15 Apr 2022 at 09:45, Ludovic Courtès <ludo@gnu.org> wrote:
>
>>>> The problem has to do specifically with powerpc-linux-gnu (this is with
>>>> transparent emulation via QEMU+binfmt_misc):
>>>>
>>>> --8<---------------cut here---------------start------------->8---
>>>> $ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
>>>> guile: warning: failed to install locale
>>>> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
>>>> GC Warning: Couldn't read /proc/stat
>>>> Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S"
>>>> (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
>>>> Aborted
>>>> --8<---------------cut here---------------end--------------->8---
>>>>
>>>> Unfortunately I fail to get a backtrace from that core dump.
>>>>
>>>> Efraim, could you get a backtrace on the bare metal?
>>
>> Sorry I wasn’t clear; could you get a backtrace from GDB, as in:
>>
>>   …/bin/guile
>>   # segfault
>>   gdb …/bin/guile core
>>
>> and then at the GDB prompt:
>>
>>   bt

What is the status?  Since a release is maybe coming, it could be the
opportunity to tackle it… or not. :-)

Cheers,
simon




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-10-18 16:14             ` zimoun
@ 2022-10-18 16:22               ` Efraim Flashner
  2022-10-19 10:40                 ` zimoun
  0 siblings, 1 reply; 15+ messages in thread
From: Efraim Flashner @ 2022-10-18 16:22 UTC (permalink / raw)
  To: zimoun, Ludovic Courtès; +Cc: 34427

We've moved the bootstrap guile to 3.0 for riscv64 and haven't seen any problems. I think we can just close this one and we'll revisit it if someone else decides to use guile-2.2 for a bootstrap guile and runs into this issue.


On October 18, 2022 4:14:32 PM UTC, zimoun <zimon.toutoune@gmail.com> wrote:
>Hi,
>
>It is about this old report #34427x [1].
>
>1: <http://issues.guix.gnu.org/issue/34427>
>
>On Thu, 23 Jun 2022 at 10:17, zimoun <zimon.toutoune@gmail.com> wrote:
>> On Fri, 15 Apr 2022 at 09:45, Ludovic Courtès <ludo@gnu.org> wrote:
>>
>>>>> The problem has to do specifically with powerpc-linux-gnu (this is with
>>>>> transparent emulation via QEMU+binfmt_misc):
>>>>>
>>>>> --8<---------------cut here---------------start------------->8---
>>>>> $ unshare -mrf chroot $(guix build guile-static-stripped --target=powerpc-linux-gnu) /bin/guile
>>>>> guile: warning: failed to install locale
>>>>> GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thread
>>>>> GC Warning: Couldn't read /proc/stat
>>>>> Pre-boot error; key: wrong-type-arg, args: (#f "Wrong type to apply: ~S"
>>>>> (#f) (#f))qemu: uncaught target signal 6 (Aborted) - core dumped
>>>>> Aborted
>>>>> --8<---------------cut here---------------end--------------->8---
>>>>>
>>>>> Unfortunately I fail to get a backtrace from that core dump.
>>>>>
>>>>> Efraim, could you get a backtrace on the bare metal?
>>>
>>> Sorry I wasn’t clear; could you get a backtrace from GDB, as in:
>>>
>>>   …/bin/guile
>>>   # segfault
>>>   gdb …/bin/guile core
>>>
>>> and then at the GDB prompt:
>>>
>>>   bt
>
>What is the status?  Since a release is maybe coming, it could be the
>opportunity to tackle it… or not. :-)
>
>Cheers,
>simon

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.




^ permalink raw reply	[flat|nested] 15+ messages in thread

* bug#34427: guile-bootstrap@2.2 segfault?
  2022-10-18 16:22               ` Efraim Flashner
@ 2022-10-19 10:40                 ` zimoun
  0 siblings, 0 replies; 15+ messages in thread
From: zimoun @ 2022-10-19 10:40 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: Ludovic Courtès, 34427-done, Maxim Cournoyer

Hi,


On Tue, 18 Oct 2022 at 16:22, Efraim Flashner <efraim@flashner.co.il> wrote:

> We've moved the bootstrap guile to 3.0 for riscv64 and haven't seen
> any problems. I think we can just close this one and we'll revisit it
> if someone else decides to use guile-2.2 for a bootstrap guile and
> runs into this issue.

Therefore, I am closing.  Feel free to reopen if I missed something.


Cheers,
simon




^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2022-10-19 10:42 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-11  9:11 bug#34427: guile-bootstrap@2.2 segfault? Efraim Flashner
2019-02-12  9:17 ` bug#34427: [PATCH] build guile-static with guile-2.0 Efraim Flashner
2019-02-16 16:06   ` bug#34427: [bug#34453] " Ludovic Courtès
2022-04-12 10:10     ` bug#34427: bug#34453: " zimoun
2019-02-12 14:27 ` bug#34427: guile-bootstrap@2.2 segfault? Ludovic Courtès
2019-02-12 15:44   ` Efraim Flashner
2022-04-12 10:12     ` zimoun
2022-04-12 16:01     ` Ludovic Courtès
2022-04-13 21:01       ` Efraim Flashner
2022-04-15  7:45         ` Ludovic Courtès
2022-06-23  8:17           ` zimoun
2022-10-18 16:14             ` zimoun
2022-10-18 16:22               ` Efraim Flashner
2022-10-19 10:40                 ` zimoun
2022-10-08  2:46         ` Maxim Cournoyer

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).