|
From: | Ralf Gorholt |
Subject: | Re: Adaptation of Federico La Roccas ISDB-T blocks for DVB-T |
Date: | Fri, 10 Dec 2021 13:51:40 +0100 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.4.0 |
Hi Vasil, thank you for your message. As I have no experience with GNU Radio and command line debugging, your hints may be really helpful. I have attached the gdb and valgrind output to this email. In the gdb output thread 27 that receives the SIGSEGV is the DVB-T "Symbol Inner Interleaver" that comes with GNU Radio, not one of my blocks. As far as valgrind is concerned, it tells me for my block OFDM Synchronization: "Conditional jump or move depends on uninitialised value(s)". I will see if I can find out which variable is uninitialized and how I can get rid of this problem. Kind regards, Ralf Am 10.12.2021 um 12:35 schrieb Vasil Velichkov:
Hi Ralf, On 10/12/2021 11.52, Ralf Gorholt wrote:Unfortunately, when I deactivate the original flowgraph, it does no longer work and I get a -11 return code.The "-11" value means that you got a segmentation fault and the process was kill with signal 11 (SIGSEGV) https://docs.python.org/3.8/library/subprocess.html#subprocess.CalledProcessError.returncode https://www.man7.org/linux/man-pages/man7/signal.7.html In my opinion the easiest way to debug segfaults is to run the flowgraph under gdb and valgrind. Open your flowgraph in the gnuradio-companion and then Generate (F5) but do not Execute (F6). The open a terminal, go where the flowgraph python (.py) file was generated and execute gdb -ex run --args /usr/bin/python3 test.py and then when it stops execute `bt` command in the gdb's shell and provide the full output. To run it under valgrind execute valgrind --tool=memcheck /usr/bin/python3 test.py Adjust the path to your python interpreter and its version if needed. Regards, Vasil
gdb_output.txt
Description: Text document
valgrind_output.txt
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |