* irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
@ 2004-02-06 16:19 Lenar Lõhmus
2004-02-09 18:56 ` Takashi Iwai
0 siblings, 1 reply; 11+ messages in thread
From: Lenar Lõhmus @ 2004-02-06 16:19 UTC (permalink / raw)
To: Andrew Morton, Linux Kernel Mailinglist
Got this when tried to run mplayer (mplayer played something audible for
1 sec and then stalled):
irq 7: nobody cared!
Call Trace:
[<c010c0f4>] __report_bad_irq+0x24/0x80
[<c010c1d1>] note_interrupt+0x61/0x90
[<c010c46d>] do_IRQ+0x10d/0x120
[<c0279e1c>] common_interrupt+0x18/0x20
[<c010c093>] handle_IRQ_event+0x23/0x60
[<c010c3e3>] do_IRQ+0x83/0x120
[<c0279e1c>] common_interrupt+0x18/0x20
handlers:
[<f99a1720>] (snd_intel8x0_interrupt+0x0/0x1e0 [snd_intel8x0])
Disabling IRQ #7
sound module in use is intel8x0 as seen above. Chip itself is nforce2
integrated audio.
I know there were problems earlier with this chip and new ALSA,
but thought maybe this is helpful. The kernel is booted with pci=noacpi
due to recent problems with nforce2 mb's using -mm series kernels.
It worked flawlessly in 2.6.1-rc1-mm1.
Lenar
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-06 16:19 irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1) Lenar Lõhmus
@ 2004-02-09 18:56 ` Takashi Iwai
2004-02-10 17:26 ` Lenar Lõhmus
2004-02-10 19:09 ` Ralf Gerbig
0 siblings, 2 replies; 11+ messages in thread
From: Takashi Iwai @ 2004-02-09 18:56 UTC (permalink / raw)
To: Linux Kernel Mailinglist
[-- Attachment #1: Type: text/plain, Size: 837 bytes --]
At Fri, 06 Feb 2004 18:19:52 +0200,
Lenar Lõhmus wrote:
>
> Got this when tried to run mplayer (mplayer played something audible for
> 1 sec and then stalled):
>
> irq 7: nobody cared!
> Call Trace:
> [<c010c0f4>] __report_bad_irq+0x24/0x80
> [<c010c1d1>] note_interrupt+0x61/0x90
> [<c010c46d>] do_IRQ+0x10d/0x120
> [<c0279e1c>] common_interrupt+0x18/0x20
> [<c010c093>] handle_IRQ_event+0x23/0x60
> [<c010c3e3>] do_IRQ+0x83/0x120
> [<c0279e1c>] common_interrupt+0x18/0x20
>
> handlers:
> [<f99a1720>] (snd_intel8x0_interrupt+0x0/0x1e0 [snd_intel8x0])
> Disabling IRQ #7
>
> sound module in use is intel8x0 as seen above. Chip itself is nforce2
> integrated audio.
could you check the status register value when this happens with the
attached patch?
--
Takashi Iwai <tiwai@suse.de> ALSA Developer - www.alsa-project.org
[-- Attachment #2: Type: text/plain, Size: 372 bytes --]
--- linux/sound/pci/intel8x0.c 6 Feb 2004 17:47:49 -0000 1.115
+++ linux/sound/pci/intel8x0.c 9 Feb 2004 18:49:02 -0000
@@ -807,6 +807,7 @@
if (status)
iputdword(chip, chip->int_sta_reg, status);
spin_unlock(&chip->reg_lock);
+ printk(KERN_DEBUG "intel8x0: ignored irq, status = 0x%x, sta_mask = 0x%x\n", status, chip->int_sta_mask);
return IRQ_NONE;
}
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-09 18:56 ` Takashi Iwai
@ 2004-02-10 17:26 ` Lenar Lõhmus
2004-02-10 19:05 ` Takashi Iwai
2004-02-10 19:09 ` Ralf Gerbig
1 sibling, 1 reply; 11+ messages in thread
From: Lenar Lõhmus @ 2004-02-10 17:26 UTC (permalink / raw)
To: Takashi Iwai, Linux Kernel Mailinglist
Takashi Iwai wrote:
>
>could you check the status register value when this happens with the
>attached patch?
>
>
It never happened after applying this patch (not the right circumstances
I think). It always printed this:
intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
And sound worked.
Today discovered this message from dmesg:
intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
irq 7: nobody cared!
Call Trace:
[<c010c0f4>] __report_bad_irq+0x24/0x80
[<c010c1d1>] note_interrupt+0x61/0x90
[<c010c46d>] do_IRQ+0x10d/0x120
[<c0279e1c>] common_interrupt+0x18/0x20
[<c010c093>] handle_IRQ_event+0x23/0x60
[<c010c3e3>] do_IRQ+0x83/0x120
[<c0279e1c>] common_interrupt+0x18/0x20
[<f99a97dc>] dl_done_list+0x7c/0x110 [ohci_hcd]
[<f99aa114>] ohci_irq+0x84/0x160 [ohci_hcd]
[<f99ade79>] nic_irq+0x1a9/0x1d0 [forcedeth]
[<f996d52e>] usb_hcd_irq+0x2e/0x60 [usbcore]
[<c010c09f>] handle_IRQ_event+0x2f/0x60
[<c010c3e3>] do_IRQ+0x83/0x120
[<c0107000>] _stext+0x0/0x50
[<c0279e1c>] common_interrupt+0x18/0x20
[<c0107000>] _stext+0x0/0x50
[<c0108b53>] default_idle+0x23/0x30
[<c0108bbc>] cpu_idle+0x2c/0x40
[<c02fe70a>] start_kernel+0x13a/0x150
[<c02fe480>] unknown_bootoption+0x0/0x100
handlers:
[<f99a1720>] (snd_intel8x0_interrupt+0x0/0x200 [snd_intel8x0])
Disabling IRQ #7
And mplayer stalls again. The 'ignored irq' message was the same and no
additional messages
after call trace.
/proc/interrupts:
CPU0
0: 78008640 XT-PIC timer
1: 35441 XT-PIC i8042
2: 0 XT-PIC cascade
5: 18501105 XT-PIC eth1
7: 203478 XT-PIC NVidia nForce2
8: 22814379 XT-PIC rtc
9: 0 XT-PIC acpi
11: 639763 XT-PIC ide2, ehci_hcd
12: 47894522 XT-PIC ohci_hcd, eth0
14: 589578 XT-PIC ide0
15: 115750 XT-PIC ide1
NMI: 0
LOC: 78015575
ERR: 3478
MIS: 0
Lenar
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-10 17:26 ` Lenar Lõhmus
@ 2004-02-10 19:05 ` Takashi Iwai
2004-02-10 19:50 ` Ralf Gerbig
0 siblings, 1 reply; 11+ messages in thread
From: Takashi Iwai @ 2004-02-10 19:05 UTC (permalink / raw)
To: Lenar Lõhmus; +Cc: Linux Kernel Mailinglist
[-- Attachment #1: Type: text/plain, Size: 751 bytes --]
At Tue, 10 Feb 2004 19:26:19 +0200,
Lenar Lõhmus wrote:
>
> Takashi Iwai wrote:
>
> >
> >could you check the status register value when this happens with the
> >attached patch?
> >
> >
> It never happened after applying this patch (not the right circumstances
> I think). It always printed this:
>
> intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
>
> And sound worked.
>
> Today discovered this message from dmesg:
>
> intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
> intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
> intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
> irq 7: nobody cared!
ok then really some unknown status bits are set.
the attached patch should fix this problem anyway.
Takashi
[-- Attachment #2: Type: text/plain, Size: 340 bytes --]
--- linux/sound/pci/intel8x0.c 6 Feb 2004 17:47:49 -0000 1.115
+++ linux/sound/pci/intel8x0.c 10 Feb 2004 19:03:43 -0000
@@ -807,7 +807,7 @@
if (status)
iputdword(chip, chip->int_sta_reg, status);
spin_unlock(&chip->reg_lock);
- return IRQ_NONE;
+ return IRQ_HANDLED(status);
}
for (i = 0; i < chip->bdbars_count; i++) {
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-09 18:56 ` Takashi Iwai
2004-02-10 17:26 ` Lenar Lõhmus
@ 2004-02-10 19:09 ` Ralf Gerbig
1 sibling, 0 replies; 11+ messages in thread
From: Ralf Gerbig @ 2004-02-10 19:09 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Linux Kernel Mailinglist
Moins,
* On Mon, 09 Feb 2004 19:56:48 +0100, Takashi Iwai <tiwai@suse.de> said:
> could you check the status register value when this happens with the
> attached patch?
I'm not Lenar, but this is what I get upon module load:
Epox EP8RDA3 Mobo, nforce2, acpi, apic, preempt, 2.6.3-rc1-mm1
00:06.0 Multimedia audio controller: nVidia Corporation nForce2 AC97 Audio Controler (MCP) (rev a1)
21: 751435 IO-APIC-level NVidia nForce2
line in -> line out (bttv) works fine, aplay just plays the first
snippet of sound a couple of times and then hangs.
kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
kernel: intel8x0: ignored irq, status = 0x0, sta_mask = 0x0
kernel: intel8x0: ignored irq, status = 0x0, sta_mask = 0x0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2377 times
kernel: intel8x0: ignored irq, status = 0x300100,red irq, status = 0xred irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2146 times
kernel: intel8x0: ignored irq, status = 0x3001red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 1863 times
/sbin/hotplug[5795]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[5802]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[5810]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[5809]: no runnable /etc/hotplug/sound.agent is installed
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 283 times
kernel: red irred irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2146 times
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask =red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 481 times
/sbin/hotplug[5825]: no runnable /etc/hotplug/sound.agent is installed
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 1665 times
kernel: rq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2142 times
kernel: irq 21: nobody cared!
kernel: Call Trace:
kernel: [__report_bad_irq+42/144] __report_bad_irq+0x2a/0x90
kernel: [<c010cc7a>] __report_bad_irq+0x2a/0x90
kernel: [note_interrupt+112/176] note_interrupt+0x70/0xb0
kernel: [<c010cd70>] note_interrupt+0x70/0xb0
kernel: [do_IRQ+304/320] do_IRQ+0x130/0x140
kernel: [<c010d060>] do_IRQ+0x130/0x140
kernel: [common_interrupt+24/32] common_interrupt+0x18/0x20
kernel: [<c0321d64>] common_interrupt+0x18/0x20
kernel:
kernel: handlers:
kernel: [_end+542335376/1069053776] (snd_intel8x0_interrupt+0x0/0x260 [snd_intel8x0])
kernel: [<e09aba40>] (snd_intel8x0_interrupt+0x0/0x260 [snd_intel8x0])
kernel: Disabling IRQ #21
without hotplug:
kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
kernel: intel8x0: ignored irq, status = 0x0, sta_mask = 0x0
kernel: intel8x0: ignored irq, status = 0x0, sta_mask = 0x0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 939 times
kernel: red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2147 times
kernel: red irq, statured irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2146 times
kernel: intel8x0: ignored irq, status = 0x300100, stred irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2147 times
kernel: red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2147 times
kernel: red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 981 times
kernel: intel8x0: ignored irq, status = 0x300100red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 1163 times
kernel: intel8x0: ignored irq, status = red irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2147 times
kernel: >intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
kernel: intel8x0: ignored irq, status = 0x300100, sta_mask = 0xf0
last message repeated 2134 times
kernel: irq 21: nobody cared!
kernel: Call Trace:
kernel: [__report_bad_irq+42/144] __report_bad_irq+0x2a/0x90
kernel: [<c010cc7a>] __report_bad_irq+0x2a/0x90
kernel: [note_interrupt+112/176] note_interrupt+0x70/0xb0
kernel: [<c010cd70>] note_interrupt+0x70/0xb0
kernel: [do_IRQ+304/320] do_IRQ+0x130/0x140
kernel: [<c010d060>] do_IRQ+0x130/0x140
kernel: [common_interrupt+24/32] common_interrupt+0x18/0x20
kernel: [<c0321d64>] common_interrupt+0x18/0x20
kernel: [schedule+884/1456] schedule+0x374/0x5b0
kernel: [<c011dff4>] schedule+0x374/0x5b0
kernel: [preempt_schedule+54/96] preempt_schedule+0x36/0x60
kernel: [<c011e266>] preempt_schedule+0x36/0x60
kernel: [unix_dgram_sendmsg+872/1392] unix_dgram_sendmsg+0x368/0x570
kernel: [<c031c518>] unix_dgram_sendmsg+0x368/0x570
kernel: [call_console_drivers+101/288] call_console_drivers+0x65/0x120
kernel: [<c01221b5>] call_console_drivers+0x65/0x120
kernel: [call_console_drivers+101/288] call_console_drivers+0x65/0x120
kernel: [<c01221b5>] call_console_drivers+0x65/0x120
kernel: [sock_aio_write+191/240] sock_aio_write+0xbf/0xf0
kernel: [<c02b8a3f>] sock_aio_write+0xbf/0xf0
kernel: [do_sync_write+140/192] do_sync_write+0x8c/0xc0
kernel: [<c0157d5c>] do_sync_write+0x8c/0xc0
kernel: [common_interrupt+24/32] common_interrupt+0x18/0x20
kernel: [<c0321d64>] common_interrupt+0x18/0x20
kernel: [vfs_write+254/304] vfs_write+0xfe/0x130
kernel: [<c0157e8e>] vfs_write+0xfe/0x130
kernel: [sys_write+66/112] sys_write+0x42/0x70
kernel: [<c0157f72>] sys_write+0x42/0x70
kernel: [syscall_call+7/11] syscall_call+0x7/0xb
kernel: [<c03213f7>] syscall_call+0x7/0xb
kernel:
kernel: handlers:
kernel: [_end+542335376/1069053776] (snd_intel8x0_interrupt+0x0/0x260 [snd_intel8x0])
kernel: [<e09aba40>] (snd_intel8x0_interrupt+0x0/0x260 [snd_intel8x0])
kernel: Disabling IRQ #21
hope this helps,
Ralf
--
P: Linus Torvalds patch-2.2.4
-S: Buried alive in diapers
+S: Buried alive in reporters
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-10 19:05 ` Takashi Iwai
@ 2004-02-10 19:50 ` Ralf Gerbig
2004-02-10 20:23 ` Linus Torvalds
0 siblings, 1 reply; 11+ messages in thread
From: Ralf Gerbig @ 2004-02-10 19:50 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Lenar Lõhmus, Linux Kernel Mailinglist
Moins,
* On Tue, 10 Feb 2004 20:05:35 +0100, Takashi Iwai <tiwai@suse.de> said:
> ok then really some unknown status bits are set.
> the attached patch should fix this problem anyway.
> --- linux/sound/pci/intel8x0.c 6 Feb 2004 17:47:49 -0000 1.115
> +++ linux/sound/pci/intel8x0.c 10 Feb 2004 19:03:43 -0000
> @@ -807,7 +807,7 @@
> if (status)
> iputdword(chip, chip->int_sta_reg, status);
> spin_unlock(&chip->reg_lock);
> - return IRQ_NONE;
> + return IRQ_HANDLED(status);
did not compile, tried
return IRQ_RETVAL(status);
instead. Works, but I get 150,000 interrupts/s even without playing any
sound.
thanks,
Ralf
--
P: Linus Torvalds patch-2.2.4
-S: Buried alive in diapers
+S: Buried alive in reporters
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-10 19:50 ` Ralf Gerbig
@ 2004-02-10 20:23 ` Linus Torvalds
2004-02-10 20:49 ` Ralf Gerbig
0 siblings, 1 reply; 11+ messages in thread
From: Linus Torvalds @ 2004-02-10 20:23 UTC (permalink / raw)
To: Ralf Gerbig; +Cc: Takashi Iwai, Lenar Lõhmus, Linux Kernel Mailinglist
On Tue, 10 Feb 2004, Ralf Gerbig wrote:
>
> * On Tue, 10 Feb 2004 20:05:35 +0100, Takashi Iwai <tiwai@suse.de> said:
>
> > --- linux/sound/pci/intel8x0.c 6 Feb 2004 17:47:49 -0000 1.115
> > +++ linux/sound/pci/intel8x0.c 10 Feb 2004 19:03:43 -0000
> > @@ -807,7 +807,7 @@
> > if (status)
> > iputdword(chip, chip->int_sta_reg, status);
> > spin_unlock(&chip->reg_lock);
> > - return IRQ_NONE;
> > + return IRQ_HANDLED(status);
>
> did not compile, tried
>
> return IRQ_RETVAL(status);
>
> instead. Works, but I get 150,000 interrupts/s even without playing any
> sound.
Can you add something like
static int count = 10;
if (count) {
count--;
printk("sound status = %08x (mask %08x)\n",
status, chip->int_sta_mask);
}
to just before the return?
That should tell what the register contents are, and might be a clue
about what event it thinks is active.
Linus
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-10 20:23 ` Linus Torvalds
@ 2004-02-10 20:49 ` Ralf Gerbig
2004-02-11 10:42 ` Takashi Iwai
0 siblings, 1 reply; 11+ messages in thread
From: Ralf Gerbig @ 2004-02-10 20:49 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Takashi Iwai, Lenar Lõhmus, Linux Kernel Mailinglist
Moins,
* Linus Torvalds said:
> Can you add something like
> static int count = 10;
> if (count) {
> count--;
> printk("sound status = %08x (mask %08x)\n",
> status, chip->int_sta_mask);
> }
> to just before the return?
> That should tell what the register contents are, and might be a clue
> about what event it thinks is active.
kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
kernel: sound status = 00000000 (mask 00000000)
kernel: sound status = 00000000 (mask 00000000)
kernel: sound status = 00300100 (mask 000000f0)
last message repeated 7 times
/sbin/hotplug[18871]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[18886]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[18878]: no runnable /etc/hotplug/sound.agent is installed
/sbin/hotplug[18885]: no runnable /etc/hotplug/sound.agent is installed
kernel: intel8x0_measure_ac97_clock: measured 49492 usecs
kernel: intel8x0: clocking to 47354
kernel: ALSA sound/pci/intel8x0.c:2787: joystick(s) found
/sbin/hotplug[18901]: no runnable /etc/hotplug/sound.agent is installed
playing a video with mplayer:
kernel: ALSA sound/core/pcm_lib.c:233: Unexpected hw_pointer value [2] (stream = 0, delta: -1108, max jitter = 4456): wrong interrupt acknowledge?
--
P: Linus Torvalds patch-2.2.4
-S: Buried alive in diapers
+S: Buried alive in reporters
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-10 20:49 ` Ralf Gerbig
@ 2004-02-11 10:42 ` Takashi Iwai
2004-02-11 20:11 ` Ralf Gerbig
0 siblings, 1 reply; 11+ messages in thread
From: Takashi Iwai @ 2004-02-11 10:42 UTC (permalink / raw)
To: Ralf Gerbig; +Cc: Linus Torvalds, Lenar Lõhmus, Linux Kernel Mailinglist
At 10 Feb 2004 21:49:19 +0100,
Ralf Gerbig wrote:
>
> Moins,
>
> * Linus Torvalds said:
>
> > Can you add something like
>
> > static int count = 10;
> > if (count) {
> > count--;
> > printk("sound status = %08x (mask %08x)\n",
> > status, chip->int_sta_mask);
> > }
>
> > to just before the return?
>
> > That should tell what the register contents are, and might be a clue
> > about what event it thinks is active.
>
>
> kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
> kernel: sound status = 00000000 (mask 00000000)
> kernel: sound status = 00000000 (mask 00000000)
> kernel: sound status = 00300100 (mask 000000f0)
> last message repeated 7 times
> /sbin/hotplug[18871]: no runnable /etc/hotplug/sound.agent is installed
> /sbin/hotplug[18886]: no runnable /etc/hotplug/sound.agent is installed
> /sbin/hotplug[18878]: no runnable /etc/hotplug/sound.agent is installed
> /sbin/hotplug[18885]: no runnable /etc/hotplug/sound.agent is installed
> kernel: intel8x0_measure_ac97_clock: measured 49492 usecs
> kernel: intel8x0: clocking to 47354
> kernel: ALSA sound/pci/intel8x0.c:2787: joystick(s) found
> /sbin/hotplug[18901]: no runnable /etc/hotplug/sound.agent is installed
>
> playing a video with mplayer:
>
> kernel: ALSA sound/core/pcm_lib.c:233: Unexpected hw_pointer value [2] (stream = 0, delta: -1108, max jitter = 4456): wrong interrupt acknowledge?
this is likely a different problem.
usually this message appears when the interrupt handling is sloppy.
--
Takashi Iwai <tiwai@suse.de> ALSA Developer - www.alsa-project.org
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-11 10:42 ` Takashi Iwai
@ 2004-02-11 20:11 ` Ralf Gerbig
2004-02-13 11:05 ` Takashi Iwai
0 siblings, 1 reply; 11+ messages in thread
From: Ralf Gerbig @ 2004-02-11 20:11 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Linus Torvalds, Lenar Lõhmus, Linux Kernel Mailinglist
Moins,
* On Wed, 11 Feb 2004 11:42:14 +0100, Takashi Iwai <tiwai@suse.de> said:
> Ralf Gerbig wrote:
>> * Linus Torvalds said:
>>
>> > Can you add something like
>>
>> > static int count = 10;
>> > if (count) {
>> > count--;
>> > printk("sound status = %08x (mask %08x)\n",
>> > status, chip->int_sta_mask);
>> > }
>>
>> > to just before the return?
>>
>> > That should tell what the register contents are, and might be a clue
>> > about what event it thinks is active.
>>
>>
>> kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
>> kernel: sound status = 00000000 (mask 00000000)
>> kernel: sound status = 00000000 (mask 00000000)
>> kernel: sound status = 00300100 (mask 000000f0)
>> last message repeated 7 times
>> /sbin/hotplug[18871]: no runnable /etc/hotplug/sound.agent is installed
>> /sbin/hotplug[18886]: no runnable /etc/hotplug/sound.agent is installed
>> /sbin/hotplug[18878]: no runnable /etc/hotplug/sound.agent is installed
>> /sbin/hotplug[18885]: no runnable /etc/hotplug/sound.agent is installed
>> kernel: intel8x0_measure_ac97_clock: measured 49492 usecs
>> kernel: intel8x0: clocking to 47354
>> kernel: ALSA sound/pci/intel8x0.c:2787: joystick(s) found
>> /sbin/hotplug[18901]: no runnable /etc/hotplug/sound.agent is installed
>>
>> playing a video with mplayer:
>>
>> kernel: ALSA sound/core/pcm_lib.c:233: Unexpected hw_pointer value [2] (stream = 0, delta: -1108, max jitter = 4456): wrong interrupt acknowledge?
> this is likely a different problem.
> usually this message appears when the interrupt handling is sloppy.
tried this: ( beware I do _not_ know what I'm doing)
--- sound/oss/i810_audio.c.orig 2004-02-11 20:13:45.000000000 +0100
+++ sound/oss/i810_audio.c 2004-02-11 20:48:51.000000000 +0100
@@ -149,7 +149,7 @@
//#define DEBUG
//#define DEBUG2
-//#define DEBUG_INTERRUPTS
+#define DEBUG_INTERRUPTS
//#define DEBUG_MMAP
//#define DEBUG_MMIO
@@ -1380,8 +1380,16 @@
if(!(status & INT_MASK))
{
+
+ static int count = 10;
+ if (count) {
+ count--;
+ printk("sound status = %08x (mask %08x)\n",
+ status, INT_MASK);
+ }
+
spin_unlock(&card->lock);
- return IRQ_NONE; /* not for us */
+ return IRQ_RETVAL(status); /* not for us */
}
if(status & (INT_PO|INT_PI|INT_MC))
which resulted in:
kernel: Intel 810 + AC97 Audio, version 0.24, 20:51:32 Feb 11 2004
kernel: PCI: Setting latency timer of device 0000:00:06.0 to 64
kernel: i810: NVIDIA nForce Audio found at IO 0xd400 and 0xd000, MEM 0x0000 and 0x0000, IRQ 21
kernel: sound status = 00300100 (mask 00000ce7)
last message repeated 9 times
kernel: i810_audio: Audio Controller supports 6 channels.
kernel: i810_audio: Defaulting to base 2 channel mode.
kernel: i810_audio: Resetting connection 0
kernel: ac97_codec: AC97 codec, id: CMI97 (CMedia)
kernel: AC97 codec does not have proper volume support.
kernel: i810_audio: only 48Khz playback available.
kernel: i810_audio: AC'97 codec 0, new EID value = 0x05c6
kernel: i810_audio: AC'97 codec 0, DAC map configured, total channels = 6
/sbin/hotplug[31860]: no runnable /etc/hotplug/sound.agent is installed
kernel: i810_audio: 9472 bytes in 50 milliseconds
kernel: i810_audio: setting clocking to 48648
line in -> line out with xawtv works,
PCM (echo /usr/share/sounds/alsa/test.wav >/dev/dsp) -> does not hang,
but no sound
and I get ~250,000 ints/s on IRQ 21
thanks,
Ralf
--
P: Linus Torvalds patch-2.2.4
-S: Buried alive in diapers
+S: Buried alive in reporters
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1)
2004-02-11 20:11 ` Ralf Gerbig
@ 2004-02-13 11:05 ` Takashi Iwai
0 siblings, 0 replies; 11+ messages in thread
From: Takashi Iwai @ 2004-02-13 11:05 UTC (permalink / raw)
To: Ralf Gerbig; +Cc: Linus Torvalds, Lenar Lõhmus, Linux Kernel Mailinglist
[-- Attachment #1: Type: text/plain, Size: 438 bytes --]
At 11 Feb 2004 21:11:08 +0100,
Ralf Gerbig wrote:
>
> - return IRQ_NONE; /* not for us */
> + return IRQ_RETVAL(status); /* not for us */
after checking the code again, using status as IRQ_RETVAL() isn't a
good way, because it has also some static status bits.
the attached patch would be better to avoid the confusion.
it will return IRQ_HANDLED only when some irq bits are really
acknowledged.
Takashi
[-- Attachment #2: Type: text/plain, Size: 993 bytes --]
Index: alsa-kernel/pci/intel8x0.c
===================================================================
RCS file: /suse/tiwai/cvs/alsa/alsa-kernel/pci/intel8x0.c,v
retrieving revision 1.115
diff -u -r1.115 intel8x0.c
--- alsa-kernel/pci/intel8x0.c 6 Feb 2004 17:47:49 -0000 1.115
+++ alsa-kernel/pci/intel8x0.c 13 Feb 2004 10:32:46 -0000
@@ -804,10 +804,20 @@
spin_lock(&chip->reg_lock);
status = igetdword(chip, chip->int_sta_reg);
if ((status & chip->int_sta_mask) == 0) {
- if (status)
+ static int status_ack = 0;
+ static int err_count = 10;
+ if (status) {
iputdword(chip, chip->int_sta_reg, status);
+ status_ack = igetdword(chip, chip->int_sta_reg);
+ }
spin_unlock(&chip->reg_lock);
- return IRQ_NONE;
+ status ^= status_ack;
+ if (status && err_count) {
+ err_count--;
+ snd_printd("intel8x0: unknown IRQ bits 0x%x (sta_mask=0x%x)\n",
+ status, chip->int_sta_mask);
+ }
+ return IRQ_RETVAL(status);
}
for (i = 0; i < chip->bdbars_count; i++) {
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2004-02-13 11:12 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-06 16:19 irq 7: nobody cared! (intel8x0 sound / 2.6.2-rc3-mm1) Lenar Lõhmus
2004-02-09 18:56 ` Takashi Iwai
2004-02-10 17:26 ` Lenar Lõhmus
2004-02-10 19:05 ` Takashi Iwai
2004-02-10 19:50 ` Ralf Gerbig
2004-02-10 20:23 ` Linus Torvalds
2004-02-10 20:49 ` Ralf Gerbig
2004-02-11 10:42 ` Takashi Iwai
2004-02-11 20:11 ` Ralf Gerbig
2004-02-13 11:05 ` Takashi Iwai
2004-02-10 19:09 ` Ralf Gerbig
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox