diff --git a/mythtv/libs/libmythbase/threadedfilewriter.cpp b/mythtv/libs/libmythbase/threadedfilewriter.cpp
old mode 100644
new mode 100755
index a3ec813..14ba241
--- a/mythtv/libs/libmythbase/threadedfilewriter.cpp
+++ b/mythtv/libs/libmythbase/threadedfilewriter.cpp
@@ -299,8 +299,8 @@ uint ThreadedFileWriter::Write(const void *data, uint count)
         left    -= towrite;
     }
 
-    LOG(VB_FILE, LOG_DEBUG, LOC + QString("Write(*, %1) total %2 cnt %3")
-            .arg(count,4).arg(totalBufferUse).arg(writeBuffers.size()));
+//    LOG(VB_FILE, LOG_DEBUG, LOC + QString("Write(*, %1) total %2 cnt %3")
+//            .arg(count,4).arg(totalBufferUse).arg(writeBuffers.size()));
 
     return count;
 }
diff --git a/mythtv/libs/libmythtv/ringbuffer.cpp b/mythtv/libs/libmythtv/ringbuffer.cpp
old mode 100644
new mode 100755
index 5628863..fca398b
--- a/mythtv/libs/libmythtv/ringbuffer.cpp
+++ b/mythtv/libs/libmythtv/ringbuffer.cpp
@@ -1394,6 +1394,10 @@ int RingBuffer::ReadPriv(void *buf, int count, bool peek)
     LOG(VB_FILE, LOG_DEBUG, LOC + loc_desc +
         QString(" @%1 -- begin").arg(rbrpos));
 
+    if (count > 900000)
+    {
+        LOG(VB_FILE, LOG_WARNING, LOC + QString("ReadPriv > 900K (%1)").arg(count));
+    }
     rwlock.lockForRead();
     if (writemode)
     {
diff --git a/mythtv/libs/libmythtv/tv_rec.cpp b/mythtv/libs/libmythtv/tv_rec.cpp
index b22e169..f0e47cb 100644
--- a/mythtv/libs/libmythtv/tv_rec.cpp
+++ b/mythtv/libs/libmythtv/tv_rec.cpp
@@ -1348,12 +1348,23 @@ void TVRec::run(void)
                 pendingRecordings.find(cardid) != pendingRecordings.end();
             pendingRecLock.unlock();
 
+            const int time_out = 180;
+            bool debug_start_new = false;
+            if (!debugNextRecTime.isValid())
+                debugNextRecTime = now.addSecs(time_out);
+            if (now >= debugNextRecTime)
+            {
+                debug_start_new = true;
+                debugNextRecTime = now.addSecs(time_out);
+            }
+
             if (has_rec && (has_finish || (now > recordEndTime)))
             {
                 SetPseudoLiveTVRecording(NULL);
             }
             else if (!has_rec && !rec_soon && curRecording &&
-                     (now >= curRecording->GetScheduledEndTime()))
+                     (now >= curRecording->GetScheduledEndTime() ||
+                      debug_start_new))
             {
                 if (!switchingBuffer)
                 {
diff --git a/mythtv/libs/libmythtv/tv_rec.h b/mythtv/libs/libmythtv/tv_rec.h
index 0c2f00c..aa09f37 100644
--- a/mythtv/libs/libmythtv/tv_rec.h
+++ b/mythtv/libs/libmythtv/tv_rec.h
@@ -398,6 +398,7 @@ class MTV_PUBLIC TVRec : public SignalMonitorListener, public QRunnable
 
     // LiveTV file chain
     LiveTVChain *tvchain;
+    QDateTime debugNextRecTime;
 
     // RingBuffer info
     RingBuffer  *ringBuffer;
