|
From: | Kiran Karra |
Subject: | Re: [Discuss-gnuradio] ctest -V segfault, coredump reveals nothing |
Date: | Thu, 17 Apr 2014 08:48:50 -0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 |
>>> Sounds plausible. Ctest is actually just running a
shell script. You
can try running that script through gdb. The name of the script will
be printed near the top of ctest -V. Alternatively you should be
able
to find it in
$build/modname/python/namespace/qa_whatever_your_test_is_called.sh;
an example for gr-digital:
build/gr-digital/python/digital/qa_mpsk_snr_est_test.sh >>>> Nathan, great call. Running the script without the ctest infrastructure yielded a valid stacktrace. I found that it was related to the way I was creating my fft engines. Instead of instantiating an FFT directly, I was creating it w/ a managed_resource_pool_nofactory. I haven't investigated fully why this is causing my program to segfault, but as a quick test I replaced the way I was creating the fft with just this line: fft::fft_complex fft = fft::fft_complex(fftSize); and am not getting the segfaults anymore. I'll have to do some debugging to figure out why this is going on, but atleast I know where to start now. For those that are curious, the backtrace looks like this: Program terminated with signal 11, Segmentation fault. #0 0x0000000000000031 in ?? () (gdb) backtrace #0 0x0000000000000031 in ?? () #1 0x00007f0317592c70 in boost::checked_delete<gr::fft::fft_complex> (x=0xb07430) at /usr/include/boost/checked_delete.hpp:34 #2 0x00007f03175974c0 in boost::detail::sp_counted_impl_p<gr::fft::fft_complex>::dispose (this=0xb065d0) at /usr/include/boost/smart_ptr/detail/sp_counted_impl.hpp:78 #3 0x00007f0317585e02 in boost::detail::sp_counted_base::release (this=0xb065d0) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #4 0x00007f0317585e91 in boost::detail::shared_count::~shared_count (this=0xadb240, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #5 0x00007f031759023c in boost::shared_ptr<gr::fft::fft_complex>::~shared_ptr (this=0xadb238, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328 #6 0x00007f0317593da8 in std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> >::~pair (this=0xadb230, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_pair.h:96 #7 0x00007f0317596378 in __gnu_cxx::new_allocator<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > >::destroy (this=0x7fff820439ef, __p=0xadb230) at /usr/include/c++/4.8/ext/new_allocator.h:133 #8 0x00007f0317595742 in std::_Rb_tree<gr::fft::fft_complex*, std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> >, std::_Select1st<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > >, std::less<gr::fft::fft_complex*>, std::allocator<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > > >::_M_destroy_node (this=0xaca178, __p=0xadb210) at /usr/include/c++/4.8/bits/stl_tree.h:395 #9 0x00007f031759478f in std::_Rb_tree<gr::fft::fft_complex*, std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> >, std::_Select1st<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > >, std::less<gr::fft::fft_complex*>, std::allocator<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > > >::_M_erase (this=0xaca178, __x=0xadb210) at /usr/include/c++/4.8/bits/stl_tree.h:1127 #10 0x00007f0317593c57 in std::_Rb_tree<gr::fft::fft_complex*, std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> >, std::_Select1st<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > >, std::less<gr::fft::fft_complex*>, std::allocator<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > > >::~_Rb_tree (this=0xaca178, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:671 #11 0x00007f0317593176 in std::map<gr::fft::fft_complex*, boost::shared_ptr<gr::fft::fft_complex>, std::less<gr::fft::fft_complex*>, std::allocator<std::pair<gr::fft::fft_complex* const, boost::shared_ptr<gr::fft::fft_complex> > > >::~map (this=0xaca178, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_map.h:96 #12 0x00007f03175957e9 in pooled_resource<gr::fft::fft_complex>::~pooled_resource (this=0xaca130, __in_chrg=<optimized out>) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:20 #13 0x00007f0317595836 in boost::checked_delete<pooled_resource<gr::fft::fft_complex> > (x=0xaca130) at /usr/include/boost/checked_delete.hpp:34 #14 0x00007f031759747e in boost::detail::sp_counted_impl_p<pooled_resource<gr::fft::fft_complex> >::dispose (this=0xaca2e0) at /usr/include/boost/smart_ptr/detail/sp_counted_impl.hpp:78 #15 0x00007f0317585e02 in boost::detail::sp_counted_base::release (this=0xaca2e0) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #16 0x00007f0317585e91 in boost::detail::shared_count::~shared_count (this=0xadb1a0, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #17 0x00007f0317591d0a in boost::shared_ptr<pooled_resource<gr::fft::fft_complex> >::~shared_ptr (this=0xadb198, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328 #18 0x00007f0317591d28 in std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > >::~pair (this=0xadb190, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_pair.h:96 #19 0x00007f0317591d46 in __gnu_cxx::new_allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > >::destroy (this=0x7fff82043bcf, __p=0xadb190) at /usr/include/c++/4.8/ext/new_allocator.h:133 #20 0x00007f03175912dc in std::_Rb_tree<int, std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > >, std::_Select1st<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > >, std::less<int>, std::allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > > >::_M_destroy_node (this=0xac91c8, __p=0xadb170) at /usr/include/c++/4.8/bits/stl_tree.h:395 #21 0x00007f03175905a7 in std::_Rb_tree<int, std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > >, std::_Select1st<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > >, std::less<int>, std::allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > > >::_M_erase (this=0xac91c8, __x=0xadb170) at /usr/include/c++/4.8/bits/stl_tree.h:1127 #22 0x00007f0317590584 in std::_Rb_tree<int, std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > >, std::_Select1st<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > >, std::less<int>, std::allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > > >::_M_erase (this=0xac91c8, __x=0xac9b80) at /usr/include/c++/4.8/bits/stl_tree.h:1125 #23 0x00007f031758fa95 in std::_Rb_tree<int, std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > >, std::_Select1st<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > >, std::less<int>, std::allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > > >::~_Rb_tree (this=0xac91c8, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_tree.h:671 #24 0x00007f031758f248 in std::map<int, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> >, std::less<int>, std::allocator<std::pair<int const, boost::shared_ptr<pooled_resource<gr::fft::fft_complex> > > > >::~map (this=0xac91c8, __in_chrg=<optimized out>) at /usr/include/c++/4.8/bits/stl_map.h:96 #25 0x00007f031758f277 in managed_resource_pool<gr::fft::fft_complex, int>::~managed_resource_pool (this=0xac91a8, __in_chrg=<optimized out>) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:58 #26 0x00007f031758f2be in managed_resource_pool_nofactory<gr::fft::fft_complex, int>::~managed_resource_pool_nofactory (this=0xac91a8, __in_chrg=<optimized out>) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:115 #27 0x00007f0317598109 in gr::wifi_detector::es_80211b_chip_and_freq_sync_c_impl::~es_80211b_chip_and_freq_sync_c_impl (this=0xac91a0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) ---Type <return> to continue, or q <return> to quit--- at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/es_80211b_chip_and_freq_sync_c_impl.cc:73 #28 0x00007f03175981c2 in gr::wifi_detector::es_80211b_chip_and_freq_sync_c_impl::~es_80211b_chip_and_freq_sync_c_impl (this=0xac91a0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/es_80211b_chip_and_freq_sync_c_impl.cc:75 #29 0x0000000000418a04 in boost::detail::sp_counted_base::release (this=0xb04e10) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #30 0x0000000000418a93 in boost::detail::shared_count::~shared_count (this=0x7fff820441c8, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #31 0x0000000000426a74 in boost::shared_ptr<gr::wifi_detector::es_80211b_chip_and_freq_sync_c>::~shared_ptr (this=0x7fff820441c0, __in_chrg=<optimized out>) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328 #32 0x0000000000425b38 in gr::wifi_detector::qa_es_80211b_chip_and_freq_sync::t1 (this=0xac8be0) at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/qa_es_80211b_chip_and_freq_sync.cc:57 #33 0x000000000041681c in CppUnit::TestCaller<gr::wifi_detector::qa_es_80211b_chip_and_freq_sync>::runTest (this=0xac8e50) at /usr/include/cppunit/TestCaller.h:166 |
smime.p7s
Description: S/MIME Cryptographic Signature
[Prev in Thread] | Current Thread | [Next in Thread] |