From: Laurent Pinchart <laurent.pinchart@tbox.biz>
To: linuxppc-embedded@ozlabs.org
Subject: fs_enet driver "generating" bad interrupts on 2.6.19
Date: Fri, 1 Dec 2006 14:18:26 +0100 [thread overview]
Message-ID: <200612011418.26201.laurent.pinchart@tbox.biz> (raw)
Hi everybody,
I upgraded to 2.6.19 today, and found a strange issue that seems to be related
with the fs_enet driver on a MPC8248.
The number of "bad" interrupts, as reported by /proc/interrupts, seems to
grown with the number of packets received and sent by the FCC ethernet
controllers.
~ # cat /proc/interrupts && sleep 500 && cat /proc/interrupts
CPU0
1: 257 CPM2 SIU Level i2c-mpc
2: 1173 CPM2 SIU Level mpc8260_spi
4: 11 CPM2 SIU Level cpm_uart
23: 0 CPM2 SIU Edge TBox cascade
24: 155 CPM2 SIU Edge tbox_spi
33: 307 CPM2 SIU Level fs_enet-mac
40: 0 CPM2 SIU Level sdfe_sdi
42: 0 CPM2 SIU Level sdfe_sdi
43: 622 CPM2 SIU Level sdfe_sci
BAD: 1379
The bad interrupt count is incremented when an interrupt can't be assigned to
a peripheral, which means cpm2_get_irq() returns -1. I tried printing the SIU
interrupt pending and interrupt mask registers when this happens:
sipnrh 0xbc120000 sipnrl 0x40000000
simrh 0x00000600 simrl 0x00b0d000
SIPNR_L.1 is the FCC2 interrupt flag. The FCC2 ethernet has no cable plugged
in, so the interrupt is masked. SIPNR_H.0 to SIPNR_H.15 are port C
interrupts, and are all masked. As you can see, no peripheral should generate
an interrupt. Still, do_IRQ() is called, and cpm2_get_irq() reads the SIU
interrupt vector register (SIVEC) to find out that it is equal to 0. The bad
interrupts counter is then incremented.
The number of bad interrupts increases faster when there is outbound network
activity (some non relevant information removed from the following output to
make it shorter):
~ # while true; do cat /proc/interrupts; ifconfig eth0; sleep 5; done
CPU0
33: 2992 CPM2 SIU Level fs_enet-mac
BAD: 1523
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2814 errors:0 dropped:0 overruns:0 frame:0
TX packets:208 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3027 CPM2 SIU Level fs_enet-mac
BAD: 1532
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2841 errors:0 dropped:0 overruns:0 frame:0
TX packets:217 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3045 CPM2 SIU Level fs_enet-mac
BAD: 1533
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2856 errors:0 dropped:0 overruns:0 frame:0
TX packets:218 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3058 CPM2 SIU Level fs_enet-mac
BAD: 1534
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2869 errors:0 dropped:0 overruns:0 frame:0
TX packets:220 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3090 CPM2 SIU Level fs_enet-mac
BAD: 1543
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2892 errors:0 dropped:0 overruns:0 frame:0
TX packets:229 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3131 CPM2 SIU Level fs_enet-mac
BAD: 1553
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2924 errors:0 dropped:0 overruns:0 frame:0
TX packets:238 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3162 CPM2 SIU Level fs_enet-mac
BAD: 1562
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2946 errors:0 dropped:0 overruns:0 frame:0
TX packets:247 errors:0 dropped:0 overruns:0 carrier:0
CPU0
33: 3193 CPM2 SIU Level fs_enet-mac
BAD: 1571
eth0 Link encap:Ethernet HWaddr 00:06:E1:80:00:03
RX packets:2968 errors:0 dropped:0 overruns:0 frame:0
TX packets:256 errors:0 dropped:0 overruns:0 carrier:0
The problem wasn't visible with the 2.6.18 kernel. The number of bad
interrupts didn't increase with outbound FCC traffic.
Has anyone noticed the same problem ?
Laurent Pinchart
next reply other threads:[~2006-12-01 13:18 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-01 13:18 Laurent Pinchart [this message]
2006-12-01 17:00 ` fs_enet driver "generating" bad interrupts on 2.6.19 Vitaly Bordug
2006-12-01 19:45 ` Vitaly Bordug
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200612011418.26201.laurent.pinchart@tbox.biz \
--to=laurent.pinchart@tbox.biz \
--cc=linuxppc-embedded@ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).