[Openchrome-users] [openChrome] #352: XvMC lockup

OpenChrome Trac trac
Tue Jan 26 14:11:57 PST 2010


#352: XvMC lockup
-------------------+--------------------------------------------------------
Reporter:  robho   |       Owner:  somebody
    Type:  defect  |      Status:  new     
Priority:  minor   |   Component:  xvmc-lib
 Version:  trunk   |    Keywords:          
Blocking:          |   Blockedby:          
-------------------+--------------------------------------------------------
 When playing the !MindCandy 3 preview DVD from
 http://www.mindcandydvd.com/3 using XvMC (mythtv application) the driver
 locks up after just a few seconds of playback.

 This is 100% reproducible on an SP13000 (CN400) board.

 I'm trying to find out what happens, but haven't yet figured it out.

 Using strace I see that xorg hangs in an ioctl call for DRM_IOCTL_LOCK.
 And by using logging to file inside libxvmc it seems like the driver grabs
 the lock (hwlLock()), but the driver hangs before the lock is released.

 Right now it looks like it locks up in different places. But several
 freezes happened in agpFlush when coming from XvMCFlushSurface. Here's the
 code from agpFlush:

 if (xl->performLocking)
     hwlLock(xl, 0);
 do {
     ret = drmCommandWrite(xl->fd, DRM_VIA_CMDBUFFER, &b, sizeof(b));
 } while (-EAGAIN == ret);
 if (xl->performLocking)
     hwlUnlock(xl, 0);

 It seems like it's the call to drmCommandWrite which blocks. I see the
 lock being taken successfully, but never released. And I don't go around
 in the loop either. So should I now turn my attention to the kernel
 module? Any hints on what to look for? Any known problems around here?

-- 
Ticket URL: <http://www.openchrome.org/trac/ticket/352>
openChrome <http://www.openchrome.org/>
The openChrome project



More information about the Openchrome-users mailing list