[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Crash building unicode2, NSTATICS too low, pure space overflow.

From: Kenichi Handa
Subject: Re: Crash building unicode2, NSTATICS too low, pure space overflow.
Date: Thu, 03 Aug 2006 16:36:10 +0900
User-agent: SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/22.0.50 (i686-pc-linux-gnu) MULE/5.0 (SAKAKI)

In article <address@hidden>, Jan Djärv <address@hidden> writes:

> Am I the only one that sees this:
> `/bin/pwd`/temacs --batch --load loadup bootstrap
> make[2]: *** [bootstrap-emacs] Avbruten (SIGABRT)
> make[2]: Leaving directory `/home/jhd/src/emacs-unicode2/src'
> make[1]: *** [bootstrap-build] Fel 2
> make[1]: Leaving directory `/home/jhd/src/emacs-unicode2'
> make: *** [bootstrap] Fel 2

> It aborts here (alloc.c):

> 4844    staticpro (varaddress)
> 4845         Lisp_Object *varaddress;
> 4846    {
> 4847      staticvec[staticidx++] = varaddress;
> 4848      if (staticidx >= NSTATICS)
> 4849        abort ();
> 4850    }

I recently got the same bug report from Duncan
<address@hidden>.  As I usually build Emacs without
gtk, I didn't notice it.  Without gtk and with
enable-font-backend, staticidx reaches 1279!  In HEAD, it
reaches 1193.

> If I increase NSTATICS to 1281 it does not abort.  This is with GTK.  When 
> compiling with GTK an extra gtk-version-string is staticpro:ed, so compiling 
> without GTK does not abort.  I also get (GTK or non-GTK version):

> emacs:0:Pure Lisp storage overflow (approx. 1211344 bytes needed)

I don't see that in non-GKT version, though.  The last step
of dumping shows this message.

Dumping under names emacs and emacs-
1209872 pure bytes used

> Is it OK to just increase NSTATICS a bit?  Shouldn't staticvec be dynamically 
> allocated BTW?

It was increased from 1026 to 1280 about 4 years ago.
Perhaps there was a good reason for not chaning it to be
allocated dynamically ... I'm not sure.

1026 is 0x402, 1280 is 0x500.  What is the good value for
NSTATICS this time; 0x600 or 0x602?

Kenichi Handa

reply via email to

[Prev in Thread] Current Thread [Next in Thread]