List Info

Thread: signal 11 in make




signal 11 in make
country flaguser name
United States
2007-10-04 16:10:28
I haven't tested yet with any memory checkers.

Program terminated with signal 11, Segmentation fault.
#0  0xbbb92bfa in memmove () from /usr/lib/libc.so.12
(gdb) bt
#0  0xbbb92bfa in memmove () from /usr/lib/libc.so.12
#1  0x08056c67 in ParseGetLine (flags=0, length=0xbfbfcc1c)
    at /opt/src/usr.bin/make/parse.c:2130
#2  0x080576b1 in Parse_File (name=0x80624c3
"Makefile", fd=3)
    at /opt/src/usr.bin/make/parse.c:2307
#3  0x08053b88 in ReadMakefile (p=0x80624c3, q=0x0)
    at /opt/src/usr.bin/make/main.c:1199
#4  0x0805460a in main (argc=2, argv=0xbfbfdaf4)
    at /opt/src/usr.bin/make/main.c:979


The ktrace output from using this make ends with:

...many lines...
       
nclude/libgnomecanvas-2.0/libgnomecanvas/gnome-canvas-shape.
h \
          
/home/packages/tmp-pkgsrc/wip/passepartout/work.glacier/.bui
ldlink/i
       
nclude/libgnomecanvas-2.0/libgnomecanvas/gnome-canvas-path-d
ef.h 
\
          
/home/packages/tmp-pkgsrc/wip/passepartout/work.glacier/.bui
ldlink/i
        nclude/libart-2.0/libart_lgpl/art_bpath.h \
          
/home/packages/tmp-pkgsrc/wip/passepartout/work.glacier/.bui
ldlink/i
        nclude/libgnomecanvas-2.0/libgnomecanv"
  2683      1 make     GIO   fd 4 read 64 bytes
       "as/gnome-canvas-pixbuf.h \
          /home/packages/tmp-pkgsrc/wip/passe"
  2683      1 make     RET   read 32768/0x8000
  2683      1 make     PSIG  SIGSEGV SIG_DFL
  2683      1 make     NAMI  "make.core"


The makefile has:

include ./$(DEPDIR)/libxml2ps_a-blockcontainer.Po
include ./$(DEPDIR)/libxml2ps_a-boundaries.Po
include ./$(DEPDIR)/libxml2ps_a-canvas.Po
include ./$(DEPDIR)/libxml2ps_a-line.Po
include ./$(DEPDIR)/libxml2ps_a-pagedstream.Po
include ./$(DEPDIR)/libxml2ps_a-paragraph.Po
include ./$(DEPDIR)/libxml2ps_a-pdfcanvas.Po
include ./$(DEPDIR)/libxml2ps_a-pscanvas.Po
include ./$(DEPDIR)/libxml2ps_a-psstream.Po
include ./$(DEPDIR)/libxml2ps_a-typesetter.Po
include ./$(DEPDIR)/libxml2ps_a-xcanvas.Po
include ./$(DEPDIR)/libxml2ps_a-xly.Po
include ./$(DEPDIR)/xml2ps-main.Po

This is thousands of lines.

It appears from the ktrace that it dies in
libxml2ps_a-typesetter.Po or 
libxml2ps_a-xcanvas.Po.

This worked fine with gmake. Not with bmake.

My BSD make is from NetBSD 4.99.27. Now I just updated to
usr.bin/make 
from HEAD and it still core dumps.


  Jeremy C. Reed

Re: signal 11 in make
country flaguser name
United Kingdom
2007-10-04 16:14:59
On Thu, Oct 04, 2007 at 04:10:28PM -0500, Jeremy C. Reed
wrote:
> 
> Program terminated with signal 11, Segmentation fault.
> #0  0xbbb92bfa in memmove () from /usr/lib/libc.so.12
> (gdb) bt
> #0  0xbbb92bfa in memmove () from /usr/lib/libc.so.12
> #1  0x08056c67 in ParseGetLine (flags=0,
length=0xbfbfcc1c)
>     at /opt/src/usr.bin/make/parse.c:2130
> #2  0x080576b1 in Parse_File (name=0x80624c3
"Makefile", fd=3)
>     at /opt/src/usr.bin/make/parse.c:2307
> #3  0x08053b88 in ReadMakefile (p=0x80624c3, q=0x0)
>     at /opt/src/usr.bin/make/main.c:1199
> #4  0x0805460a in main (argc=2, argv=0xbfbfdaf4)
>     at /opt/src/usr.bin/make/main.c:979

It might just be out or memory, try changing ulimit -d

	David

-- 
David Laight: davidl8s.co.uk

Re: signal 11 in make
country flaguser name
United States
2007-10-04 16:40:47
On Thu, 4 Oct 2007, David Laight wrote:

> On Thu, Oct 04, 2007 at 04:10:28PM -0500, Jeremy C.
Reed wrote:
> > 
> > Program terminated with signal 11, Segmentation
fault.
> > #0  0xbbb92bfa in memmove () from
/usr/lib/libc.so.12
> > (gdb) bt
> > #0  0xbbb92bfa in memmove () from
/usr/lib/libc.so.12
> > #1  0x08056c67 in ParseGetLine (flags=0,
length=0xbfbfcc1c)
> >     at /opt/src/usr.bin/make/parse.c:2130
> > #2  0x080576b1 in Parse_File (name=0x80624c3
"Makefile", fd=3)
> >     at /opt/src/usr.bin/make/parse.c:2307
> > #3  0x08053b88 in ReadMakefile (p=0x80624c3,
q=0x0)
> >     at /opt/src/usr.bin/make/main.c:1199
> > #4  0x0805460a in main (argc=2, argv=0xbfbfdaf4)
> >     at /opt/src/usr.bin/make/main.c:979
> 
> It might just be out or memory, try changing ulimit -d


Maybe. The highest I can go is:

$ ulimit -d -S                     
3145728

My hard limit is:

$ ulimit -d -H    
3145728

By the way, I was only able to get it that high with:

sysctl -w proc.$$.rlimit.datasize.soft=3221225472

But when using ksh, it fails with when setting limit that
high (taking in 
consideration of kilobytes versus bytes). For example:


(I tried many others and found 2097151 was my max when using
ulimit, but 
could use sysctl to set higher.)
$ ulimit -d -S 2097152             
ksh: ulimit: bad limit: Invalid argument
$ ulimit -d -S 2097151 
$ ulimit -d -S         
2097151
$ ulimit -d -H
3145728

Why is ksh say bad limit?

Also what can we do to get make(1) to complain instead of
core dump?

And why is gmake work? Why is it more efficient in this
instance?

By the way, the memory on this system is little:

total memory = 97852 KB
rbus: rbus_min_start set to 0x20000000
avail memory = 88004 KB

(Should be 128MB. I don't know why it is 97852 KB -- maybe
video.)

Memory: 46M Act, 4028K Inact, 1008K Wired, 19M Exec, 7076K
File, 19M Free
Swap: 411M Total, 191M Used, 220M Free


  Jeremy C. Reed

[1-3]

about | contact  Other archives ( Real Estate discussion Medical topics )