Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

segfault with simultaneous recordings #21

Open
SoftwareSchlosser opened this issue Jan 27, 2021 · 1 comment
Open

segfault with simultaneous recordings #21

SoftwareSchlosser opened this issue Jan 27, 2021 · 1 comment

Comments

@SoftwareSchlosser
Copy link

SoftwareSchlosser commented Jan 27, 2021

Hi, dvbloopback / descrambler (ffdecsawrapper) works fine as long as only one of the dvbloopback devices is being used. If I start another recording / live-tv, it has green artifacts and eventually ffdecsawrapper segfaults soon.

Using the debug version and the resulting core dump, gdb shows this backtrace:

/usr/bin/ffdecsawrapper --join 0:3 --join 1:4 --join 2:5 --cam-budget --sid-nocache --buffer 16M --debug 0 --cam-dir /etc/ffdecsawrapper

#0  0x000055b43bbff3ab in stream_cypher_group_init(stream_regs*, long long __vector(2) (*) [4], long long __vector(2) (*) [4], unsigned char*) ()
[Current thread is 1 (Thread 0x7fd9e820d700 (LWP 2663019))]
(gdb) bt
#0  0x000055b43bbff3ab in stream_cypher_group_init(stream_regs*, long long __vector(2) (*) [4], long long __vector(2) (*) [4], unsigned char*) ()
#1  0x000055b43bc02c57 in decrypt_packets(void*, unsigned char**) ()
#2  0x000055b43bbe2596 in process_ts (csa=0x55b43bf2fec0, 
    buffer=0x7fd9e9aa1d58 "G\001\377\030\003\021\200\344\302\030\003B-\266{\375\023\255EQܹ\325\065Ӟ;\250\003\034\232\375\367\027\064\033\275VL\034\310(\314\310\062\350FU\310jz\016\036\030v\266\232\251\005p\363\023\bw\022\006\f\371\374\366\227\262\231\360\212\210\022\203IM%\217졞?\273\307\344+\224\023EI8\224j4J\036e\303B\326f\372F\353渏\310Ɋ\232\372\027dV\237\271`L\362\210U\246b\202\064\262\332\377p\357\371Q\213\344\313V\357\001\064\020\365\273\370=\315gb\303\070G2s\243\033\214⒀\376\220\223*\016h\v|\026i\254\341\364@\244\204òׯ5h\356\234\066G\001\377\031O\243\064\321\036,\362T"..., end=34968, force=0) at dvblb_plugins/plugin_ffdecsa.c:327
#3  0x000055b43bbe2fec in process_ffd (msg=0x55b43be9f770, priority=1) at dvblb_plugins/plugin_ffdecsa.c:512
#4  0x000055b43bbd8258 in msg_loop (arg=0x1) at src/msg_passing.c:118
#5  0x00007fd9ed1fb609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007fd9ecdd5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95```
@SoftwareSchlosser
Copy link
Author

I found out one of my two DVB-S2 adapters seemed to cause that trouble. There were also artifacts even when using it without dvbloopback. I removed it and everything worked fine for a few weeks.
After adding another DVB-S2 dual receiver, ffdecsawrapper now crashes very often, even with only one recording / live tv:

/usr/bin/ffdecsawrapper --join 0:4 --join 1:5 --join 2:6 --join 3:7 --cam-budget --sid-nocache --buffer 16M --debug 0 --cam-dir /etc/ffdecsawrapper:

Thread 33 "ffdecsawrapper" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd8a16700 (LWP 1962352)]
#0  0x000055555560c3ab in stream_cypher_group_init(stream_regs*, long long __vector(2) (*) [4], long long __vector(2) (*) [4], unsigned char*) ()
#1  0x000055555560fc57 in decrypt_packets(void*, unsigned char**) ()
#2  0x00005555555ef596 in process_ts (csa=0x5555556aa4b0, 
    buffer=0x7ffff70f0b50 "G\373\316\017\065\343\301\230.\311\351*\213'\205F4\037\212\240^\323\t\363\027\"\211\005 l|\303۠x!W|dCIbT\030\241L\037q\277ݺm\212\247\064\204\212\233\027\346\373\312c!\312\366\275\273N\214\224\247\022\337\331\337Z?\200\366\375ڋ\224q\347G\275\227\241\022 \333\311\371\234\362\235\362\207\254p\031\026\351\315\006\306\070\065\367\357\350ōd\360\064\332\357AL\206\246I", 
    end=27072, force=0) at dvblb_plugins/plugin_ffdecsa.c:327
#3  0x00005555555effec in process_ffd (msg=0x55555567e740, priority=1) at dvblb_plugins/plugin_ffdecsa.c:512
#4  0x00005555555e5258 in msg_loop (arg=0x1) at src/msg_passing.c:118
#5  0x00007ffff7c6e609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007ffff7848293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

The new adapter is fine and it works without problems without dvbloopback / ffdecsawrapper. So there must be something ffdecsawrapper doesn't like about my new hardware / configuration.
Interesting that it's the same code that's crashing. Do you have any ideas?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant