[vtk-developers] Crashes after recent checkins
Berk Geveci
berk.geveci at kitware.com
Mon Aug 26 10:16:22 EDT 2013
Thanks for tracking it btw :-)
On Mon, Aug 26, 2013 at 10:15 AM, Berk Geveci <berk.geveci at kitware.com>wrote:
> Grrr. This is a really annoying issue with using globals like this. It
> looks like on that machines, the order of deletion during cleanup is
> different and causes this crash. I'll work on this today.
>
> -berk
>
>
>
> On Sun, Aug 25, 2013 at 11:57 AM, Bill Lorensen <bill.lorensen at gmail.com>wrote:
>
>> Looks to me that
>> static vtkAtomicInt32 GlobalTimeStamp(0)
>>
>> is being deleted during the finalization before some of the objects have
>> been deleted.
>>
>> I verified that by printing out the this pointer in the atomic destructor
>> and printing out a message if Increment() is called with an Internal = 0.
>>
>>
>>
>> On Sun, Aug 25, 2013 at 11:29 AM, Bill Lorensen <bill.lorensen at gmail.com>wrote:
>>
>>> My linux builds (Fedora and Ubuntu) have started crashing after recent
>>> checkins. My MAc builds and runs fine.
>>>
>>>
>>> The executables crash on exit. Looks like this->Internal is NULL.
>>>
>>> For example when I run Cone,
>>> Program received signal SIGSEGV, Segmentation fault.
>>> 0x011671b8 in vtkAtomicInt32::Increment (this=0x12b1a30)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/Sequential/vtkAtomicInt32.cxx:49
>>> 49 this->Internal->AtomicInt32CritSec);
>>> Missing separate debuginfos, use: debuginfo-install
>>> python-libs-2.6.4-27.fc13.i686
>>> (gdb) list
>>> 44
>>> 45 int vtkAtomicInt32::Increment()
>>> 46 {
>>> 47 return vtkAtomicInt32Increment(
>>> 48 &this->Internal->Value,
>>> 49 this->Internal->AtomicInt32CritSec);
>>> 50
>>> 51 }
>>> 52
>>> 53 int vtkAtomicInt32::Add(int val)
>>> (gdb) print this
>>> $1 = (vtkAtomicInt32 * const) 0x12b1a30
>>> (gdb) print this->Internal
>>> $2 = (vtkAtomicInt32Internal *) 0x0
>>> (gdb)
>>>
>>> Here is the traceback:
>>> #0 0x011671b8 in vtkAtomicInt32::Increment (this=0x12b1a30)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/Sequential/vtkAtomicInt32.cxx:49
>>> #1 0x0112e899 in vtkTimeStamp::Modified (this=0x805c234)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkTimeStamp.cxx:51
>>> #2 0x010afdfa in vtkObject::Modified (this=0x805c220)
>>> at /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObject.cxx:854
>>> #3 0x00ffa2ab in vtkCollection::RemoveAllItems (this=0x805c220)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkCollection.cxx:197
>>> #4 0x00ff9ec9 in vtkCollection::~vtkCollection (this=0x805c220,
>>> __in_chrg=<value optimized out>)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkCollection.cxx:39
>>> #5 0x010b23cb in
>>> vtkObjectFactoryCollection::~vtkObjectFactoryCollection (
>>> this=0x805c220, __in_chrg=<value optimized out>)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectFactoryCollection.h:61
>>> #6 0x010b2403 in
>>> vtkObjectFactoryCollection::~vtkObjectFactoryCollection (
>>> this=0x805c220, __in_chrg=<value optimized out>)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectFactoryCollection.h:61
>>> #7 0x010addc6 in vtkObjectBase::UnRegisterInternal (this=0x805c220,
>>> check=1)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectBase.cxx:232
>>> #8 0x010b04ee in vtkObject::UnRegisterInternal (this=0x805c220, o=0x0,
>>> check=
>>> 1) at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObject.cxx:904
>>> #9 0x00ffa5d9 in vtkCollection::UnRegister (this=0x805c220, o=0x0)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkCollection.cxx:349
>>> #10 0x010ada04 in vtkObjectBase::Delete (this=0x805c220)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectBase.cxx:134
>>> #11 0x010b3807 in vtkObjectFactory::UnRegisterAllFactories ()
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectFactory.cxx:444
>>> #12 0x010b45e9 in vtkCleanUpObjectFactory::~vtkCleanUpObjectFactory
>>> (this=
>>> 0x12b15fe, __in_chrg=<value optimized out>)
>>> at
>>> /home/lorensen/ProjectsGIT/VTKGerrit/Common/Core/vtkObjectFactory.cxx:40
>>> #13 0x006ff618 in __cxa_finalize (d=0x1295678) at cxa_finalize.c:56
>>> #14 0x00ee0fa5 in __do_global_dtors_aux ()
>>> from
>>> /home/lorensen/ProjectsGIT/VTKGerrit-linux/lib/libvtkCommonCore-6.1.so.1
>>> #15 0x01177490 in _fini ()
>>> from
>>> /home/lorensen/ProjectsGIT/VTKGerrit-linux/lib/libvtkCommonCore-6.1.so.1
>>> #16 0x006be3c5 in _dl_fini () at dl-fini.c:248
>>> #17 0x006ff29f in __run_exit_handlers (status=0) at exit.c:78
>>> #18 exit (status=0) at exit.c:100
>>> #19 0x006e7cce in __libc_start_main (main=0x8049c40 <main()>, argc=1,
>>> ubp_av=
>>> 0xbffff264, init=0x8049be0 <__libc_csu_init>, fini=
>>> 0x8049bd0 <__libc_csu_fini>, rtld_fini=0x6be220 <_dl_fini>,
>>> stack_end=
>>> 0xbffff25c) at libc-start.c:258
>>> #20 0x08049b31 in _start ()
>>>
>>>
>>> --
>>> Unpaid intern in BillsBasement at noware dot com
>>>
>>
>>
>>
>> --
>> Unpaid intern in BillsBasement at noware dot com
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20130826/4feca8ea/attachment.html>
More information about the vtk-developers
mailing list