#13 illegal instruction on solaris (amd64)

open
nobody
None
5
2014-08-23
2008-05-02
Anonymous
No

dumatest fails with following message.

duma_2_5_14]$ ./dumatest
DUMA 2.5.14 (static library)
Copyright (C) 2006 Michael Eddington <meddington@gmail.com>
Copyright (C) 2002-2008 Hayati Ayguen <h_ayguen@web.de>, Procitec GmbH
Copyright (C) 1987-1999 Bruce Perens <bruce@perens.com>

DUMA Aborting: mprotect() failed: System Error Number 'errno' from Standard C Library is 12
.
Check README section 'MEMORY USAGE AND EXECUTION SPEED'
if your (Linux) system may limit the number of different page mappings per process
Illegal Instruction (core dumped)

options for build:
DUMA_OPTIONS += -DDUMA_NO_STRERROR
CURPATH=./
DUMA_DYN_DEPS=
DUMASO=libduma.so.0.0.0
DUMASO_LINK1=libduma.so.0
DUMASO_LINK2=libduma.so
CFLAGS= -g -xarch=amd64
CPPFLAGS= -g -xarch=amd64
LDFLAGS+=-xarch=amd64
LDOPTIONS+=-d y -B dynamic
LIBS=-mt -Wl,-R/opt/sfw/lib -lpthread
EXEPOSTFIX=

which $CC
/opt/sunstudio12/SUNWspro/bin/cc

current thread: t@1
[1] _kill(0x1df, 0x4, 0xffffffffab8d6c00, 0xfefefefefefefeff, 0x0, 0x0), at 0xfffffd7fff3229ca
=>[2] DUMA_Abort(pattern = 0x408908 "mprotect() failed: %s.\nCheck README section 'MEMORY USAGE AND EXECUTION SPEED'\n if your (Linux) system may limit the number of different page mappings per process", ... = 0x403155, ...), line 288 in "print.c"
[3] mprotectFailed(), line 99 in "paging.h"
[4] Page_AllowAccess(address = 0xff0a4000, size = 4096U), line 266 in "paging.h"
[5] _duma_allocate(alignment = 1U, userSize = 123U, protectBelow = 0, fillByte = 255, protectAllocList = 1, allocator = EFA_MALLOC, fail = DUMA_FAIL_ENV, filename = 0x4084a8 "UNKNOWN (use #include "duma.h")", lineno = 0), line 1599 in "duma.c"
[6] _duma_malloc(size = 123U, filename = 0x4084a8 "UNKNOWN (use #include "duma.h")", lineno = 0), line 1982 in "duma.c"
[7] malloc(size = 123U), line 2375 in "duma.c"
[8] duma_init(), line 996 in "duma.c"
[9] _duma_init(), line 1144 in "duma.c"
[10] _init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x40823d

Discussion

  • h_ayguen
    h_ayguen
    2008-05-03

    Logged In: YES
    user_id=1354765
    Originator: NO

    Hello,

    i've just downloaded the VMware virtual machine containing Solaris Express Developer Edition 1/08 to test for this bug. but it will take some time.

    but i will not be able to test for 64 bit architecture inside the virtual machine! does this error occur also with 32 bits without the xarch options?

    regards

    Hayati Ayguen

     
  • Andrej Hosna
    Andrej Hosna
    2008-05-05

    Logged In: YES
    user_id=63103
    Originator: NO

    Hi, I've compiled on same box(solaris) without (-m64 / -xarch=amd64) and ./dumatest works.
    I wanted to test at home on linux x64, but i don't have ++ compiler there. I 'll try to test it on 64 bit linux this week.

     
  • Andrej Hosna
    Andrej Hosna
    2008-05-13

    Logged In: YES
    user_id=63103
    Originator: NO

    dumatest works without problem on ubuntu hardy with -m64 and gcc compiler
    That's what i'm going to test... what happens on solaris with gcc instead of cc.

     
  • h_ayguen
    h_ayguen
    2008-05-14

    Logged In: YES
    user_id=1354765
    Originator: NO

    status:
    with solaris express inside vmware hosted from windows xp all looked fine.
    in a native 64 bit linux (ubuntu 8.04) i could test (for a short period of time) and everything looked fine, too.
    unfortunately i was not able to get a stable 64 bit linux on my amd64 hardware. centos, ubuntu and opensuse freeze after some time. so i could not install a virtual 64 bit solaris for testing. so this bug will keep open for some time!
    ps: writing this from notebook - opensuse did a half job installing grub (system freeze whilst installation) so even my stable windows with all virtual machines does no longer boot :-(

     
  • Andrej Hosna
    Andrej Hosna
    2008-05-15

    Logged In: YES
    user_id=63103
    Originator: NO

    I'll try to download and install OpenSolaris, and reproduce bug at home. I just realized that it's not AMD, but IA64 from Intel(core2duo), but I hope I'd be able to reproduce a bug.