Opened 10 years ago

Closed 10 years ago

#7837 closed defect (fixed)

SIGABRT on Backend when attempting LiveTV playback

Reported by: doneill@… Owned by: Isaac Richards
Priority: minor Milestone: 0.23
Component: MythTV - General Version: head
Severity: medium Keywords: mythbackend, qlist, assertion
Cc: Stuart Auchterlonie Ticket locked: no

Description

MythFrontend svn 23050M (Dec 31st snapshot) MythBackend? svn 23050M (same codebase)

My client is a MediaMVP running the Dec 31, 2009 svn snapshot build.

It is using protocol 8, and my MythBackend? is an SVN build from Dec 31, 2009 also, although a previous version (around a month old) had the same result (protocols 56 and 54 respectively).

I should point out that using MythFrontend of the same release version as the MythBackend? works.

My capture hardware is (in this case) a Kworld 120, Hauppauge HVR-1600, and Hauppauge HVR-950Q.

When I select "Live TV" from the menu, mythbackend mysteriously exits when running stand-alone or in valgrind. In GDB I am informed that the process received a SIGABRT from HandleRecorderQuery?, and in my backtrace the "pbs" pointer has a value of 0x0.

(From following the source (mainserver.cpp), this shouldn't be possible, because of a check done around line 335 of that same file. Still, I added another check near the top of the HandleRecorderQuery? function to return; if pbs is 0x0, which it doesn't, and I don't know why.)

I can cause this crash reliably simply by selecting LiveTV on my MediaMVP. I've cleaned out my old installation, rebuilt/reinstalled MythTV from the latest SVN, and the issue persists.

Interestingly enough, I'm not receiving a segfault from addressing invalid memory (pbs->getSocket(), where pbs = 0x0) but rather a cryptic SIGABRT from a qlist error.

Regardless, I'm pretty convinced the SIGABRT comes from the qlist index assertion failing. I have no idea what/how to fix this, though.

Relevant log files attached.

Attachments (3)

mythtv-gdb-log.txt (2.5 KB) - added by doneill@… 10 years ago.
GDB output describing qlist assertion failure in livetv playback on mythbackend
mythbackend-valgrind-output.txt (1.8 KB) - added by doneill@… 10 years ago.
Mythbackend/valgrind output describing qlist assertion failure in livetv playback on mythbackend
mythbackend-livetv-crash-socket.txt (2.6 KB) - added by doneill@… 10 years ago.
mythbackend crash livetv verbose socket output

Download all attachments as: .zip

Change History (8)

Changed 10 years ago by doneill@…

Attachment: mythtv-gdb-log.txt added

GDB output describing qlist assertion failure in livetv playback on mythbackend

Changed 10 years ago by doneill@…

Mythbackend/valgrind output describing qlist assertion failure in livetv playback on mythbackend

comment:1 Changed 10 years ago by daniel o'neill <doneill@…>

poking around further, i think this may be a duplicate of #7708

if it looks like it is, please cancel this request.

comment:2 Changed 10 years ago by sphery

Resolution: duplicate
Status: newclosed

dup of #7708

comment:3 Changed 10 years ago by Stuart Auchterlonie

Cc: Stuart Auchterlonie added
Milestone: unknown0.23
Resolution: duplicate
Status: closednew

Since you seem to be able to reproduce it, can you run your backend with "--verbose socket" to hopefully shed some light on this one.

Stuart

comment:4 Changed 10 years ago by anonymous

sure, although it is a bit difficult to localize where the mediamvp connects, i hope this trace helps. if you'd prefer i can make future references to this bug on #7708

Changed 10 years ago by doneill@…

mythbackend crash livetv verbose socket output

comment:5 Changed 10 years ago by robertm

Resolution: fixed
Status: newclosed

Probable same resolution at #7708. Please ping on-list if that's not so.

Note: See TracTickets for help on using tickets.