Opened 13 years ago
Closed 12 years ago
Last modified 12 years ago
#10897 closed Bug Report - Crash (fixed)
Firewire based tuning segfaults consistently
Reported by: | Owned by: | danielk | |
---|---|---|---|
Priority: | minor | Milestone: | 0.26 |
Component: | MythTV - General | Version: | 0.25.1 |
Severity: | low | Keywords: | |
Cc: | Ticket locked: | no |
Description
After updating to mythtv .25, the mythtv backend has failed consistently watching TV via a firewire cable box. The steps to reproduce it are, when connected the DCH-3200, watch live TV and change channels (this works successfully) then change channels again - this second time always results in the backend crashing with the follow console output:
mythbackend: mpeg2.c:113: mpeg2_recv_handler: Assertion `mpeg != ((void *)0)' failed.
It is important to note that this error references code in the libiec61883 library which mythtv relies on - it is not part of libmpeg2 as was incorrectly assumed in ticket 10051. My expertise is not enough to know the code path that leads to this, but given that it consistently works successfully with the first channel change but not the second and never happened this in .24, it is likely a direct result of mythtv changes since the last major release.
Attachments (1)
Change History (11)
comment:1 Changed 13 years ago by
Status: | new → infoneeded_new |
---|
comment:2 Changed 13 years ago by
Apologies, my use of "segfault" in the title was incorrect (so there wasn't a kernel dump). It was an assertion failure in the linked iec61883 library - the specific line is "assert (mpeg != NULL);". There was no backtrace printed to the console or followup log data at any log level, simply after the second channel change:
mythbackend: mpeg2.c:113: mpeg2_recv_handler: Assertion `mpeg != ((void *)0)' failed. Aborted
If there is a way for me to produce helpful backtrace point me in the right direction. The version output is:
Please attach all output as a file in bug reports. MythTV Version : v0.25.1-58-g1d41f74 MythTV Branch : fixes/0.25 Network Protocol : 72 Library API : 0.25.20120506-1 QT Version : 4.7.4 Options compiled in: linux profile use_hidesyms using_alsa using_oss using_backend using_bindings_perl using_bindings_python using_bindings_php using_firewire using_frontend using_hdhomerun using_ceton using_hdpvr using_iptv using_ivtv using_libcrypto using_libxml2 using_libudf using_mheg using_opengl_video using_qtwebkit using_qtscript using_qtdbus using_v4l2 using_x11 using_xrandr using_xv using_bindings_perl using_bindings_python using_bindings_php using_mythtranscode using_opengl using_vdpau using_ffmpeg_threads using_live using_mheg using_libass using_libxml2 using_libudf
comment:3 Changed 13 years ago by
Priority: | major → minor |
---|---|
Severity: | high → low |
The [TicketHowTo] has links to various tutorials including on how to grab a backtrace.
comment:4 Changed 13 years ago by
I'm experiencing this exact same issue. I filed a bug against Mythbuntu (https://bugs.launchpad.net/mythbuntu/+bug/1002806) ~2 months ago, but haven't gotten any action on it yet. It may be more appropriate to address here? I posted a backtrace and relevant logs on that bug. Please let me know if I can provide any additional info.
Changed 12 years ago by
Attachment: | firewire_channel_change_fix.patch added |
---|
comment:5 Changed 12 years ago by
I tracked this bug down to an endless loop of adding listeners after a firewire channel change. This was caused by the paused flag never getting set to false in the FirewireRecorder:PauseAndWait() function. I'm a bit new to community development - this is the first patch I've submitted. Please let me know if this isn't formatted correctly or if there is something else I need to do to get this patch included in mythtv.
comment:6 Changed 12 years ago by
Owner: | set to danielk |
---|---|
Status: | infoneeded_new → assigned |
comment:7 Changed 12 years ago by
Just an update: at least one other user tested the patch I posted above. It worked for him as well (https://bugs.launchpad.net/mythbuntu/+bug/1002806/comments/8).
Please let me if there is anything else I can do to help get this patch incorporated. Thanks!
comment:8 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:9 Changed 12 years ago by
Milestone: | unknown → 0.26 |
---|
Need backtrace and full version output.