Subject: bug#47428: Problems building the up-to-date "devel" manual for the website

From: Ludovic Courtès <[email-masked]>
Date: Thu, 08 Jul 2021 09:31:15 +0200

Hi!

[email-masked] (GNU bug Tracking System) skribis:

> Leo Famulari <[email-masked]> writes:
>
>> On Fri, Apr 02, 2021 at 11:33:57AM +0200, Mathieu Othacehe wrote:
>>> 
>>> > ). Please consider running po4a-updatepo to refresh it.
>>> > Your input po file ./guix-manual.de.po seems outdated (The amount of entries differ between files: 10012 is not 325
>>> > ). Please consider running po4a-updatepo to refresh it.
>>> > mmap(PROT_NONE) failed
>>> > builder for `/gnu/store/86gnwxxw7lfkifaal6fhflmkn3fczyhf-guix-translated-texinfo.drv' failed due to signal 11 (Segmentation fault)
>>> 
>>> I worked around it by building this derivation on one core. Looks like
>>> the cookbook, website, manual and devel manual are now building fine.
>>> 
>>> Closing this one,
>>
>> Awesome, thanks for your work!
>
> I've pushed this with commit af2d6ec092 to master:
>
> modified   guix/self.scm
> @@ -410,7 +410,10 @@ a list of extra files, such as '(\"contributing\")."
>              ;; Limit thread creation by 'n-par-for-each'.  Going beyond can
>              ;; lead libgc 8.0.4 to abort with:
>              ;; mmap(PROT_NONE) failed
> -            (min (parallel-job-count) 4))
> +            ;;
> +            ;; FIXME: The above error would still happen when using only 4
> +            ;; build jobs, so disable parallelism entirely for the time being.
> +            (min (parallel-job-count) 1))
>  
>            (mkdir #$output)
>            (copy-recursively #$documentation "."
>
> To guard about the occasional failures we were still hitting building
> the latest manuals for the website.

FWIW, the map(PROT_NONE) issue was (I think) fixed by
0aef94e7bcbd272720f14c5343f74da5201ef90a (in May), itself a followup to
47d48f0c43c13c0b43bc3e37b6239efd4bf2f74c, so I think the comment is
stale.

Now, berlin’s mcron jobs are supposedly running a newer Guix:

--8<---------------cut here---------------start------------->8---
ludo@berlin ~$ sudo herd schedule mcron |grep update-guix-manual-devel |sort -u
/gnu/store/xsmjh2k3pjx6cv0rvkkqw8jsj8a574n4-update-guix-manual-devel
ludo@berlin ~$ guix gc -R /gnu/store/xsmjh2k3pjx6cv0rvkkqw8jsj8a574n4-update-guix-manual-devel |grep guix
/gnu/store/p9di786py35m4kxszf466wcla6jvq96h-guix-1.3.0-3.50dfbbf
/gnu/store/xsmjh2k3pjx6cv0rvkkqw8jsj8a574n4-update-guix-manual-devel
--8<---------------cut here---------------end--------------->8---

Am I right that the error that we see now is not “mmap(PROT_NONE)” but
something else?

Thanks,
Ludo’.