>>>> 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
_______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
