public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* The buggy APIC of the Abit BP6
@ 2002-06-12 22:33 Robbert Kouprie
  2002-06-13  9:05 ` Helge Hafting
  2002-06-14 15:07 ` Raphael Manfredi
  0 siblings, 2 replies; 21+ messages in thread
From: Robbert Kouprie @ 2002-06-12 22:33 UTC (permalink / raw)
  To: linux-kernel

Hi all,

First of all, I know the Abit BP6 is infamous about its APIC, but I
would like to make sure there's absolutely no solution for this except
disabling the APIC.

I am experiencing problems for a long time now, which are always related
to the NIC in the box (probably due the being a device that generates a
lot of interrupts). The NIC has changed a couple of times (from 3com 10
Mbit to Intel eepro100 to 3Com PCI 3c905B Cyclone 100baseTx now), and
it's NOT placed in the infamous (I believe 3rd) PCI slot of the board
(mentioned in the manual). Also, /proc/interrups shows NO sharing with
another device. The running kernel is 2.4.19-pre8-ac5 SMP, though many
kernels have preceded it, with the same results.

The problems appear once in a while (in order of days/weeks). They are
always interluded with an "unexpected IRQ trap at vector 7d", and then
followed within a minute by chaos in the network driver. I found the
message of the 3com driver to be the most clear one, see the snippet
below. When I boot with "noapic", the problems go away.

Is there a solution that does not require disabling the APIC as a whole
or is this just too flaky hardware?

Thanks in advance,
- Robbert Kouprie

PS. Please CC me in answers, as I'm not on the list.

Jun 12 23:47:56 radium kernel: unexpected IRQ trap at vector 7d
Jun 12 23:47:56 radium kernel: unexpected IRQ trap at vector 7d
Jun 12 23:48:29 radium kernel: NETDEV WATCHDOG: eth0: transmit timed out
Jun 12 23:48:29 radium kernel: eth0: transmit timed out, tx_status 00
status e681.
Jun 12 23:48:29 radium kernel:   diagnostics: net 0cf2 media 8880 dma
0000003a fifo 8800
Jun 12 23:48:29 radium kernel: eth0: Interrupt posted but not delivered
-- IRQ blocked by another device?
Jun 12 23:48:29 radium kernel:   Flags; bus-master 1, dirty 16264012(12)
current 16264012(12)
Jun 12 23:48:29 radium kernel:   Transmit list 00000000 vs. c133e500.
Jun 12 23:48:29 radium kernel:   0: @c133e200  length 800005cc status
000105cc
Jun 12 23:48:29 radium kernel:   1: @c133e240  length 800005cc status
000105cc
Jun 12 23:48:29 radium kernel:   2: @c133e280  length 800005cc status
000105cc
Jun 12 23:48:29 radium kernel:   3: @c133e2c0  length 800005cc status
000105cc
Jun 12 23:48:29 radium kernel:   4: @c133e300  length 8000001e status
0001001e
Jun 12 23:48:29 radium kernel:   5: @c133e340  length 800005cc status
000105cc
Jun 12 23:48:29 radium kernel:   6: @c133e380  length 80000045 status
00010045
Jun 12 23:48:29 radium kernel:   7: @c133e3c0  length 80000045 status
00010045
Jun 12 23:48:29 radium kernel:   8: @c133e400  length 80000045 status
00010045
Jun 12 23:48:29 radium kernel:   9: @c133e440  length 80000045 status
00010045
Jun 12 23:48:29 radium kernel:   10: @c133e480  length 80000045 status
80010045
Jun 12 23:48:29 radium kernel:   11: @c133e4c0  length 800005cc status
800105cc
Jun 12 23:48:29 radium kernel:   12: @c133e500  length 80000042 status
00010042
Jun 12 23:48:29 radium kernel:   13: @c133e540  length 80000042 status
00010042
Jun 12 23:48:29 radium kernel:   14: @c133e580  length 80000042 status
00010042
Jun 12 23:48:29 radium kernel:   15: @c133e5c0  length 80000042 status
00010042
Jun 12 23:48:29 radium kernel: eth0: Resetting the Tx ring pointer.
Jun 12 23:48:29 radium kernel: NETDEV WATCHDOG: eth0: transmit timed out



^ permalink raw reply	[flat|nested] 21+ messages in thread
* Re: The buggy APIC of the Abit BP6
@ 2002-06-14 16:49 Robbert Kouprie
  2002-06-14 18:41 ` Raphael Manfredi
  0 siblings, 1 reply; 21+ messages in thread
From: Robbert Kouprie @ 2002-06-14 16:49 UTC (permalink / raw)
  To: 'Raphael Manfredi'; +Cc: linux-kernel

Raphael Manfredi wrote:

> Here's my own solution for it, in an old article.  I've been running
> with this patch since then, and transmit timeouts have never been a
problem.
> 
> I run 2.4.18-pre7 nowadays, and the patch below applied without
problem.

Thanks very much! This looks very promising. I just patched
2.4.19pre10-ac2 with it and booted it up on my BP6. I will report back
any failure or success of APIC kicking ;)

BTW, did you get any explanation why this wasn't applied in -ac or main
kernel?

- Robbert Kouprie


^ permalink raw reply	[flat|nested] 21+ messages in thread
* Re: The buggy APIC of the Abit BP6
@ 2002-06-18  9:53 Robbert Kouprie
  0 siblings, 0 replies; 21+ messages in thread
From: Robbert Kouprie @ 2002-06-18  9:53 UTC (permalink / raw)
  To: 'Helge Hafting'; +Cc: 'Raphael Manfredi', linux-kernel

Helge Hafting wrote:

> I'll try it. Have you considered resubmitting the patch,
> hidden behind a CONFIG_BROKEN_APIC? That'll keep the code
> clean for those with better hardware.
 
We might as well move the kick_IO_APIC_irq call to the
arch/i386/kernel/irq.c:ack_none function then, surrounded by proper
#ifdefs. The ack_none is the function that does the printk("unexpected
IRQ trap at vector %02x\n", irq), which I see everytime the bug
triggers.

And looking at the comment of the end_level_ioapic_irq function in
io_apic.c, is there a possibility to replace the kick_IO_APIC_irq call
entirely with a end_level_ioapic_irq call? I see lots of similarities in
these two functions.

I didn't test this yet, as I'm still running on Raphael's patch, waiting
for the bug to trigger. (Anyone got a reliable way of triggering it?)

Regards,
- Robbert Kouprie


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2002-06-21 13:02 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-12 22:33 The buggy APIC of the Abit BP6 Robbert Kouprie
2002-06-13  9:05 ` Helge Hafting
2002-06-13 13:30   ` Robbert Kouprie
2002-06-14 10:54     ` Helge Hafting
2002-06-18 15:30       ` Robbert Kouprie
2002-06-18 15:17         ` Zwane Mwaikambo
2002-06-19 12:47         ` Maciej W. Rozycki
2002-06-19 13:23           ` Robbert Kouprie
2002-06-19 14:03             ` Keith Owens
2002-06-19 14:35               ` Maciej W. Rozycki
2002-06-20  1:50               ` Robbert Kouprie
2002-06-19 14:22             ` Maciej W. Rozycki
2002-06-20 12:21           ` Helge Hafting
2002-06-20 13:10             ` Maciej W. Rozycki
2002-06-21 13:02               ` Helge Hafting
2002-06-20 22:29             ` Kevin Krieser
2002-06-14 15:07 ` Raphael Manfredi
  -- strict thread matches above, loose matches on Subject: below --
2002-06-14 16:49 Robbert Kouprie
2002-06-14 18:41 ` Raphael Manfredi
2002-06-18  7:33   ` Helge Hafting
2002-06-18  9:53 Robbert Kouprie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox