Thread (16 messages) flat view 16 messages, 4 authors, 2009-08-04

Re: Kernel oops on setting sky2 interfaces down

From: Rene Mayrhofer <hidden>
Date: 2009-07-27 11:03:33

Stephen Hemminger schrieb:
You could try commenting out sky2_shutdown which does the Wol
power down stuff. Maybe changing setting of Wake On Lan would
help as well.

What happens if you take interface down 'ip link set eth0 down' (or ifconfig)?

There are several different register writes in the shutdown path.
You could add code to check if a particular access is disabling
the PCI buss with:

    sky2_write(... som register...)
    BUG_ON(sky2_read16(sky2->hw, B0_CTST) == 0xffff);
I tried adding that wherever it seemed to make sense, resulting in

[~]# modinfo  sky2
filename:       /lib/modules/2.6.28.10/kernel/drivers/net/sky2.ko
version:        1.22
license:        GPL
author:         Stephen Hemminger [off-list ref]
description:    Marvell Yukon 2 Gigabit Ethernet driver
srcversion:     1A63521E698522157C4F229
alias:          pci:v000011ABd00004380sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004370sv*sd*bc*sc*i*
alias:          pci:v000011ABd0000436Dsv*sd*bc*sc*i*
alias:          pci:v000011ABd0000436Csv*sd*bc*sc*i*
alias:          pci:v000011ABd0000436Bsv*sd*bc*sc*i*
alias:          pci:v000011ABd0000436Asv*sd*bc*sc*i*
alias:          pci:v000011ABd00004369sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004368sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004367sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004366sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004365sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004364sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004363sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004362sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004361sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004360sv*sd*bc*sc*i*
alias:          pci:v000011ABd0000435Asv*sd*bc*sc*i*
alias:          pci:v000011ABd00004357sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004356sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004355sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004354sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004353sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004352sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004351sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004350sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004347sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004346sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004345sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004344sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004343sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004342sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004341sv*sd*bc*sc*i*
alias:          pci:v000011ABd00004340sv*sd*bc*sc*i*
alias:          pci:v00001186d00004B03sv*sd*bc*sc*i*
alias:          pci:v00001186d00004B02sv*sd*bc*sc*i*
alias:          pci:v00001186d00004001sv*sd*bc*sc*i*
alias:          pci:v00001186d00004B00sv*sd*bc*sc*i*
alias:          pci:v00001148d00009E00sv*sd*bc*sc*i*
alias:          pci:v00001148d00009000sv*sd*bc*sc*i*
depends:
vermagic:       2.6.28.10 SMP preempt mod_unload 586
parm:           debug:Debug level (0=none,...,16=all) (int)
parm:           copybreak:Receive copy threshold (int)
parm:           disable_msi:Disable Message Signaled Interrupt (MSI) (int)
parm:           entropy:Allow sky2 to populate the /dev/random entropy
pool (int)
[~]# uname -a
Linux gibraltar3-esys-master 2.6.28.10 #3 SMP PREEMPT Wed Jul 22
10:31:57 UTC 2009 i686 GNU/Linux

[~]# ifdown -a
[  311.812527] Dead loop on virtual device tun6to4, fix it urgently!
[  312.000037] sky2 0000:01:00.0: error interrupt status=0xffffffff
[  312.006303] sky2 0000:01:00.0: PCI hardware error (0xffff)
[  312.011902] sky2 0000:01:00.0: PCI Express error (0xffffffff)
[  312.017885] sky2 wan: ram data read parity error
[  312.022680] sky2 wan: ram data write parity error
[  312.027546] sky2 wan: MAC parity error
[  312.031444] sky2 wan: RX parity error
[  312.035241] sky2 wan: TCP segmentation error
[  312.039705] general protection fault: 0000 [#1] PREEMPT SMP
[  312.043677] last sysfs file:
/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
[  312.043677] Modules linked in: xt_multiport cpufreq_userspace xt_DSCP
xt_length xt_mark xt_dscp xt_MARK xt_CONNMARK xt_comment xt_policy
ipt_REDIRECT ip6t_LOG xt_tcpudp ip6table_mangle iptable_mangle
ip6table_filter ip6_tables sit tunnel4 8021q garp stp llc ipt_LOG
xt_limit xt_state iptable_nat iptable_filter ip_tables x_tables dm_mod
p4_clockmod speedstep_lib freq_table tun imq nf_nat_ftp nf_nat
nf_conntrack_ftp nf_conntrack_ipv6 nf_conntrack_ipv4 nf_conntrack
nf_defrag_ipv4 ipv6 evdev parport_pc parport i2c_i801 serio_raw pcspkr
i2c_core iTCO_wdt rng_core intel_agp agpgart squashfs sqlzma unlzma loop
aufs exportfs nls_utf8 nls_cp437 ide_generic sd_mod ide_gd_mod
ata_generic pata_acpi ata_piix piix ide_pci_generic ide_core skge sky2
thermal_sys
[  312.043677]
[  312.043677] Pid: 0, comm: swapper Not tainted (2.6.28.10 #3)
[  312.043677] EIP: 0060:[<f8080b6d>] EFLAGS: 00010286 CPU: 0
[  312.043677] EIP is at sky2_mac_intr+0x22/0x9d [sky2]
[  312.043677] EAX: f8090f88 EBX: 00000001 ECX: 00000008 EDX: 000000ff
[  312.043677] ESI: 00000000 EDI: f681ab80 EBP: 00000080 ESP: c0badec0
[  312.043677]  DS: 0068 ES: 0068 FS: 00d8 GS: 0000 SS: 0068
[  312.043677] Process swapper (pid: 0, ti=c0bac000 task=c0b59228
task.ti=c0bac000)
[  312.043677] Stack:
[  312.043677]  ff0844de f681ab88 ffffffff ffffffff f7146800 f8084acb
00000040 f681ab88
[  312.043677]  c0819b76 c0a6033a f681ab80 c0be5180 c08330e4 f6873c00
c0a604e8 c0be5180
[  312.043677]  c0be5180 c0833277 00000bd6 00000282 f6873c00 00000102
c0be5180 f86c8789
[  312.043677] Call Trace:
[  312.043677]  [<f8084acb>] sky2_poll+0x1cb/0xbec [sky2]
[  312.043677]  [<c0819b76>] default_spin_lock_flags+0x5/0x7
[  312.043677]  [<c0a6033a>] _spin_lock_irqsave+0x2d/0x33
[  312.043677]  [<c08330e4>] lock_timer_base+0x19/0x35
[  312.043677]  [<c0a604e8>] _spin_unlock_irqrestore+0x22/0x39
[  312.043677]  [<c0833277>] __mod_timer+0xc9/0xd2
[  312.043677]  [<f86c8789>] garp_join_timer+0x0/0x46 [garp]
[  312.043677]  [<c0832bcb>] run_timer_softirq+0x145/0x1a4
[  312.043677]  [<c0a6030a>] _spin_lock_irq+0x1e/0x21
[  312.043677]  [<c09eda45>] net_rx_action+0xb8/0x1f6
[  312.043677]  [<c082f954>] __do_softirq+0x95/0x142
[  312.043677]  [<c082fa49>] do_softirq+0x48/0x57
[  312.043677]  [<c082fbc9>] irq_exit+0x3b/0x78
[  312.043677]  [<c081218f>] smp_apic_timer_interrupt+0x75/0x7f
[  312.043677]  [<c0804f48>] apic_timer_interrupt+0x28/0x30
[  312.043677]  [<c080a2c6>] mwait_idle+0x2f/0x3b
[  312.043677]  [<c0802ac9>] cpu_idle+0x7a/0xad
[  312.043677] Code: 06 89 10 5f 5b 5e 5f 5d c3 55 89 d5 57 89 c7 56 53
89 d3 c1 e5 07 83 ec 04 8b 74 90 30 8d 85 08 0f 00 00 03 07 8a 10 88 54
24 03 <f6> 86 0d 05 00 00 02 74 12 0f b6 c2 50 56 68 13 6c 08 f8 e8 ba
[  312.043677] EIP: [<f8080b6d>] sky2_mac_intr+0x22/0x9d [sky2] SS:ESP
0068:c0badec0
[  312.315704] Kernel panic - not syncing: Fatal exception in interrupt
[  312.322253] Rebooting in 30 seconds..

Does that help in any way?

best regards,
Rene

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help