I'm having a problem with my backend sporadically (at least a few times a week) dying in the middle of recordings, and refusing to record anymore until the backend is restarted.

The symptoms are very similar to those reported in this thread:

  http://www.gossamer-threads.com/lists/mythtv/users/91978

In my mythbackend.log, I'll see something like this:

2005-01-16 19:00:02 Started recording "The Simpsons" on channel: 1006 on cardid: 1, sourceid 1
2005-01-16 19:00:02 Started recording "Law & Order" on channel: 1033 on cardid: 2, sourceid 1
2005-01-16 19:00:03 Changing from None to RecordingOnly
2005-01-16 19:00:03 Changing from None to RecordingOnly
2005-01-16 19:00:04 Found changes in the todo list.
2005-01-16 19:00:12 Scheduled 611 items in 8.42573 seconds.
2005-01-16 19:02:28 MainServer::HandleAnnounce Playback
2005-01-16 19:02:28 adding: themyth as a client (events: 0)
2005-01-16 19:02:57 MainServer::HandleAnnounce Playback
2005-01-16 19:02:57 adding: themyth as a client (events: 0)
2005-01-16 19:02:57 MainServer::HandleAnnounce FileTransfer
2005-01-16 19:02:57 adding: themyth as a remote file transfer
2005-01-16 19:02:58 MainServer::HandleAnnounce FileTransfer


and then a few of these:

  2005-01-16 19:03:23 IOBOUND - blocking in ThreadedFileWriter::Write()

and in my syslog, at the same time (here around 19:03:23), I'll see something like this:

Jan 16 19:00:04 themyth saa7115: decoder enable output
Jan 16 19:03:27 themyth ivtv: needed 1 bufs for stream 0, received 0 differ by (1) bufs
Jan 16 19:03:27 themyth ivtv: SCHED: free_q: 0 elements
Jan 16 19:03:27 themyth ivtv: SCHED: dma_q: 0 elements
Jan 16 19:03:27 themyth ivtv: SCHED: full_q: 128 elements
Jan 16 19:03:34 themyth ivtv: needed 1 bufs for stream 0, received 0 differ by (1) bufs
Jan 16 19:03:34 themyth ivtv: SCHED: free_q: 0 elements
Jan 16 19:03:34 themyth ivtv: SCHED: dma_q: 0 elements
Jan 16 19:03:34 themyth ivtv: SCHED: full_q: 128 elements


And at this point, when I check the recording, it just ends. From what I can tell (I'm just guessing), it appears that mythbackend (or ivtv, or w/e) can't write to the harddrive, so it just chokes.

For further information, I only started having this problem after adding a second PVR-250 (the original one was a PVR 250 part# 32031 and the new one is a PVR 250 part# 32552 (a 975, w/ the FM radio), and bumping (slightly) my ivtv versions, b/c I had to to get the new 32552 to work right. It uses one of those LG TAPE tuners or w/e, and what I ended up doing to on my Gentoo 2.6.5 system is taking the ivtv-0.1.10-pre2-ck100z driver that'd I'd been using previously w/ the single card w/ no problems, and importing just the updated tuner information from ivtv-0.1.10-pre2-ck115i. I also (of course) tried just using the straight ck115i, but had some sort of major stability issue or couldn't compile it or something, so I bailed. (Also, as part of this I had to update at least one tuner.h (or something) file in the kernel so it'd recognize the LG TAPE tuner).

Already, I realize I'm going to be apologizing for the length of this post, but I just want to be sure to include all the details that might help the community track down this problem that at least some of us are having. I guess it either has something to do with my ivtv driver (admittedly, *slightly* hacked together) or something particular to my system, possibly hardware based.

I'm running a Chaintech 7NIF2 motherboard w/ an Athlon XP 2400, 512 MB of PC2700, and the two previously-mentioned PVR 250s (32031 & 32552), also I have two WD 7200rpm drives, one a 60GB w/ the system on it & some of the videos on an LVM ReiserFS system spanning to the WD 160GB drive, which is newish -- installed sometime last fall before the second PVR 250 tuner.

I'll mention one more thing, just for completeness. I have the two WDs mounted right on top of each other in this rather cramped space in my smallish case that's designated for 3.5 inch drives. I didn't start using SMARTD tools on them until I'd gotten the second one in there, and when I did, I noticed Celsius temperature reports from both in the ~100 degree range. I know that they're rated for only up to ~55 degrees Celsius, so when I first saw this it freaked me out. But I think the temperature sensors must be a little funky or I'm reading the SMARTD output wrong, b/c when I pop the case and have my hand on them, they are not terribly hot (I can keep my hand there). And if I put this digital room thermometer right on top of the drives while they're running, it only registers about 80 degrees F, well below the ~212 degrees F that 100 degrees Celsius is (damnable English system! why do only those degrees really have a feel for me!?!?)

So my random guess based on this was maybe the drives really are too hot, and when I'm recording two shows simultaneously (I *don't* think this problem only happens on dual recording, but I'm not sure), there's too much bandwidth requirement and the drives can't take it.

Anyway, again, I apologize for the extreme verbosity of the post, but I like to get all the details out there right away. Does anyone else feel my pain or have ideas to try?

Thanks guys, mythtv rocks -- esp. when I've got it all stable and what not.

jl

p.s. In that thread I ref'd way at the beginning, one of the guys had a smart idea that I've implemented (but haven't tested yet, since it hasn't happened since then) using the 'swatch' package to monitor the syslog for those ivtv messages that indicate a problem and just restart the backend whenever those come up. I modified mine slightly to work with gentoo, so here's what I did:

first:
  time nice emerge swatch

then create: /etc/swatch.conf:

watchfor /ivtv: SCHED/
echo
exec "/etc/init.d/mythbackend stop && /etc/init.d/mythbackend zap && sleep 2 && /etc/init.d/mythbackend start"


(he just had a mythbackend restart, I think I've noticed problems with that before)

and then add this to either your /etc/rc.local (everything but Gentoo, I guess) or your /etc/conf.d/local.start (for Gentoo):

swatch --config-file=/etc/swatch.conf --tail-file=/var/log/messages >> /var/log/swatch.log 2>&1 &

(for those not well-versed in this output redirection stuff, I *believe* what I've got here redirects stdout & errout to that swatch.log file, if you want to recreate everytime the machine starts, just change that '>>' to '>' or use the: '&> /var/log/swatch.log &' notation).

Thanks, I'm done, seriously.
_______________________________________________
mythtv-users mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users

Reply via email to