Thread 2 "rcdcap" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fffecf7d700 (LWP 32263)]
__memmove_sse2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:493
493 ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: No such file or directory.
0 __memmove_sse2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:493
Thread 3 "rcdcap" received signal SIGABRT, Aborted. [Switching to Thread 0x7fffec77b700 (LWP 7922)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff6691801 in __GI_abort () at abort.c:79
Thread 7 "rcdcap" received signal SIGABRT, Aborted. [Switching to Thread 0x7fffea774700 (LWP 12750)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
Thread 2 "rcdcap" received signal SIGABRT, Aborted. [Switching to Thread 0x7fffecf79700 (LWP 14689)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
Ok, there are some possible corner cases when that functionality can fail. Can you download the latest revision from the repo (hg.code.sf.net/p/rcdcap/code rcdcap-code) and use it instead to validate whether my guess is correct?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thread 5 "rcdcap" received signal SIGABRT, Aborted. [Switching to Thread 0x7fffeb776700 (LWP 6645)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
Can you run from command line with gdb attached and copy the backtrace when it crashes:
sudo gdb -batch -ex "run" -ex "bt" --args ./rcdcap -i ens0 --erspan --tap-persist --tap-device mon1 2>&1 | grep -v ^"No stack."$
Thread 2 "rcdcap" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffecf7d700 (LWP 32263)]
__memmove_sse2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:493
493 ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: No such file or directory.
0 __memmove_sse2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:493
1 0x00005555556bf5e3 in unsigned char std::__copy_move<false, true,="" std::random_access_iterator_tag="">::__copy_m<unsigned char="">(unsigned char const</unsigned></false,>, unsigned char const, unsigned char) ()
2 0x00005555556bf418 in unsigned char std::__copy_move_a<false, char*,="" char*="" unsigned="">(unsigned char</false,>, unsigned char, unsigned char) ()
3 0x00005555556bf15c in unsigned char std::__copy_move_a2<false, char*,="" char*="" unsigned="">(unsigned char</false,>, unsigned char, unsigned char) ()
4 0x00005555556bef1a in unsigned char std::copy<unsigned char*,="" char*="" unsigned="">(unsigned char</unsigned>, unsigned char, unsigned char) ()
5 0x00007ffff7b8373e in RCDCap::ERSPANProcessor::processImpl(RCDCap::PacketInfo*) () from /usr/lib/librcdcap_core.so
6 0x00007ffff7b834d5 in RCDCap::ERSPANProcessor::process(RCDCap::PacketInfo*, unsigned long) () from /usr/lib/librcdcap_core.so
7 0x00007ffff7b84cec in void std::__invoke_impl<void, rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" void="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(std::__invoke_memfun_deref, void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void,>
8 0x00007ffff7b84be0 in std::__invoke_result<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">::type std::__invoke<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void></void>
9 0x00007ffff7b84ab7 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::__call<void, 0ul,="" 1ul,="" ,="" 2ul="">(std::tuple<>&&, std::_Index_tuple<0ul, 1ul, 2ul>) () from /usr/lib/librcdcap_core.so</void,></void>
10 0x00007ffff7b849e9 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::operator()<, void>() () from /usr/lib/librcdcap_core.so</void>
11 0x00007ffff7b849ac in void boost::asio::asio_handler_invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, ...) () from /usr/lib/librcdcap_core.so</void></std::_bind<void>
12 0x00007ffff7b8490c in void boost_asio_handler_invoke_helpers::invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&) () from /usr/lib/librcdcap_core.so</void></void></void></std::_bind<void>
13 0x00007ffff7b847e0 in boost::asio::detail::completion_handler<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >::do_complete(boost::asio::detail::task_io_service, boost::asio::detail::task_io_service_operation, boost::system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so</std::_bind<void>
14 0x000055555565b5d8 in boost::asio::detail::task_io_service_operation::complete(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsigned long) ()
15 0x000055555565dc45 in boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service_thread_info&, boost::system::error_code const&) ()</boost::asio::detail::posix_mutex>
16 0x000055555565d6f3 in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
17 0x000055555565df04 in boost::asio::io_service::run() ()
18 0x00005555556838f7 in boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">::operator()(boost::asio::io_service*) const ()</unsigned>
19 0x000055555567fc42 in unsigned long boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> >::operator()<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list0>(boost::_bi::type<unsigned long="">, boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">&, boost::_bi::list0&, long) ()</unsigned></unsigned></unsigned></boost::_bi::value<boost::asio::io_service*>
20 0x000055555567a738 in boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></unsigned>
21 0x0000555555673f13 in unsigned long std::__invoke_impl<unsigned boost::_mfi::mf0<unsigned="" boost::_bi::bind_t<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(std::__invoke_other, boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></unsigned>
22 0x000055555566d1b8 in std::__invoke_result<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>::type std::__invoke<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned>
23 0x00005555556bab08 in decltype (__invoke((_S_declval<0ul>)())) std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
24 0x00005555556ba07a in std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
25 0x00005555556b876a in std:🧵:_State_impl<std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > > >::_M_run() ()</boost::_bi::value<boost::asio::io_service*></std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned>
26 0x00007ffff6d186df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
27 0x00007ffff74c66db in start_thread (arg=0x7fffecf7d700) at pthread_create.c:463
28 0x00007ffff677388f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Ok, can you try the latest version (1.0.2)? It fixes at least one source of memory corruption.
Last edit: Zero effect 2020-05-13
Newest version compiled and running, so far so good. Ill report back the results if it should crash or if we stay up all day
Good morning, unfortunetly rcdcap crashed again.
rcdcap: /usr/local/src/RCDCap-1.0.2-Source/src/sink.cc:257: void RCDCap::TAPDeviceSink::writeCompleted(RCDCap::PacketInfo*, size_t, size_t, const boost::system::error_code&, std::size_t): Assertion `bytes_transferred == packet_info->getPCAPHeader().getCapturedLength()' failed.
Thread 3 "rcdcap" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffec77b700 (LWP 7922)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff6691801 in __GI_abort () at abort.c:79
2 0x00007ffff668139a in __assert_fail_base (fmt=0x7ffff68087d8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7ffff7bae288 "bytes_transferred == packet_info->getPCAPHeader().getCapturedLength()", file=file@entry=0x7ffff7bae258 "/usr/local/src/RCDCap-1.0.2-Source/src/sink.cc", line=line@entry=257, function=function@entry=0x7ffff7baea00 <rcdcap::tapdevicesink::writecompleted(rcdcap::packetinfo*, long)::__pretty_function__="" const&,="" unsigned="" boost::system::error_code="" long,=""> "void RCDCap::TAPDeviceSink::writeCompleted(RCDCap::PacketInfo*, size_t, size_t, const boost::system::error_code&, std::size_t)") at assert.c:92</rcdcap::tapdevicesink::writecompleted(rcdcap::packetinfo*,>
3 0x00007ffff6681412 in __GI___assert_fail (assertion=0x7ffff7bae288 "bytes_transferred == packet_info->getPCAPHeader().getCapturedLength()", file=0x7ffff7bae258 "/usr/local/src/RCDCap-1.0.2-Source/src/sink.cc", line=257, function=0x7ffff7baea00 <rcdcap::tapdevicesink::writecompleted(rcdcap::packetinfo*, long)::__pretty_function__="" const&,="" unsigned="" boost::system::error_code="" long,=""> "void RCDCap::TAPDeviceSink::writeCompleted(RCDCap::PacketInfo*, size_t, size_t, const boost::system::error_code&, std::size_t)") at assert.c:101</rcdcap::tapdevicesink::writecompleted(rcdcap::packetinfo*,>
4 0x00007ffff7b77add in RCDCap::TAPDeviceSink::writeCompleted(RCDCap::PacketInfo*, unsigned long, unsigned long, boost::system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so
5 0x00007ffff7b82684 in void std::__invoke_impl<void, rcdcap::packetinfo*&,="" const&="" const&,="" rcdcap::tapdevicesink*&,="" void="" (rcdcap::tapdevicesink::*&)(rcdcap::packetinfo*,="" unsigned="" long="" long),="" long,="" long&,="" boost::system::error_code="">(std::__invoke_memfun_deref, void (RCDCap::TAPDeviceSink::&)(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long), RCDCap::TAPDeviceSink&, RCDCap::PacketInfo&, unsigned long&, unsigned long&, boost::system::error_code const&, unsigned long const&) () from /usr/lib/librcdcap_core.so</void,>
6 0x00007ffff7b82438 in std::__invoke_result<void rcdcap::packetinfo*&,="" const&="" const&,="" rcdcap::tapdevicesink*&,="" (rcdcap::tapdevicesink::*&)(rcdcap::packetinfo*,="" unsigned="" long="" long),="" long,="" long&,="" boost::system::error_code="">::type std::__invoke<void rcdcap::packetinfo*&,="" const&="" const&,="" rcdcap::tapdevicesink*&,="" (rcdcap::tapdevicesink::*&)(rcdcap::packetinfo*,="" unsigned="" long="" long),="" long,="" long&,="" boost::system::error_code="">(void (RCDCap::TAPDeviceSink::&)(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long), RCDCap::TAPDeviceSink&, RCDCap::PacketInfo&, unsigned long&, unsigned long&, boost::system::error_code const&, unsigned long const&) () from /usr/lib/librcdcap_core.so</void></void>
7 0x00007ffff7b821c7 in void std::_Bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo*, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>::__call<void, 0ul,="" const&,="" 2ul,="" unsigned="" long="" 4ul,="" 3ul,="" 5ul="" 1ul,="" boost::system::error_code="">(std::tuple<boost::system::error_code const&="" const&,="" unsigned="" long="">&&, std::_Index_tuple<0ul, 1ul, 2ul, 3ul, 4ul, 5ul>) () from /usr/lib/librcdcap_core.so</boost::system::error_code></void,></void>
8 0x00007ffff7b81e23 in void std::_Bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo*, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>::operator()<boost::system::error_code void="" const&,="" unsigned="" long="">(boost::system::error_code const&, unsigned long const&) () from /usr/lib/librcdcap_core.so</boost::system::error_code></void>
9 0x00007ffff7b818dd in boost::asio::detail::binder2<std::_bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo*, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>, boost::system::error_code, unsigned long>::operator()() () from /usr/lib/librcdcap_core.so</std::_bind<void>
10 0x00007ffff7b815b9 in void boost::asio::asio_handler_invoke<boost::asio::detail::binder2<std::_bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>, boost::system::error_code, unsigned long> >(boost::asio::detail::binder2<std::_bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo</std::_bind<void>, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>, boost::system::error_code, unsigned long>&, ...) () from /usr/lib/librcdcap_core.so</boost::asio::detail::binder2<std::_bind<void>
11 0x00007ffff7b81307 in void boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder2<std::_bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>, boost::system::error_code, unsigned long>, std::_Bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo</void>, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)> >(boost::asio::detail::binder2<std::_bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>, boost::system::error_code, unsigned long>&, std::_Bind<void rcdcap::packetinfo*,="" std::_placeholder<1="" unsigned="" long,="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo</void>, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)>&) () from /usr/lib/librcdcap_core.so</std::_bind<void></boost::asio::detail::binder2<std::_bind<void>
12 0x00007ffff7b80f23 in boost::asio::detail::descriptor_write_op<boost::asio::mutable_buffers_1, std::_placeholder<1="" long,="" unsigned="" rcdcap::packetinfo*,="" std::_bind<void="" (rcdcap::tapdevicesink::*(rcdcap::tapdevicesink*,="">, std::_Placeholder<2>))(RCDCap::PacketInfo, unsigned long, unsigned long, boost::system::error_code const&, unsigned long)> >::do_complete(boost::asio::detail::task_io_service, boost::asio::detail::task_io_service_operation*, boost::system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so</boost::asio::mutable_buffers_1,>
13 0x000055555565bacc in boost::asio::detail::task_io_service_operation::complete(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsigned long) ()
14 0x000055555565e139 in boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service_thread_info&, boost::system::error_code const&) ()</boost::asio::detail::posix_mutex>
15 0x000055555565dbe7 in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
16 0x000055555565e3f8 in boost::asio::io_service::run() ()
17 0x0000555555683f4b in boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">::operator()(boost::asio::io_service*) const ()</unsigned>
18 0x000055555568027c in unsigned long boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> >::operator()<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list0>(boost::_bi::type<unsigned long="">, boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">&, boost::_bi::list0&, long) ()</unsigned></unsigned></unsigned></boost::_bi::value<boost::asio::io_service*>
19 0x000055555567ad58 in boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></unsigned>
20 0x00005555556744ff in unsigned long std::__invoke_impl<unsigned boost::_mfi::mf0<unsigned="" boost::_bi::bind_t<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(std::__invoke_other, boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></unsigned>
21 0x000055555566d6ac in std::__invoke_result<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>::type std::__invoke<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned>
22 0x00005555556bb15c in decltype (__invoke((_S_declval<0ul>)())) std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
23 0x00005555556ba6ce in std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
24 0x00005555556b8dbe in std:🧵:_State_impl<std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > > >::_M_run() ()</boost::_bi::value<boost::asio::io_service*></std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned>
25 0x00007ffff6d176df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
26 0x00007ffff74c56db in start_thread (arg=0x7fffec77b700) at pthread_create.c:463
27 0x00007ffff677288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thank you for your hard work!
Ok, it seems to be a new problem with ASIO. Can you try 1.0.3?
Yes I can, thank you! Ill report back the results.
Do you need any more data from me to assist in troubleshooting?
Good morning, below the the output of GDB while running 1.0.3. Thank you for all your effort put into this project!
rcdcap: /usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc:232: RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const: Assertion `packet_info->m_DebugMagic == 0x1337' failed.
Thread 7 "rcdcap" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffea774700 (LWP 12750)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
2 0x00007ffff667e39a in __assert_fail_base (fmt=0x7ffff68057d8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7ffff7bb2e68 "packet_info->m_DebugMagic == 0x1337", file=file@entry=0x7ffff7bb2de8 "/usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc", line=line@entry=232, function=function@entry=0x7ffff7bb3140 <rcdcap::commonbuffer::next(rcdcap::packetinfo*) const::__pretty_function__=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const") at assert.c:92</rcdcap::commonbuffer::next(rcdcap::packetinfo*)>
3 0x00007ffff667e412 in __GI___assert_fail (assertion=0x7ffff7bb2e68 "packet_info->m_DebugMagic == 0x1337", file=0x7ffff7bb2de8 "/usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc", line=232, function=0x7ffff7bb3140 <rcdcap::commonbuffer::next(rcdcap::packetinfo*) const::__pretty_function__=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const") at assert.c:101</rcdcap::commonbuffer::next(rcdcap::packetinfo*)>
4 0x00007ffff7b9f528 in RCDCap::CommonBuffer::next(RCDCap::PacketInfo*) const () from /usr/lib/librcdcap_core.so
5 0x00007ffff7b82cef in RCDCap::ERSPANProcessor::process(RCDCap::PacketInfo*, unsigned long) () from /usr/lib/librcdcap_core.so
6 0x00007ffff7b844ea in void std::__invoke_impl<void, rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" void="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(std::__invoke_memfun_deref, void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void,>
7 0x00007ffff7b843de in std::__invoke_result<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">::type std::__invoke<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void></void>
8 0x00007ffff7b842b5 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::__call<void, 0ul,="" 1ul,="" ,="" 2ul="">(std::tuple<>&&, std::_Index_tuple<0ul, 1ul, 2ul>) () from /usr/lib/librcdcap_core.so</void,></void>
9 0x00007ffff7b841e7 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::operator()<, void>() () from /usr/lib/librcdcap_core.so</void>
10 0x00007ffff7b841aa in void boost::asio::asio_handler_invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, ...) () from /usr/lib/librcdcap_core.so</void></std::_bind<void>
11 0x00007ffff7b8410a in void boost_asio_handler_invoke_helpers::invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&) () from /usr/lib/librcdcap_core.so</void></void></void></std::_bind<void>
12 0x00007ffff7b83fde in boost::asio::detail::completion_handler<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >::do_complete(boost::asio::detail::task_io_service, boost::asio::detail::task_io_service_operation, boost::system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so</std::_bind<void>
13 0x000055555565bacc in boost::asio::detail::task_io_service_operation::complete(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsigned long) ()
14 0x000055555565e139 in boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service_thread_info&, boost::system::error_code const&) ()</boost::asio::detail::posix_mutex>
15 0x000055555565dbe7 in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
16 0x000055555565e3f8 in boost::asio::io_service::run() ()
17 0x0000555555683f4b in boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">::operator()(boost::asio::io_service*) const ()</unsigned>
18 0x000055555568027c in unsigned long boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> >::operator()<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list0>(boost::_bi::type<unsigned long="">, boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">&, boost::_bi::list0&, long) ()</unsigned></unsigned></unsigned></boost::_bi::value<boost::asio::io_service*>
19 0x000055555567ad58 in boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></unsigned>
20 0x00005555556744ff in unsigned long std::__invoke_impl<unsigned boost::_mfi::mf0<unsigned="" boost::_bi::bind_t<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(std::__invoke_other, boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></unsigned>
21 0x000055555566d6ac in std::__invoke_result<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>::type std::__invoke<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned>
22 0x00005555556bb15c in decltype (__invoke((_S_declval<0ul>)())) std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
23 0x00005555556ba6ce in std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
24 0x00005555556b8dbe in std:🧵:_State_impl<std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > > >::_M_run() ()</boost::_bi::value<boost::asio::io_service*></std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned>
25 0x00007ffff6d146df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
26 0x00007ffff74c26db in start_thread (arg=0x7fffea774700) at pthread_create.c:463
27 0x00007ffff676f88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Here is another one, after loading ip_gre Module into OS kernel and adjusting source interface MTU to 9000
rcdcap: /usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc:232: RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const: Assertion `packet_info->m_DebugMagic == 0x1337' failed.
Thread 2 "rcdcap" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffecf79700 (LWP 14689)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
2 0x00007ffff667e39a in __assert_fail_base (fmt=0x7ffff68057d8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7ffff7bb2e68 "packet_info->m_DebugMagic == 0x1337", file=file@entry=0x7ffff7bb2de8 "/usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc", line=line@entry=232, function=function@entry=0x7ffff7bb3140 <rcdcap::commonbuffer::next(rcdcap::packetinfo*) const::__pretty_function__=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const") at assert.c:92</rcdcap::commonbuffer::next(rcdcap::packetinfo*)>
3 0x00007ffff667e412 in __GI___assert_fail (assertion=0x7ffff7bb2e68 "packet_info->m_DebugMagic == 0x1337", file=0x7ffff7bb2de8 "/usr/local/src/RCDCap-1.0.3-Source/src/common-buffer.cc", line=232, function=0x7ffff7bb3140 <rcdcap::commonbuffer::next(rcdcap::packetinfo*) const::__pretty_function__=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const") at assert.c:101</rcdcap::commonbuffer::next(rcdcap::packetinfo*)>
4 0x00007ffff7b9f528 in RCDCap::CommonBuffer::next(RCDCap::PacketInfo*) const () from /usr/lib/librcdcap_core.so
5 0x00007ffff7b82cef in RCDCap::ERSPANProcessor::process(RCDCap::PacketInfo*, unsigned long) () from /usr/lib/librcdcap_core.so
6 0x00007ffff7b844ea in void std::__invoke_impl<void, rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" void="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(std::__invoke_memfun_deref, void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void,>
7 0x00007ffff7b843de in std::__invoke_result<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">::type std::__invoke<void rcdcap::packetinfo*&,="" rcdcap::erspanprocessor*&,="" unsigned="" long),="" (rcdcap::erspanprocessor::*&)(rcdcap::packetinfo*,="" long&="">(void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void></void>
8 0x00007ffff7b842b5 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::__call<void, 0ul,="" 1ul,="" ,="" 2ul="">(std::tuple<>&&, std::_Index_tuple<0ul, 1ul, 2ul>) () from /usr/lib/librcdcap_core.so</void,></void>
9 0x00007ffff7b841e7 in void std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">::operator()<, void>() () from /usr/lib/librcdcap_core.so</void>
10 0x00007ffff7b841aa in void boost::asio::asio_handler_invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, ...) () from /usr/lib/librcdcap_core.so</void></std::_bind<void>
11 0x00007ffff7b8410a in void boost_asio_handler_invoke_helpers::invoke<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >(std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&, std::_Bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="">&) () from /usr/lib/librcdcap_core.so</void></void></void></std::_bind<void>
12 0x00007ffff7b83fde in boost::asio::detail::completion_handler<std::_bind<void unsigned="" long)="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,=""> >::do_complete(boost::asio::detail::task_io_service, boost::asio::detail::task_io_service_operation, boost::system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so</std::_bind<void>
13 0x000055555565bacc in boost::asio::detail::task_io_service_operation::complete(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsigned long) ()
14 0x000055555565e139 in boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::detail::task_io_service_thread_info&, boost::system::error_code const&) ()</boost::asio::detail::posix_mutex>
15 0x000055555565dbe7 in boost::asio::detail::task_io_service::run(boost::system::error_code&) ()
16 0x000055555565e3f8 in boost::asio::io_service::run() ()
17 0x0000555555683f4b in boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">::operator()(boost::asio::io_service*) const ()</unsigned>
18 0x000055555568027c in unsigned long boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> >::operator()<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list0>(boost::_bi::type<unsigned long="">, boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">&, boost::_bi::list0&, long) ()</unsigned></unsigned></unsigned></boost::_bi::value<boost::asio::io_service*>
19 0x000055555567ad58 in boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></unsigned>
20 0x00005555556744ff in unsigned long std::__invoke_impl<unsigned boost::_mfi::mf0<unsigned="" boost::_bi::bind_t<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(std::__invoke_other, boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></unsigned>
21 0x000055555566d6ac in std::__invoke_result<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>::type std::__invoke<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bind_t<unsigned>
22 0x00005555556bb15c in decltype (__invoke((_S_declval<0ul>)())) std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
23 0x00005555556ba6ce in std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<unsigned>
24 0x00005555556b8dbe in std:🧵:_State_impl<std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > > >::_M_run() ()</boost::_bi::value<boost::asio::io_service*></std::thread::_invoker<std::tuple<boost::_bi::bind_t<unsigned>
25 0x00007ffff6d146df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
26 0x00007ffff74c26db in start_thread (arg=0x7fffecf79700) at pthread_create.c:463
27 0x00007ffff676f88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Ok, there are some possible corner cases when that functionality can fail. Can you download the latest revision from the repo (hg.code.sf.net/p/rcdcap/code rcdcap-code) and use it instead to validate whether my guess is correct?
Ok, I found at least another bug that I was able to reproduce - check the latest release 1.0.4.
Hello, we are unable to build the newest release. Please see the error output below.
Check 1.0.4-r2. It should now build with pfring enabled.
We have succesfully built 1.0.4-r2, installing now to test.
gdb -batch -ex "run" -ex "bt" --args rcdcap -i ens192 --erspan --tap-persist --tap-dev ice mon1 2>&1 | grep -v ^"No stack."$
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
listening on ens192 (EN10MB), capture size 1518 bytes
worker threads: 8 on 8 CPUs
[New Thread 0x7fffecf79700 (LWP 6642)]
[New Thread 0x7fffec778700 (LWP 6643)]
[New Thread 0x7fffebf77700 (LWP 6644)]
[New Thread 0x7fffeb776700 (LWP 6645)]
[New Thread 0x7fffeaf75700 (LWP 6646)]
[New Thread 0x7fffea774700 (LWP 6647)]
[New Thread 0x7fffe9f73700 (LWP 6648)]
rcdcap: /usr/local/src/RCDCap-1.0.4-Source/src/common-buffer.cc:233: RCDCap::Pac ketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const: Assertion `packe t_info->m_DebugMagic == 0x1337' failed.
Thread 5 "rcdcap" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffeb776700 (LWP 6645)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
1 0x00007ffff668e801 in __GI_abort () at abort.c:79
2 0x00007ffff667e39a in __assert_fail_base (fmt=0x7ffff68057d8 "%s%s%s:%u: %s% sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7ffff7bb2ec8 "packet_i nfo->m_DebugMagic == 0x1337", file=file@entry=0x7ffff7bb2e48 "/usr/local/src/RCD Cap-1.0.4-Source/src/common-buffer.cc", line=line@entry=233, function=function@e ntry=0x7ffff7bb31a0 <rcdcap::commonbuffer::next(rcdcap::packetinfo*) etty_function__="" const::__pr=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketI nfo) const") at assert.c:92</rcdcap::commonbuffer::next(rcdcap::packetinfo*)>
3 0x00007ffff667e412 in __GI___assert_fail (assertion=0x7ffff7bb2ec8 "packet_i nfo->m_DebugMagic == 0x1337", file=0x7ffff7bb2e48 "/usr/local/src/RCDCap-1.0.4-S ource/src/common-buffer.cc", line=233, function=0x7ffff7bb31a0 <rcdcap::commonbu ffer::next(rcdcap::packetinfo*)="" const::__pretty_function__=""> "RCDCap::PacketInfo RCDCap::CommonBuffer::next(RCDCap::PacketInfo) const") at assert.c:101</rcdcap::commonbu>
4 0x00007ffff7b9f4dc in RCDCap::CommonBuffer::next(RCDCap::PacketInfo*) const () from /usr/lib/librcdcap_core.so
5 0x00007ffff7b82c71 in RCDCap::ERSPANProcessor::process(RCDCap::PacketInfo*, unsigned long) () from /usr/lib/librcdcap_core.so
6 0x00007ffff7b844b4 in void std::__invoke_impl<void, essor::*&)(rcdcap::packetinfo*,="" rcdcap::erspanprocessor*&,="" void="" p::packetinfo*&,="" unsigned="" long),="" rcdca="" (rcdcap::erspanproc="" long&="">(std::__invoke_memfun_deref, void (RCDCap::ERSPA NProcessor::&)(RCDCap::PacketInfo, unsigned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void,>
7 0x00007ffff7b843a8 in std::__invoke_result<void )(rcdcap::packetinfo*,="" rcdcap::erspanprocessor*&,="" rcdcap::packet="" (rcdcap::erspanprocessor::*&="" unsigned="" long),="" info*&,="" long&="">::type std::__invoke<void rcdcap::erspanprocessor*&,="" (rcdcap::erspanprocessor::*&)(r="" unsigned="" long),="" o*&,="" cdcap::packetinfo*,="" long&="" rcdcap::packetinf="">(void (RCDCap::ERSPANProcessor::&)(RCDCap::PacketInfo, uns igned long), RCDCap::ERSPANProcessor&, RCDCap::PacketInfo&, unsigned long&) () from /usr/lib/librcdcap_core.so</void></void>
8 0x00007ffff7b8427f in void std::_Bind<void (rcdcap::erspanprocessor::*(rcdca="" nsigned="" long))(rcdcap::packetinfo*,="" unsigned="" long)="" u="" rcdcap::packetinfo*,="" p::erspanprocessor*,="">::__call<void, 0ul,="" 1ul,="" ,="" 2ul="">(std::tuple<>&&, std::_Index_tuple< 0ul, 1ul, 2ul>) () from /usr/lib/librcdcap_core.so</void,></void>
9 0x00007ffff7b841b1 in void std::_Bind<void (rcdcap::erspanprocessor::*(rcdca="" nsigned="" long))(rcdcap::packetinfo*,="" unsigned="" long)="" u="" rcdcap::packetinfo*,="" p::erspanprocessor*,="">::operator()<, void>() () from /usr/lib/librcdcap_core.so</void>
10 0x00007ffff7b84174 in void boost::asio::asio_handler_invoke<std::_bind<void ned="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" unsigned="" long)="" rcdcap::packetinfo*,="" unsig=""> >(std::_Bind<void cap::packetinfo*,="" (rcdcap::erspa="" unsigned="" nprocessor::*(rcdcap::erspanprocessor*,="" long)="" rcdcap::packetinfo*,="" long))(rcd="">&, ...) () from /usr/lib/librcdcap_core.so</void></std::_bind<void>
11 0x00007ffff7b840d4 in void boost_asio_handler_invoke_helpers::invoke<std::_b long))(rcdcap::packetinfo*,="" unsigned="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" long)="" o*,="" ind<void="" rcdcap::packetinf="">, std::_Bind<void rcdcap::packetinfo*,="" lo="" ng))(rcdcap::packetinfo*,="" unsigned="" long)="" (rcdca="" p::erspanprocessor::*(rcdcap::erspanprocessor*,=""> >(std::_Bind<void (rcdcap::erspanproce="" acketinfo*,="" unsigned="" long)="" ssor::*(rcdcap::erspanprocessor*,="" rcdcap::packetinfo*,="" long))(rcdcap::p="">&, std::_Bind<void long))(rcdcap::packetinfo*,="" unsigned="" ::erspanprocessor*,="" (rcdcap::erspanprocessor::*(rcdcap="" long)="" un="" signed="" rcdcap::packetinfo*,="">&) () from /usr/lib/librcdcap_core.so</void></void></void></std::_b>
12 0x00007ffff7b83fa8 in boost::asio::detail::completion_handler<std::_bind<voi igned="" uns="" d="" long))(rcdcap::packetinfo*,="" (rcdcap::erspanprocessor::*(rcdcap::erspanprocessor*,="" unsigned="" long)="" rcdcap::packetinfo*,=""> >::do_complete(boost::asio::de tail::task_io_service, boost::asio::detail::task_io_service_operation, boost:: system::error_code const&, unsigned long) () from /usr/lib/librcdcap_core.so</std::_bind<voi>
13 0x000055555565bacc in boost::asio::detail::task_io_service_operation::comple te(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsi gned long) ()
14 0x000055555565e139 in boost::asio::detail::task_io_service::do_run_one(boost ::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&, boost::asio::det ail::task_io_service_thread_info&, boost::system::error_code const&) ()</boost::asio::detail::posix_mutex>
15 0x000055555565dbe7 in boost::asio::detail::task_io_service::run(boost::syste m::error_code&) ()
16 0x000055555565e3f8 in boost::asio::io_service::run() ()
17 0x0000555555683f4b in boost::_mfi::mf0<unsigned boost::asio::io_servic="" e="" long,="">::operator()(boost::asio::io_service*) const ()</unsigned>
18 0x000055555568027c in unsigned long boost::_bi::list1<boost::_bi::value<boos t::asio::io_service*=""> >::operator()<unsigned g,="" boost::_mfi::mf0<unsigned="" lon="" boost::asio::io_service="" long,="">, boost::_bi::list0>(boost::_bi::type<unsigned long="">, boost::_mfi::mf0<unsigned boost::asio::io_service="" long,="">&, boost::_bi::list0&, long) ()</unsigned></unsigned></unsigned></boost::_bi::value<boos>
19 0x000055555567ad58 in boost::_bi::bind_t<unsigned igned="" boost::_mfi::mf0<uns="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost: :asio::io_service*=""> > >::operator()() ()</boost::_bi::value<boost:></unsigned>
20 0x00005555556744ff in unsigned long std::invoke_impl<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_serv="" long,="" ice="" boost:="" :_bi::bind_t<unsigned="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(std::</boost::_bi::value<boost::asio::io_service*></unsigned> invoke_other, boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_se rvice*=""> > >&&) ()</boost::_bi::value<boost::asio::io_se></unsigned>
21 0x000055555566d6ac in std::__invoke_result<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boo st::_bi::value<boost::asio::io_service*=""> > >>::type std::__invoke<boost::_bi::bi boost::_mfi::mf0<unsigned="" nd_t<unsigned="" boost::asio::io_service="" long,="">, bo ost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >>(boost::_bi::bin d_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boo st::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >&&) ()</boost::_bi::value<boost::asio::io_service*></unsigned></boost::_bi::value<boost::asio::io_service*></boost::_bi::bi></boo></boost::_bi::bind_t<unsigned>
22 0x00005555556bb15c in decltype (__invoke((_S_declval<0ul>)())) std:🧵: _Invoker<std::tuple<boost::_bi::bind_t<unsigned boost::_mfi::mf0<unsigned="" boost::asio::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio: :io_service*=""> > > > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) ()</boost::_bi::value<boost::asio:></std::tuple<boost::_bi::bind_t<unsigned>
23 0x00005555556ba6ce in std:🧵:_Invoker<std::tuple<boost::_bi::bind_t<un boost::_mfi::mf0<unsigned="" boost::asio::io_service="" signed="" long,="">, boost::_b i::list1<boost::_bi::value<boost::asio::io_service*> > > > >::operator()() ()</boost::_bi::value<boost::asio::io_service*></std::tuple<boost::_bi::bind_t<un>
24 0x00005555556b8dbe in std:🧵:_State_impl<std::thread::_invoker<std::tu ple<boost::_bi::bind_t<unsigned="" boost::_mfi::mf0<unsigned="" boost::asi="" o::io_service="" long,="">, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > > > >::_M_run() ()</boost::_bi::value<boost::asio::io_service*></std::thread::_invoker<std::tu>
25 0x00007ffff6d146df in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
26 0x00007ffff74c26db in start_thread (arg=0x7fffeb776700) at pthread_create.c: 463
27 0x00007ffff676f88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S: 95