I'm getting a segfault from trunk-recorder:
~snip~
[2019-11-02 18:13:03.580708] (info) Driver: osmosdr
[2019-11-02 18:13:03.580738] (info) Center: 8.555000e+08
[2019-11-02 18:13:03.580805] (info) Rate: 10000000
[2019-11-02 18:13:03.580849] (info) Error: 500
[2019-11-02 18:13:03.580885] (info) PPM Error: 0
[2019-11-02 18:13:03.580914] (info) Gain: 20
[2019-11-02 18:13:03.580950] (info) IF Gain: 0
[2019-11-02 18:13:03.580979] (info) BB Gain: 0
[2019-11-02 18:13:03.581009] (info) LNA Gain: 0
[2019-11-02 18:13:03.581044] (info) PGA Gain: 0
[2019-11-02 18:13:03.581082] (info) TIA Gain: 0
[2019-11-02 18:13:03.581115] (info) MIX Gain: 0
[2019-11-02 18:13:03.581147] (info) VGA1 Gain: 0
[2019-11-02 18:13:03.581180] (info) VGA2 Gain: 0
[2019-11-02 18:13:03.581210] (info) Squelch: 0
[2019-11-02 18:13:03.581257] (info) Idle Silence: false
[2019-11-02 18:13:03.581287] (info) Digital Recorders: 3
[2019-11-02 18:13:03.581322] (info) Debug Recorders: 0
[2019-11-02 18:13:03.581360] (info) SigMF Recorders: 0
[2019-11-02 18:13:03.581391] (info) Analog Recorders: 0
[2019-11-02 18:13:03.581426] (info) Modulation: qpsk
[2019-11-02 18:13:03.581468] (info) Source Device: soapy=0,driver=sdrplay
gr-osmosdr v0.1.4-127-g4d83c606 (0.1.5git) gnuradio 3.7.13.4
built-in source types: file fcd rtl rtl_tcp uhd hackrf rfspace soapy redpitaya
[INFO] Using format CF32.
[2019-11-02 18:13:03.989391] (info) SOURCE TYPE OSMOSDR (osmosdr)
[2019-11-02 18:13:03.989568] (info) Setting sample rate to: 10000000
[2019-11-02 18:13:03.989851] (info) Actual sample rate: 10000000
[2019-11-02 18:13:03.990037] (info) Tunning to 8.555005e+08
[2019-11-02 18:13:03.990996] (info) Gain Stage: IFGR supported values: 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
[2019-11-02 18:13:03.991232] (info) Gain Stage: RFGR supported values: 0 1 2 3 4 5 6 7 8 9
[2019-11-02 18:13:03.991290] (info) Max Freqency: 8.605000e+08
[2019-11-02 18:13:03.991365] (info) Min Freqency: 8.505000e+08
[2019-11-02 18:13:03.991460] (info) LNA Gain set to: 0
[2019-11-02 18:13:03.991527] (info) TIA Gain set to: 0
[2019-11-02 18:13:03.991588] (info) PGA Gain set to: 0
[2019-11-02 18:13:03.991659] (info) Gain set to: 20
[2019-11-02 18:13:03.991747] (info) Setting antenna to [RX]
~snip~
[2019-11-02 19:03:39.872087] (info) - Starting P25 Recorder Num [0] TG: 1059 Freq: 8.523000e+08 TDMA: false Slot: 0
[2019-11-02 19:03:39.873122] (info) [comirs] TG: 1059 Freq: 8.523000e+08 Starting Recorder on Src: soapy=0,driver=sdrplay
[2019-11-02 19:03:44.910787] (info) [comirs] TG: 1059 Freq: 8.523000e+08 Update Retuning - New Freq: 8.511250e+08 Elapsed: 5s Since update: 2s
[2019-11-02 19:03:49.887167] (info) - Starting P25 Recorder Num [1] TG: 1109 Freq: 8.516250e+08 TDMA: false Slot: 0
[2019-11-02 19:03:49.887714] (info) [comirs] TG: 1109 Freq: 8.516250e+08 Starting Recorder on Src: soapy=0,driver=sdrplay
[2019-11-02 19:03:52.083655] (info) [comirs] TG: 1059 Freq: 8.511250e+08 Update Retuning - New Freq: 8.563625e+08 Elapsed: 13s Since update: 2s
[2019-11-02 19:03:53.729387] (info) [comirs] TG: 1109 Freq: 8.516250e+08 Update Retuning - New Freq: 8.537875e+08 Elapsed: 4s Since update: 1s
[2019-11-02 19:03:57.224294] (info) - Starting P25 Recorder Num [2] TG: 1227 Freq: 8.526875e+08 TDMA: false Slot: 0
[2019-11-02 19:03:57.224887] (info) [comirs] TG: 1227 Freq: 8.526875e+08 Starting Recorder on Src: soapy=0,driver=sdrplay
Segmentation fault (core dumped)
I poked around the backtrace and it appears to point to SoapySDRPlay:
(gdb) bt
#0 __memmove_sse2_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:262
#1 0x00007f38ba5cc366 in SoapySDRPlay::readStream(SoapySDR::Stream*, void* const*, unsigned long, int&, long long&, long) ()
from /usr/local/lib/SoapySDR/modules0.8/libsdrPlaySupport.so
#2 0x00007f38be5d9c98 in soapy_source_c::work(int, std::vector<void const*, std::allocator<void const*> >&, std::vector<void*, std::allocator<void*> >&) ()
from /usr/local/lib/libgnuradio-osmosdr.so.0.1.5git
#3 0x00007f38bfbca6f7 in gr::sync_block::general_work(int, std::vector<int, std::allocator<int> >&, std::vector<void const*, std::allocator<void const*> >&, std::vector<void*, std::allocator<void*> >&) () from /lib/x86_64-linux-gnu/libgnuradio-runtime.so.3.7.13
#4 0x00007f38bfb900a0 in gr::block_executor::run_one_iteration() () from /lib/x86_64-linux-gnu/libgnuradio-runtime.so.3.7.13
#5 0x00007f38bfbd3b29 in gr::tpb_thread_body::tpb_thread_body(boost::shared_ptr<gr::block>, boost::shared_ptr<boost::barrier>, int) ()
from /lib/x86_64-linux-gnu/libgnuradio-runtime.so.3.7.13
#6 0x00007f38bfbc5ec4 in ?? () from /lib/x86_64-linux-gnu/libgnuradio-runtime.so.3.7.13
#7 0x00007f38bfb7b342 in ?? () from /lib/x86_64-linux-gnu/libgnuradio-runtime.so.3.7.13
#8 0x00007f38be549f65 in ?? () from /lib/x86_64-linux-gnu/libboost_thread.so.1.67.0
#9 0x00007f38be51bfa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
#10 0x00007f38bdcca4cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
I have the 600 megabyte core dump file if anyone would like to examine it in more detail. (Or let me know what else you would like to see... happy to run any gdb commands to poke at the core dump on request.)
For what it's worth, I've reproduced this issue five times so far (and I have core dumps for four of those times... they all look the same to me). I have only been able to reproduce the issue when the radio system is busy and trunk-recorder is using 3 or more recorder threads. I've run for quite a long time with 2 recorder threads with no segfaults; when I switch back to 3 recorder threads, a segfault comes along within an hour or so (whenever the radio system gets busy).
Version information:
- SoapySDR 189bc69217846581e34456f391683cc07c43ae0d
- SoapySDRPlay 14ec39e
- gr-osmosdr 4d83c6067f059b0c5015c3f59f8117bbd361e877
- trunk-recorder 668fe62224ef7fb772d4263ed6f8c773683c0626
- All other software is the latest from Debian 10.1 repositories
I am not sure whether to file this bug report under SoapySDRPlay, gr-osmosdr, or trunk-recorder... based on the backtrace, I decided to start with SoapySDRPlay.
Please let me know if there's any additional testing I can do, or any additional information I can provide.
I'm getting a segfault from trunk-recorder:
I poked around the backtrace and it appears to point to SoapySDRPlay:
I have the 600 megabyte core dump file if anyone would like to examine it in more detail. (Or let me know what else you would like to see... happy to run any gdb commands to poke at the core dump on request.)
For what it's worth, I've reproduced this issue five times so far (and I have core dumps for four of those times... they all look the same to me). I have only been able to reproduce the issue when the radio system is busy and trunk-recorder is using 3 or more recorder threads. I've run for quite a long time with 2 recorder threads with no segfaults; when I switch back to 3 recorder threads, a segfault comes along within an hour or so (whenever the radio system gets busy).
Version information:
I am not sure whether to file this bug report under SoapySDRPlay, gr-osmosdr, or trunk-recorder... based on the backtrace, I decided to start with SoapySDRPlay.
Please let me know if there's any additional testing I can do, or any additional information I can provide.