[vtk-developers] Crashes after recent checkins

Berk Geveci berk.geveci at kitware.com
Mon Aug 26 10:15:59 EDT 2013


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://www.vtk.org/pipermail/vtk-developers/attachments/20130826/95a7f642/attachment.htm>


More information about the vtk-developers mailing list