[Ace-users] Logging_Strategy_Test coredump when linked with 32-bit ACE 5.5.10 onLinux

zgold ram.misc at gmail.com
Fri Aug 31 13:03:35 CDT 2007


ACE VERSION: 5.5.10

HOST MACHINE and OPERATING SYSTEM:
    Linux 2.6.9-22.ELsmp #1 SMP x86_64 x86_64 x86_64 GNU/Linux

TARGET MACHINE and OPERATING SYSTEM, if different from HOST: same as
above

COMPILER NAME AND VERSION (AND PATCHLEVEL):
    Reading specs from /usr/lib/gcc/x86_64-redhat-linux/3.4.4/specs
    Configured with: ../configure --prefix=/usr --mandir=/usr/share/
man
    --infodir=/usr/share/info --enable-shared --enable-threads=posix
    --disable-checking --with-system-zlib --enable-__cxa_atexit
    --disable-libunwind-exceptions --enable-java-awt=gtk
    --host=x86_64-redhat-linux
    Thread model: posix
    gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)

THE $ACE_ROOT/ace/config.h:
    #define ACE_DEFAULT_BASE_ADDR ((char *) 0x00000000)
    #include "ace/config-linux.h"

THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE:
    $ACE_ROOT/include/makeinclude/platform_linux.GNU

CONTENTS OF $ACE_ROOT/bin/MakeProjectCreator/config/default.features
    file does not exist

AREA/CLASS/EXAMPLE AFFECTED:
    auto_run_tests: tests/Logging_Strategy_Test
    ERROR: <Logging_Strategy_Test> exited with coredump from signal
11 :
SEGV
    Error: Logging_Strategy_Test FAILED with exit status 255

DOES THE PROBLEM AFFECT:
    COMPILATION? no
    LINKING? no
    EXECUTION? yes
    auto_run_tests: tests/Logging_Strategy_Test
    ERROR: <Logging_Strategy_Test> exited with coredump from signal
11 :
SEGV
    Error: Logging_Strategy_Test FAILED with exit status 255

SYNOPSIS:
    ACE test-case Logging_Strategy_Test coredumps when linked with
    32-bit ACE 5.5.10 library on Linux

DESCRIPTION:
    Downloaded ACE 5.5.10 version for Linux and built the 32-bit
library
    successfully using CCFLAGS=-m32 option.

    While validating the library using the test-case
"Logging_Strategy_Test",
    it failed with coredump.

    However, the same test case "Logging_Strategy_Test" passed for
default
    64-bit ACE library in the same environment.

    Our application is 32-bit, hence can not use 64-bit ACE library.

    Tried ACE 5.4.3 for 32-bit library but the above test case failed
with coredump.

    The test-case build command line is as below:

        GNUmakefile:
/tmp/ACE-5.5.10/ACE_wrappers/tests/GNUmakefile.Logging_Strategy_Test
MAKEFLAGS=w

        g++ -DLINUX_X86_64_GCC -W -Wall -Wpointer-arith -O3 -g -
pipe
        -pipe -m32 -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE
        -I/tmp/ACE-5.5.10/ACE_wrappers -DACE_HAS_EXCEPTIONS
-D__ACE_INLINE__
        -I..  -c -o .obj/Logging_Strategy_Test.o
Logging_Strategy_Test.cpp

        g++ -DLINUX_X86_64_GCC -W -Wall -Wpointer-arith -O3 -g -
pipe
        -pipe -m32 -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE
        -I/tmp/ACE-5.5.10/ACE_wrappers -DACE_HAS_EXCEPTIONS
-D__ACE_INLINE__ -I..
        -Wl,-E -L/tmp/ACE-5.5.10/ACE_wrappers/ace -L./
-L/tmp/ACE-5.5.10/ACE_wrappers/lib
        -L. -L../lib -o Logging_Strategy_Test .obj/Main.o
.obj/Logging_Strategy_Test.o
        lTest_Output -lACE -ldl -lpthread -lrt

    > file /tmp/ACE-5.5.10/ACE_wrappers/ace/libACE.so.5.5.10
        ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV),
not
stripped

REPEAT BY:

    cat Logging_Strategy_Test.log
    Aug 30 16:26:03.832 2007 at LM_DEBUG@(14231|4158924480) Starting
Logging_Strategy_Test test at Thu Aug 30 2007 16:26:03.832381
    Aug 30 16:26:03.832 2007 at LM_DEBUG@Specifications:
    Aug 30 16:26:03.832 2007 at LM_DEBUG@File name:
log/Logging_Strategy_Test.log
    Aug 30 16:26:03.832 2007 at LM_DEBUG@Ordering files activated
    Aug 30 16:26:03.832 2007 at LM_DEBUG@-> removing existent files...
    Aug 30 16:26:03.832 2007 at LM_DEBUG@-< removing existing files...
    -> start generating messages...
     (4158924480) (Thu Aug 30 2007 16:26:04.838308) message
     (4158924480) 1 message
    ... [above line repeated with value 1 thru 999]
      (4158924480) 999 message
    -< generating messages finished
    -> start counting...
          The number of files generated is: 1
    -< counting finished...
    -> start testing order...
          File name     : log/Logging_Strategy_Test.log
          File size (B): 26543
          Time modified : Thu Aug 30 16:26:23 2007
          Ordering...OK! -  Only 1 file (s) was (were) generated
    -< testing order finished...
    (14231|4158924480) Ending Logging_Strategy_Test test at Thu Aug 30
2007 16:26:23.885518

SAMPLE FIX/WORKAROUND:
    Tried using the following in config.h, but test case coredumped in
all cases
       default definition for ACE_DEFAULT_BASE_ADDR
       #define ACE_DEFAULT_BASE_ADDR ((char *) 0x00000000) and
       #define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)



More information about the Ace-users mailing list