GNU bug report logs - #69106
SBCL enomem on 686

Previous Next

Package: guix;

Reported by: Christopher Howard <christopher <at> librehacker.com>

Date: Tue, 13 Feb 2024 16:24:02 UTC

Severity: normal

To reply to this bug, email your comments to 69106 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#69106; Package guix. (Tue, 13 Feb 2024 16:24:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Christopher Howard <christopher <at> librehacker.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 13 Feb 2024 16:24:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Christopher Howard <christopher <at> librehacker.com>
To: Bug Guix <bug-guix <at> gnu.org>
Subject: SBCL enomem on 686
Date: Tue, 13 Feb 2024 07:22:31 -0900
Hi, I was trying to run SBCL on an older 32-bit laptop, using guix on foreign distro. When I launch SBCL, the REPL dies immediately with this error:

```
os_alloc_gc_space(1,0x9000000,3221225472) failed with ENOMEM
fatal error encountered in SBCL pid 4657 tid 4657:
Can't allocate 0xc0000000 bytes for space 1
```

However, the program does work if I pass in a --dynamic-space-size argument when I launch sbcl. E.g.

```
sbcl --dynamic-space-size 2000
```

So, it seems like some allocation value or define is not being set correctly in the build for 686. SBCL manual only says:

```
‘--dynamic-space-size MEGABYTES’
     Size of the dynamic space reserved on startup in megabytes.
     Default value is platform dependent.
```

My system information:

```
christopher <at> q4os-desktop 
------------------------ 
OS: Debian GNU/Linux 10 (buster) i686 
Host: CF-30CTQAZBM 001 
Kernel: 4.19.0-26-686-pae 
Uptime: 21 hours, 54 mins 
Packages: 2357 (dpkg), 4 (guix-user) 
Shell: bash 5.1.16 
Resolution: 1024x768 
Terminal: /dev/pts/1 
CPU: Genuine Intel L2400 (2) @ 1.667GHz 
GPU: Intel Mobile 945GM/GMS, 943/940GML Express 
Memory: 219MiB / 3020MiB 
```

```
$ guix describe
Generation 2	Feb 12 2024 12:22:05	(current)
  guix bb92a4d
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: bb92a4d7bc71197a51eea9075387c5313f299085
```

-- 
📛 Christopher Howard
🚀 gemini://gem.librehacker.com
🌐 http://gem.librehacker.com

בראשית ברא אלהים את השמים ואת הארץ




Information forwarded to bug-guix <at> gnu.org:
bug#69106; Package guix. (Tue, 13 Feb 2024 18:30:02 GMT) Full text and rfc822 format available.

Message #8 received at 69106 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Howard <christopher <at> librehacker.com>
To: 69106 <at> debbugs.gnu.org
Subject: bug#69106: SBCL enomem on 686
Date: Tue, 13 Feb 2024 09:28:56 -0900
Just noticed, poking around in the debian sid package, that Debian had to explicitly set

```
export SBCL_ARCH=x86
```

For their i386 build. Wonder if that might be relevant here.

-- 
Christopher Howard




Information forwarded to bug-guix <at> gnu.org:
bug#69106; Package guix. (Tue, 13 Feb 2024 20:49:01 GMT) Full text and rfc822 format available.

Message #11 received at 69106 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Howard <christopher <at> librehacker.com>
To: 69106 <at> debbugs.gnu.org
Subject: Re: bug#69106: SBCL enomem on 686
Date: Tue, 13 Feb 2024 11:48:24 -0900
Hi, the problem is with these lines:

```
                     ,@(if (target-ppc32?)
                         ;; 3072 is too much for this architecture.
                         `("--dynamic-space-size=2048")
                         `("--dynamic-space-size=3072"))
```

Package definition simply assumes that all non-ppc32 architectures can handle the larger dynamic space, but apparently not x86. Through experiment, I see the largest dynamic space that works on my old laptop is 2810, but 2048 seems like a more sensible number.

-- 
Christopher Howard




This bug report was last modified 80 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.