﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc	mlocked
11323	Deadlock in mythfrontend if LiveTV recording is zero length	Chris Elston <cdelston@…>		"Issue seen on 0.26.0 and also confirmed on 0.26-fixes at git rev 28846f87db59efa28ce20c9309089a49520227bb

I suspect I have an issue on my backend which is causing zero length LiveTV buffers, in turn this causes mythfrontend to deadlock on returning to the EPG. I'm ignoring the backend issue for now, and this ticket concerns the frontend deadlock only.

Looking at the end of the attached log, the endless ""(SetDecoder) Player(1): Waited 10ms for decoder lock"" messages from Thread 1 suggest that it's spinning trying to acquire decoder_change_lock in MythPlayer::SetDecoder 

From the attached backtrace I think that decoder_change_lock is being held by Thread 5 which has passed through MythPlayer::DecoderGetFrame. 

I believe that thread 1 is holding osdLock, vidExitLock, and videofiltersLock (since it's executing the MythPlayer::~MythPlayer destructor) but Thread 5 is waiting for these same locks to complete the ReinitVideo call. 

Unfortunately I don't really grok this enough to produce a patch."	Bug Report - Hang/Deadlock	closed	minor	unknown	MythTV - General	0.26-fixes	medium	Fixed			0
