[mythtv] FW: Ticket #4758: Segfault in videoout_null
Andrei Tanas
andrei at tanas.ca
Mon Feb 25 16:09:21 UTC 2008
Is nobody interested in this? There's an apparent race condition in initialization of videoout_null during PiP startup. I haven't seen it on my single-core x64 Linux frontend (I don't use PiP much on my "production" box due to its limited resources), but I hit it almost every time on dual-core Windows frontend.
-----Original Message-----
From: MythTV [mailto:mythtv at cvs.mythtv.org]
Sent: Saturday, February 23, 2008 4:48 PM
To: mythtv-commits at mythtv.org
Subject: Ticket #4758: Segfault in videoout_null
#4758: Segfault in videoout_null
-----------------------------+----------------------------------------------
Reporter: andrei at tanas.ca | Owner: ijr
Type: defect | Status: new
Priority: minor | Milestone: 0.21
Component: mythtv | Version: 0.21-fixes
Severity: medium | Mlocked: 0
-----------------------------+----------------------------------------------
I get this segfault repeatedly watching ATSC or NTSC live tv, and enabling
PiP.
Sorry for partial backtrace (attached), this is all I can get on Windows.
Closer examination shows this:
(gdb) return
Make selected stack frame return now? (y or n) y
#0 VideoOutputNull::UpdatePauseFrame (this=0x342e8ab0)
at videoout_null.cpp:177
177 }
(gdb) info locals
pauseb = (VideoFrame *) 0x2f41cfc0
pauseu = (VideoFrame *) 0x0
(gdb) print pauseb
$1 = (VideoFrame *) 0x2f41cfc0
(gdb) print pauseb->buf
$2 = (unsigned char *) 0x0
which means that
memcpy(pauseFrame.buf, pauseb->buf, pauseb->size);
was called with null pointer.
Output of -v playback is below (several times). Apparently
UpdatePauseFrame is called while vbuffers.Init is still running.
2008-02-23 16:32:39.466 Display Rect left: 0, top: 0, width: 0, height:
0, aspect: 1.33333
2008-02-23 16:32:39.472 Video Rect left: 0, top: 0, width: 1280,
height: 720, aspect: 1.77778
2008-02-23 16:32:39.478 Created data @0x39ec0030->0x3a011832
2008-02-23 16:32:39.487 Created data @0x3a020030->0x3a171832
2008-02-23 16:32:39.492 Created data @0x3a180030->0x3a2d1832
2008-02-23 16:32:39.501 Created data @0x3a2e0030->0x3a431832
2008-02-23 16:32:39.505 Created data @0x3a440030->0x3a591832
2008-02-23 16:32:39.509 Created data @0x3a5a0030->0x3a6f1832
2008-02-23 16:32:39.517 Created data @0x3a700030->0x3a851832
2008-02-23 16:32:39.522 Created data @0x3a860030->0x3a9b1832
Program received signal SIGSEGV, Segmentation fault.
.......
2008-02-23 16:26:31.601 Created data @0x3d7b0030->0x3d901832
2008-02-23 16:26:31.606 Created data @0x3d910030->0x3da61832
2008-02-23 16:26:31.611 Created data @0x3da70030->0x3dbc1832
2008-02-23 16:26:31.617 Created data @0x3dbd0030->0x3dd21832
2008-02-23 16:26:31.624 Created data @0x3dd30030->0x3de81832
2008-02-23 16:26:31.629 Created data @0x3de90030->0
Program received signal SIGSEGV, Segmentation fault.
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/4758>
MythTV <http://svn.mythtv.org/trac>
MythTV
More information about the mythtv-dev
mailing list