NetBSD-Users archive

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

Application runs on 4.0, crashes with 5.0 ld.elf_so



I've been using finance/kmymoney2 on a NetBSD/i386 4.0-branch server box successfully for quite some time. A while back I tried running it on my NetBSD/amd64 5.0-branch workstation, but it would always core during startup. I was concerned, but I wasn't clear whether it was an OS or an architecture problem, and I never did track down the specific cause. Now I have finally gotten around to getting Xen going on my workstation so I am more free to play with it, and here is what I'm getting.

I start out with a minimally modified image of the server file systems (4.0 userland) in the DOMU with a 5.0/i386/XEN3PAE_DOMU kernel.

   * Full upgrade by ISO to 5.0 -> kmymoney2 cores
   - Restore image to start state
   * Plain boot with 4.0 userland -> fine
   * Replace /{usr/,}lib/lib*.so (from ldd list) with 5.0 -> fine
   * Replace /libexec/ld.elf_so with 5.0 -> kmymoney2 cores
   * Restore original 4.0 /libexec/ld.elf_so -> fine


So something in the new ld.elf_so is causing problems for this program. Here is the stack trace from the last core:

Core was generated by `kmymoney2'.
Program terminated with signal 11, Segmentation fault.
#0  0xba64a021 in QString::QString () from /usr/pkg/qt3/lib/libqt-mt.so.3
(gdb) where
#0  0xba64a021 in QString::QString () from /usr/pkg/qt3/lib/libqt-mt.so.3
#1  0x080e9ec2 in QValueListPrivate<QString>::insert ()
#2  0xba65db40 in QStringList::split () from /usr/pkg/qt3/lib/libqt-mt.so.3
#3  0xbb7cd1e4 in __static_initialization_and_destruction_0 () from 
/usr/pkg/lib/libkmm_mymoney.so.0
#4  0xbb7d8b62 in __do_global_ctors_aux () from /usr/pkg/lib/libkmm_mymoney.so.0
#5  0xbb79543d in _init () from /usr/pkg/lib/libkmm_mymoney.so.0
#6  0xbb7f5579 in _rtld_call_init_functions () from /usr/libexec/ld.elf_so
#7  0xbad73e60 in ?? ()
#8  0xbb7febe0 in ?? () from /usr/libexec/ld.elf_so
#9  0xbb7ff444 in _rtld_debug () from /usr/libexec/ld.elf_so
#10 0xbb7ff328 in _rtld_objtail () from /usr/libexec/ld.elf_so
#11 0xbb7f59e8 in _rtld () from /usr/libexec/ld.elf_so
#12 0x00000000 in ?? ()
(gdb)

   The stack trace I get from my 5.0/amd64 box is quite similar:

Core was generated by `kmymoney2'.
Program terminated with signal 11, Segmentation fault.
#0  QString (this=0x7f7ff6001bd0, s=@0x9c28d0) at tools/qshared.h:49
49      tools/qshared.h: No such file or directory.
        in tools/qshared.h
(gdb) where
#0  QString (this=0x7f7ff6001bd0, s=@0x9c28d0) at tools/qshared.h:49
#1  0x00000000004bdaf2 in QValueListPrivate<QString>::insert ()
#2 0x00007f7ff9bcb03e in QStringList::split (sep=@0x7f7fffffd570, str=@0x7f7fffffd560, allowEmptyEntries=true) at tools/qvaluelist.h:526
#3  0x00007f7ffdc4a6ea in __static_initialization_and_destruction_0 ()
   from /usr/pkg/lib/libkmm_mymoney.so.0
#4  0x00007f7ffdc55feb in __do_global_ctors_aux ()
   from /usr/pkg/lib/libkmm_mymoney.so.0
#5  0x00007f7ffdc1395e in _init () from /usr/pkg/lib/libkmm_mymoney.so.0
#6  0x00007f7ffdf0f908 in _rtld_objlist () from /usr/libexec/ld.elf_so
#7  0x00007f7ffde04a52 in _rtld_call_init_functions ()
   from /usr/libexec/ld.elf_so
#8  0x00007f7ffde04eaf in _rtld () from /usr/libexec/ld.elf_so
#9  0x00007f7ffde039ef in .rtld_start () from /usr/libexec/ld.elf_so
#10 0x00007f7fffffffe0 in ?? ()
#11 0x0000000000000000 in ?? ()
Current language:  auto; currently c++
(gdb)

Any ideas where to look next? I'd really like to upgrade the server to 5.0, but I can't until I'm sure kmymoney2 is going to work.

   Thanks.

                                        Gary Duzan



Home | Main Index | Thread Index | Old Index