[mythtv-commits] Re: Ticket #712: Implement device read ringbuffer for DVBRecorder

MythTV mythtv at cvs.mythtv.org
Fri Dec 9 13:14:07 EST 2005


#712: Implement device read ringbuffer for DVBRecorder
---------------------+------------------------------------------------------
 Reporter:  danielk  |        Owner:  danielk
     Type:  defect   |       Status:  new    
 Priority:  minor    |    Milestone:  0.20   
Component:  mythtv   |      Version:  head   
 Severity:  low      |   Resolution:         
---------------------+------------------------------------------------------
Changes (by danielk):

  * milestone:  0.19 => 0.20
  * priority:  blocker => minor
  * severity:  high => low

Comment:

 References #712. References #551.

 This adds the DeviceReadBuffer to the DVBRecorder. This is taken from the
 same functionality in HDTVRecorder written by John Poet, except it has
 been extended to allow for non-blocking file descriptors.

 This doesn't close the ticket because I'd like to replace the same
 functionality in HDTVRecorder with the DeviceReadBuffer with a non-
 blocking file descriptor. But this does make the rest of this is non-
 critical for 0.19. I've tested this by running 'dd if=/dev/zero
 of=/video/zero.tmp' while recording, there were no lost packets...

 There are two important defines. If you comment out "#define USE_DRB" in
 dvbrecorder.cpp, it will fallback to relying on the buffering in the
 driver. If you change "#define REPORT_RING_STATS 0" in
 DeviceReadBuffer.cpp to "#define REPORT_RING_STATS 1", then it will print
 out buffer usage information every 20 seconds.

 WRT #551. I did my testing for this patch using the XFS file system.
 Brandon reported to me earlier this week that switching from ReiserFS3 to
 XFS made his problem much less severe even without the DRB patch (He had a
 problem recording multiple HDTV streams, triggered by a reschedule). If
 anyone reports disk write performance problems in the future we should
 insist that they switch to XFS or JFS before spending too much time on the
 problem. With ReiserFS3 the problem continues long after the reschedule,
 but with XFS the problem only lasts a few seconds and then goes away. Of
 course with this commit, neither file system should cause any problems to
 the DVBRecorder, but the bttv and ivtv recorders could theoretically
 experience similar problems (though in practice they have much less data
 to write).

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/712>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list