[op25-dev] Segfault in software_imbe_decoder::decode_spectral_amplitudes

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/op25-dev@lists.osmocom.org/.

argilo314 argilo at gmail.com
Sat Jun 9 02:29:43 UTC 2012


I was getting segmentation faults whenever starting to decode a P25 signal.  (A stack trace is at the bottom of my message.)  After a bit of investigating, I found that the value of the OldL variable in software_imbe_decoder was getting used before it was initialized.  Adding OldL = 0 to the constructor got rid of the segfaults, but I don't understand the code well enough to know whether it's the correct fix.

Regards,
Clayton

----------

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `python ./top_block.py'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f6e2bcb15a3 in software_imbe_decoder::decode_spectral_amplitudes (this=0x39fa940, 
    Start3=<optimized out>, Start8=<optimized out>) at software_imbe_decoder.cc:1006
1006	   for(ell = OldL + 1; ell <= L + 1; ell++) { log2Mu[ell][ Old] = log2Mu[OldL][ Old]; }
(gdb) i stack
#0  0x00007f6e2bcb15a3 in software_imbe_decoder::decode_spectral_amplitudes (this=0x39fa940, 
    Start3=<optimized out>, Start8=<optimized out>) at software_imbe_decoder.cc:1006
#1  0x00007f6e2bcb305d in software_imbe_decoder::decode_audio (this=0x39fa940, A=<optimized out>)
    at software_imbe_decoder.cc:913
#2  0x00007f6e2bcb3747 in software_imbe_decoder::decode (this=0x39fa940, cw=...)
    at software_imbe_decoder.cc:810
#3  0x00007f6e2bc9ea7b in voice_data_unit::do_decode_audio (this=<optimized out>, frame_body=..., 
    imbe=...) at voice_data_unit.cc:50
#4  0x00007f6e2bc98b01 in abstract_data_unit::decode_audio (this=0x7f6dc8000e10, imbe=...)
    at abstract_data_unit.cc:61
#5  0x00007f6e2bc9ec0a in voice_du_handler::handle (this=0x39fdee0, du=...)
    at voice_du_handler.cc:45
#6  0x00007f6e2bcad4f8 in op25_decoder_bf::receive_symbol (this=0x39fa4f0, d=2 '\002')
    at op25_decoder_bf.cc:214
#7  0x00007f6e2bcad980 in op25_decoder_bf::general_work (this=0x39fa4f0, nof_output_items=16, 
    nof_input_items=..., input_items=..., output_items=...) at op25_decoder_bf.cc:86
#8  0x00007f6e31d09ae3 in gr_block_executor::run_one_iteration() ()
   from /usr/local/lib/libgnuradio-core-3.6.1git.so.0.0.0
#9  0x00007f6e31d28d5d in gr_tpb_thread_body::gr_tpb_thread_body(boost::shared_ptr<gr_block>, int)
    () from /usr/local/lib/libgnuradio-core-3.6.1git.so.0.0.0
#10 0x00007f6e31d23996 in boost::detail::function::void_function_obj_invoker0<gruel::thread_body_wrapper<tpb_container>, void>::invoke(boost::detail::function::function_buffer&) ()
   from /usr/local/lib/libgnuradio-core-3.6.1git.so.0.0.0
#11 0x00007f6e31548a9e in boost::detail::thread_data<boost::function0<void> >::run() ()
   from /usr/local/lib/libgruel-3.6.1git.so.0.0.0
#12 0x00007f6e30eebce9 in thread_proxy () from /usr/lib/libboost_thread.so.1.46.1
#13 0x00007f6e340e2e9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#14 0x00007f6e32ed44bd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#15 0x0000000000000000 in ?? ()

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/op25-dev/attachments/20120609/3aced3af/attachment.htm>


More information about the op25-dev mailing list