[prev in list] [next in list] [prev in thread] [next in thread]
List: mythtv-commits
Subject: Re: [mythtv-commits] Ticket #12045: Live TV after a short while always make the frontend hang
From: ""MythTV"" <noreply () mythtv ! org>
Date: 2014-02-27 2:36:58
Message-ID: 057.bf1071693c67735bae3a94330bd7f044 () mythtv ! org
[Download RAW message or body]
#12045: Live TV after a short while always make the frontend hang
-------------------------+-------------------------------------------------
Reporter: jyavenard | Owner: Jean-Yves Avenard <jyavenard@…>
Type: Bug Report | Status: closed
- General | Milestone: unknown
Priority: blocker | Version: 0.27-fixes
Component: MythTV - | Resolution: fixed
Recording | Ticket locked: 0
Severity: medium |
Keywords: |
-------------------------+-------------------------------------------------
Comment (by Jean-Yves Avenard <jyavenard@…>):
In [changeset:"a7458907252a03552e3be4bf8085f7107a521159/mythtv"]:
{{{
#!CommitTicketReference repository="mythtv"
revision="a7458907252a03552e3be4bf8085f7107a521159"
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
(cherry picked from commit 20f7cd2858e79385ceec07b2c19c7e4f84714e18)
}}}
--
Ticket URL: <https://code.mythtv.org/trac/ticket/12045#comment:7>
MythTV <http://www.mythtv.org>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits@mythtv.org
http://www.mythtv.org/mailman/listinfo/mythtv-commits
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic