Thread 1 "purr-data" received signal SIGSEGV
Hello,
This is my 3rd post. My 1st one was about 'Copy/Paste - Duplicate - Move Weird behavior' with an introduction to my MDR-E+ project (MIDI) and my 2nd one was about the Cyclone external v.0.2 issues.
I'm facing to a major and blocking problem with one of my 15 GOP/Sub-patches in my MDR-E+ project, and only this one.
In short, the bad guy seems to be SIGSEGV. On POSIX-compliant platforms, SIGSEGV is the signal sent to a process when it makes an invalid memory reference, or segmentation fault. SIG is a common prefix for signal names. SEGV is an abbreviation of segmentation violation.
So, this particular sub-patch is handling the MIDI SYSEX BULK data, using [sysexin] -> [seq BULK] -> [midiout], but the issue is only with the SysEx-Out data, the SysEx-In is always okay. I tried to lower, by different means, the output throughput but the problem is still +/- the same. NB: I'm also using SysEx in other sub-patches with [seq] and I don't have any problem with the SysEx-Out traffic. It's true that the amount of data in these cases is much lower, less heavy.
So, when running my SysEx Bulk Data Sequencer sub-patch, the behavior of my MDR-E+ patch varies from complete freeze to closing suddenly itself, through slowing down to erratic states.
-I tried to analyze what was happening using Purr Data DEBUG v.2.9.0 mode under Linux Mint 19.2 Cinnamon 64-bit.-
Purr Data SIGSEGV excerpts with SysEx Bulk / Console output in Purr Data DEBUG mode
- I load my *.mra file (previously well recorded with the same sub-patch), click on Send (start [seq]) and I get a successful transmission of the the SysEx Bulk data (F0h...F7h / 240d...247d), I close my patch, and I WANT to RELAUNCH it. But, I'm getting:
<- pd open mdr3-emulator+033.pd /home/joe/Prd/patchs/MDR3-E; Thread 1 "purr-data" received signal SIGSEGV, Segmentation fault. __strcmp_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S:31 31 ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: Aucun fichier ou dossier de ce type. (gdb) watchdog: signaling pd... watchdog: signaling pd...
- I close everything related to Purr Data and I relaunch Prd Debug + Purr Data + my parent patch. I load my .mra file, click on Send (start [seq]) and the SysEx data are all well transmitted. After few tens of seconds, I do it a second time, again with the same success. I close my patch, and I WANT to QUIT Prd. But, I'm getting:
<- pd watchdog; <- x555555f18110 mouseup_fake; -> gui_post_error "",1,"x555555f18110: no such object " <- pd watchdog; <- pd verifyquit; -> gui_post "Quitting Pd... " -> app_quit Thread 1 "purr-data" received signal SIGSEGV, Segmentation fault. _dl_fini () at dl-fini.c:75 75 dl-fini.c: Aucun fichier ou dossier de ce type. (gdb) watchdog: signaling pd... watchdog: signaling pd...
And in Prd's console I have:
seq: reading /home/joe/Musique/MDR-3/hs6-test1.mra SXBulk-OUT: 240 SXBulk-OUT: 67 SXBulk-OUT: 112 SXBulk-OUT: 23 ... ... ... ... SXBulk-OUT: 112 SXBulk-OUT: 6 SXBulk-OUT: 73 SXBulk-OUT: 247 legacy tcl command at 201 of ../shared/hammer/file.c: hammereditor_close .55e3eaa0 0 legacy tcl command at 201 of ../shared/hammer/file.c: hammereditor_close .561537f0 0 ... ... legacy tcl command at 201 of ../shared/hammer/file.c: hammereditor_close .56254250 0 legacy tcl command at 201 of ../shared/hammer/file.c: hammereditor_close .56257170 0 error: x555555f18110: no such object
- I close everything related to Purr Data and I relaunch Prd Debug + Purr Data + my parent patch. I load my .mra file, click on Send (start [seq]) and the SysEx data are all well transmitted. I'm playing successfully a little bit with this SysEx sub-patch and SUDDENTLY my patch FREEZE. And, I'm getting:
-> gui_print "x555555e55b20","SXBulk-OUT",[112] -> gui_print "x555555e55b20","SXBulk-OUT",[6] -> gui_print "x555555e55b20","SXBulk-OUT",[73] -> gui_print "x555555e55b20","SXBulk-OUT",[247] <- pd watchdog; <- pd ping; -> gui_ping Thread 1 "purr-data" received signal SIGSEGV, Segmentation fault. __strcmp_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S:31 31 ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: Aucun fichier ou dossier de ce type. (gdb) watchdog: signaling pd... watchdog: signaling pd...
Etc.
Well, I'm not enough technical to understand all of that.
Question: How could we progress further for trying to fix this problem?
Thank you.