[mythtv-commits] mythtv branch master updated by jyavenard. v0.28-pre-861-g20f7cd2

Git Repo Owner noreply at mythtv.org
Thu Feb 20 05:50:21 UTC 2014


The branch, master has been updated on the
mythtv repository by gitolite user jyavenard.
       via  20f7cd2858e79385ceec07b2c19c7e4f84714e18 (commit)
       via  267651dd5a4d5e552a9100435b67b4c877e8d430 (commit)
      from  50478cada695d959565df764052e9f8612f7b5e4 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 20f7cd2858e79385ceec07b2c19c7e4f84714e18
Author:    Jean-Yves Avenard <jyavenard at mythtv.org> at Thu, 20 Feb 2014 16:48:44 +1100
Committer: Jean-Yves Avenard <jyavenard at mythtv.org> at Thu, 20 Feb 2014 16:48:44 +1100
URL:       http://code.mythtv.org/cgit/mythtv/commit/?id=20f7cd2858e79385ceec07b2c19c7e4f84714e18

Fix fileringbuffer locking up on read()
>From time to time, most often seen during LiveTV, FileRingBuffer::safe_read() would lock and not return for a long time (on my system, it would block in excess of 20s).
Upon investigation, the issue occurs while reading a file currently being written to, if a call to read() encountered EOF, returned early and a following call to read() was made, before another write. Under those conditions, read() wouldn't return for a long time, causing the backend to abort the read and dropping the frontend connection.

So instead we now check the size of the current file via a call to POSIX fstat and never try to read beyond the EOF position.
If the file being read isn't a regular, or fstat returned an error, the old behaviour is used: read until we get as much data as we asked.

Surprisingly, this has fixed most of the issues I've been having for years with liveTV:
- Stuttering or temporary free when close to the live
- Freeze at program transition.

Add debugging information while in file mode

Fixes #12045



commit 267651dd5a4d5e552a9100435b67b4c877e8d430
Author:    Jean-Yves Avenard <jyavenard at mythtv.org> at Thu, 20 Feb 2014 11:29:21 +1100
Committer: Jean-Yves Avenard <jyavenard at mythtv.org> at Thu, 20 Feb 2014 11:29:21 +1100
URL:       http://code.mythtv.org/cgit/mythtv/commit/?id=267651dd5a4d5e552a9100435b67b4c877e8d430

Revert "Fix fileringbuffer locking up on read()"
This reverts commit 2eb5091b6b2058bf94cb11ef36b5972ef9a18fee.



-----------------------------------------------------------------------

Summary of changes:
 mythtv/libs/libmythtv/fileringbuffer.cpp |   16 +++++++++-------
 1 files changed, 9 insertions(+), 7 deletions(-)

-- 



More information about the mythtv-commits mailing list