Author |
Message |
marc.aronson
|
Posted: Sun Jun 10, 2007 5:00 pm |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
It's probably a good idea to look at the content of the file "/proc/interrupts" it see which devices are sharing IRQs. Here is what mine looks like:
Code: CPU0 CPU1 0: 414421307 0 XT-PIC timer 1: 46 0 XT-PIC i8042 2: 0 0 XT-PIC cascade 3: 11251757 0 XT-PIC ivtv0 4: 21318599 0 XT-PIC eth0, Technisat/B2C2 FlexCop II/IIb/III Digital TV PCI Driver 5: 0 0 XT-PIC uhci_hcd:usb2 7: 2190216 0 XT-PIC Intel ICH5 9: 0 0 XT-PIC acpi 10: 25958551 0 XT-PIC uhci_hcd:usb1, uhci_hcd:usb4, nvidia 11: 2190065 0 XT-PIC libata, uhci_hcd:usb3 12: 19731205 0 XT-PIC i8042, saa7133[0], ehci_hcd:usb5 14: 1524946 0 XT-PIC ide0 NMI: 0 0 LOC: 414457188 414457187 ERR: 0 MIS: 0
Some devices do OK sharing IRQs; others do not. My understanding is that the Hauppauge cards (listed as ivtv) and nvidia graphics cards do not like to share IRQs. In my case I am not using my USB ports for anything, so that fact that the nvidia card is sharing an IRQ with some of my USB ports doesn't matter.
If you find that your happauge card is sharing IRQs some things you can do are:
1. Disable unused serial ports, parallel ports and USB ports in your BIOS. This will free up some IRQs.
2. Moving a card to a different PCI slot will change the IRQ it is using.
Marc
|
|
Top |
|
 |
whitlmr
|
Posted: Sun Jun 10, 2007 5:55 pm |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
Ok, here is what my file looks like. I'm not using my USB ports etiher.. I'm not entirely sure what to make of this file. I don't know what a lot of the devices are. Can you help?
Code: CPU0 CPU1 0: 20312034 0 XT-PIC timer 1: 10 0 XT-PIC i8042 2: 0 0 XT-PIC cascade 5: 324776 0 XT-PIC libata, libata, libata, ehci_hcd:usb2, ivtv0 7: 11 0 XT-PIC ohci_hcd:usb1 8: 3 0 XT-PIC rtc 9: 0 0 XT-PIC acpi 10: 4546565 0 XT-PIC ohci1394, HDA Intel, nvidia 11: 4390685 0 XT-PIC libata, Bt87x audio, bttv0, eth0 12: 102 0 XT-PIC i8042 14: 1673656 0 XT-PIC ide0 NMI: 0 0 LOC: 20312043 20312087 ERR: 2 MIS: 0
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Jun 10, 2007 7:30 pm |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Let me start by saying that I cannot be certain that your problems are caused by IRQ sharing. Having said this, I believe that having your graphics card share an IRQ with your firewire card is not good. I also see that the Hauppauge card is sharing an IRQ with what looks like your SATA controller (am I correct that you are using at least one SATA drive?)
My suggestion is that you do the following:
1. Remove all PCI cards that aren't absolutely required to run your system. If you have a card that you would "like to have", but can live without for now, pull it.
2. Your MOBO probably has a lot of built-in devices. Disable everything you don't absolately need in your BIOS. ie: All USB ports, serial port, parallel ports, firewire (1394) if its built into the mobo, etc. If you don't need it, turn it off.
3. I would also pull out one of your tuner cards.
If your system is stable like this, you can start adding things back in 1 at a time. Add in the stuff that's most important to you first. This way, you will be able to determine exactly which device is causing the problem.
If you decide to do this, post the contents of /proc/interrupts after you've taken all 3 steps -- I'd like to see what things look like at that point.
Marc
|
|
Top |
|
 |
whitlmr
|
Posted: Sun Jun 10, 2007 9:10 pm |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
I went into my BIOS and disabled all the serial, parallel and other ports I wasn't using. Below is the new configuration.
So, if I'm right, it means that my SATA drive is still sharing an IRQ with my ivtv0. Is there a way that I can move that? I don't have any extra PCI cards. The only PCI cards I have are two tuners and my Video card.
My BIOS has a setting for "Plug and Play OS". That's currently set to No, should I change that to Yes?
Code: CPU0 CPU1 0: 5119854 0 XT-PIC timer 1: 10 0 XT-PIC i8042 2: 0 0 XT-PIC cascade 5: 96377 0 XT-PIC libata, libata, libata, ivtv0 7: 609035 0 XT-PIC libata, HDA Intel 8: 3 0 XT-PIC rtc 9: 0 0 XT-PIC acpi 10: 1074134 0 XT-PIC bttv0, Bt87x audio, eth0 11: 374822 0 XT-PIC nvidia 12: 102 0 XT-PIC i8042 NMI: 0 0 LOC: 5119752 5119796 ERR: 1 MIS: 0
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Jun 10, 2007 10:25 pm |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Looks like progress -- your nvidia card is on it's own IRQ now. I'm don't recall what my "plug and play OS" setting is set to and my wife is watching a show so I can't reboot right now. I would leave this as currently set for now. At this point, I see 3 choices:
1. Run as you are for now and see if things are stable.
2. Remove one of the two tuner cards and then run for a while to see if you are stable.
3. Moving a PCI card to a different slot will change the IRQ it uses. If you look at your mobo manual it might even show you which PCI slot is assigned which IRQ. I am guessing you have 4 or 5 PCI slots, with 2-3 of them empty. You can try moving one of the tuners to one of the empty PCI slots and see if that gets it to it's own IRQ.
Marc
|
|
Top |
|
 |
marc.aronson
|
Posted: Thu Jun 14, 2007 8:30 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
whitlmr, just curious as to how things are going.
Marc
|
|
Top |
|
 |
whitlmr
|
Posted: Thu Jun 14, 2007 9:45 am |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
Things were stable for a couple of days, but I'm getting lockups again. I think that I need to get in there and move around some PCI cards to get them off critical shared interrupts. I'm hoping to have some time to do that tonight. I think before I do that though, I may turn on the "plug and play OS" option in the BIOS. I'm wondering if that will allow Linux to dynamically set the interrupts... I'm not sure it's smart enough for that, but I think it's worth a try before I lug the thing out from under my tv and open the case.
Thanks for checking!
|
|
Top |
|
 |
modemboy
|
Posted: Fri Jun 15, 2007 2:14 am |
|
Joined: Thu Feb 24, 2005 1:36 am
Posts: 74
|
I have been having similar weirdness since R5D1. System spec in sig. I get lots of DMA errors from my pvr-150 card, occasional lockups, x lockups, backend dying, backend not starting, etc. My hardware is solid.
Check /var/log/messages and see if you have any DMA error messaged with ivtv, also /var/log/mythtv/mythbackend.log would be a good place to look for clues. Good luck, I think it's related to IVTV and the DMA errors but haven't found a fix yet...
Plug and Play OS should be Yes AFAIK. I've played with my BIOS settings endlessly and no luck in my case.
_________________ MythTV box: Opty 170, MSI K8NGM2-FID, 1.5 GB PC2700, Seagate 7200.10 400GB, Lite-On Combo drive. PVR-150, HDHomeRun. Antec Sonata, Freezer 64 Pro. Oh so quiet.
|
|
Top |
|
 |
whitlmr
|
Posted: Fri Jun 15, 2007 9:56 am |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
Thanks for the log tips modemboy.
The Plug and Play OS option didn't seem to make a different, I still am getting lockups. I'm going to try moving cards and looking at the log stuff as soon as I get a few free minutes.
|
|
Top |
|
 |
marc.aronson
|
Posted: Fri Jun 15, 2007 10:31 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Whitlmr, I suggest you start by removing one of the tuner cards, make sure the remaining tuner card is on it's own IRQ and then run as a 1-tuner config. If that works, you can then add back the second tuner card and play with IRQ assignments in a 2-card config. If it won't work as a single-tuner config and that tuner on a dedicated IRQ, then the problem is likely elsewhere.
Marc
|
|
Top |
|
 |
iluvmythtv
|
Posted: Wed Jun 20, 2007 4:52 pm |
|
Joined: Thu Nov 10, 2005 1:33 pm
Posts: 5
Location:
Maryland
|
I have a combined frontend/backend Mythbox. I had random lockups, too, where playbacks would freeze and repeat the last 1/4 second of audio continuously until I rebooted. I noticed some kernel error messages related to APIC. Once I disabled APIC in the BIOS, the lockups stopped. Well, mostly. Now it's something else in the frontend (the backend happily keeps recording). No more reboots, though.
To make recovery easy, I (a) mark the current playback location (with spacebar) occasionally; and (b) have a bash (shell) window open, so I can kill the frontend or restart the backend (if things really get hosed) without leaving my chair ( hint: wireless keyboard).
To get a bash shell, do it outside the frontend, or just before the frontend comes up.
If Frontend is running:
- exit the frontend (use ESC), open the bash window (right-click, menu Apps, Shells, Bash), and re-run MythTV (menu Apps, Graphics, MythTV).
While Booting:
- When the splash screen with the couch-penguin watching KnoppMyth comes up, quickly hit the right mouse button--an X menu (maybe fluxbox?) will appear.
- The keyboard is disabled briefly at this point.
- Use the mouse to select menu Apps, Shells, Bash.
- Alt-TAB returns you to the frontend.
Here's a handy frontend-killer script (it echoes the process info before killing):
Code: root@bunny:~# cat killfrontend # script to kill the mythtv frontend ps -ef | grep frontend | grep -v root kill `pgrep -u mythtv mythfrontend` # note that if root started the frontend instead of mythtv, you'd have to use # the kill `pgrep mythfrontend` command instead. echo Done. root@bunny:~#
And a partial run: Code: root@bunny:~# ps -ef | grep frontend | grep -v root mythtv 12693 9888 2 18:09 ? 00:00:55 /usr/bin/mythfrontend
Now if the frontend hangs, I just alt-TAB, type ./killf TAB ENTER, and frontend goes away. Definitely a workaround, but hey, no rebooting.
|
|
Top |
|
 |
whitlmr
|
Posted: Fri Jun 22, 2007 4:37 pm |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
I finally got around to cracking the case. I only have two PCI slots (and two tuners) so I really can't move things. I found this page http://www.ibm.com/developerworks/library/l-hw2.html on IRQ conflicts in linux. I turned the Plug and Play OS OFF, set the configuration of PCI slots to manual and assigned every IRQ I could to "PCI SLOT" not reserved (for legacy devices.
I also took out the BTTV card, so I just have PVR-150 in the system.
Before my IRQ's looked like this
Code: CPU0 CPU1 0: 488624 0 XT-PIC timer 1: 10 0 XT-PIC i8042 2: 0 0 XT-PIC cascade 5: 17869 0 XT-PIC libata, libata, libata 7: 49619 0 XT-PIC libata, eth0 8: 3 0 XT-PIC rtc 9: 0 0 XT-PIC acpi 10: 11591 0 XT-PIC HDA Intel 11: 75903 0 XT-PIC bttv0, Bt87x audio, ivtv0, nvidia 12: 102 0 XT-PIC i8042 NMI: 0 0 LOC: 488339 509615 ERR: 1 MIS: 0
Now they look like this Code: CPU0 CPU1 0: 251372 0 XT-PIC timer 1: 354 0 XT-PIC i8042 2: 0 0 XT-PIC cascade 5: 14558 0 XT-PIC libata, libata, libata, HDA Intel 7: 11 0 XT-PIC libata 8: 1 0 XT-PIC rtc 9: 0 0 XT-PIC acpi 10: 13020 0 XT-PIC ivtv0 11: 40202 0 XT-PIC eth0, nvidia 12: 102 0 XT-PIC i8042 NMI: 0 0 LOC: 251139 257587 ERR: 1 MIS: 0
I'm going to run it for a few days and see how things shake out. I guess I may end up trying to get a PVR-350 or whatever card has dual tuners if my bttv card turns out to be the problem.
|
|
Top |
|
 |
whitlmr
|
Posted: Mon Jun 25, 2007 10:25 pm |
|
Joined: Fri Mar 30, 2007 3:22 pm
Posts: 35
|
All weekend and today (Monday) without any lockups.. Seems like it was an IRQ problem. So what's my best bet to get dual tuners a PVR-350?
|
|
Top |
|
 |
marc.aronson
|
Posted: Tue Jun 26, 2007 12:28 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Another experiment I would try first is to try the BTTV card by itself. The goal is to determine if that card is stable. If that works, I would then re-install both cards, but in the opposite slots they were in originally. It's a long shot, but perhaps worth a try...
Marc
|
|
Top |
|
 |
marc.aronson
|
Posted: Tue Jun 26, 2007 12:35 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Another thought -- I notice that your system doesn't use IRQs 2 & 4 at all. Did you try the "Reset ESCD data" outlined in the article your referenced?
Marc
|
|
Top |
|
 |