gretap+vlan+bridge==Oops (2.6.29)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

When doing on an intel architecture on 2.6.29 (with vserver
2.3.0.36.9 patches):
brctl addbr br-lan
ip link add greETH type gretap remote 10.41.1.234 local 10.41.1.173
ip link add link greETH name greeth type vlan id 1
brctl addif br-lan greeth

I get:
Apr 15 13:27:34 c32791 kernel: BUG: unable to handle kernel NULL pointer dereference at (null)
Apr 15 13:27:34 c32791 kernel: IP: [<f8ab8eaf>] vlan_ethtool_get_settings+0xd/0x1e [8021q]
Apr 15 13:27:34 c32791 kernel: *pde = 00000000 
Apr 15 13:27:34 c32791 kernel: Oops: 0000 [#1] PREEMPT SMP 
Apr 15 13:27:34 c32791 kernel: last sysfs file: /sys/class/net/lo/operstate
Apr 15 13:27:34 c32791 kernel: Modules linked in: 8021q bridge stp llc ip_gre cp2101 usbserial xt_multiport binfmt_misc ppdev lp rfkill_input af_packet iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 iptable_mangle iptable_filter ip_tables ip6table_mangle ip6t_LOG xt_limit xt_tcpudp nf_conntrack_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables x_tables fuse dm_snapshot dm_mirror dm_region_hash dm_log dm_mod lm85 hwmon_vid snd_intel8x0m kqemu nfsd exportfs nfs lockd nfs_acl auth_rpcgss sunrpc arc4 ecb b43 rfkill mac80211 cfg80211 mousedev led_class input_polldev usbhid ssb pcmcia snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device snd 8139too tg3 uhci_hcd soundcore ehci_hcd 8139cp rtc_cmos rtc_core libphy i2c_i801 parport_pc parport mii rtc_lib yenta_socket rsrc_nonstatic pcmcia_core floppy snd_page_alloc psmouse serio_raw usbcore sg sr_mod evdev cdrom
Apr 15 13:27:34 c32791 kernel: 
Apr 15 13:27:34 c32791 kernel: Pid: 18569, comm: brctl Not tainted (2.6.29-vs2.3.0.36.9-pre2-hp-d530 #1) HP d530 SFF(DC578AV)
Apr 15 13:27:34 c32791 kernel: EIP: 0060:[<f8ab8eaf>] EFLAGS: 00010246 CPU: 0
Apr 15 13:27:34 c32791 kernel: EIP is at vlan_ethtool_get_settings+0xd/0x1e [8021q]
Apr 15 13:27:34 c32791 kernel: EAX: 00000000 EBX: f73e5000 ECX: f8aba7e0 EDX: eb77fd74
Apr 15 13:27:34 c32791 kernel: ESI: ec3e0000 EDI: f3910480 EBP: f45ea480 ESP: eb77fd6c
Apr 15 13:27:34 c32791 kernel:  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Apr 15 13:27:34 c32791 kernel: Process brctl (pid: 18569, ti=eb77e000 task=f62e5770 task.ti=eb77e000)
Apr 15 13:27:34 c32791 kernel: Stack:
Apr 15 13:27:34 c32791 kernel:  ec3e0000 f86c31d8 00000001 00000000 00000000 00000000 00000000 00000000
Apr 15 13:27:34 c32791 kernel:  00000000 00000000 00000000 00000000 00000000 fffffff4 f86c350e c0555140
Apr 15 13:27:34 c32791 kernel:  f3910480 00000001 f3910480 c0279060 00000001 ec3e0000 f3910480 00000001
Apr 15 13:27:34 c32791 kernel: Call Trace:
Apr 15 13:27:34 c32791 kernel:  [<f86c31d8>] port_cost+0x36/0xb8 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<f86c350e>] br_add_if+0x10c/0x299 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<c0279060>] security_capable+0x22/0x27
Apr 15 13:27:34 c32791 kernel:  [<f86c3bea>] add_del_if+0x4a/0x68 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<f86c3c08>] br_dev_ioctl+0x0/0x695 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<f86c3c4b>] br_dev_ioctl+0x43/0x695 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<c018f1dd>] handle_mm_fault+0x124/0xa64
Apr 15 13:27:34 c32791 kernel:  [<c01abd5e>] do_lookup+0x7e/0x249
Apr 15 13:27:34 c32791 kernel:  [<c0390c95>] __dev_get_by_name+0x74/0x88
Apr 15 13:27:34 c32791 kernel:  [<f86c3c08>] br_dev_ioctl+0x0/0x695 [bridge]
Apr 15 13:27:34 c32791 kernel:  [<c0394246>] dev_ifsioc+0xcb/0x272
Apr 15 13:27:35 c32791 kernel:  [<c0393b0f>] dev_load+0x28/0x52
Apr 15 13:27:35 c32791 kernel:  [<c039474f>] dev_ioctl+0x362/0x5f1
Apr 15 13:27:35 c32791 kernel:  [<c03836fd>] sock_ioctl+0x0/0x220
Apr 15 13:27:35 c32791 kernel:  [<c01b0fd6>] vfs_ioctl+0x1f/0x6f
Apr 15 13:27:35 c32791 kernel:  [<c01b11ab>] do_vfs_ioctl+0x6e/0x566
Apr 15 13:27:35 c32791 kernel:  [<c01ba0e2>] mntput_no_expire+0x18/0x10e
Apr 15 13:27:35 c32791 kernel:  [<c045792c>] _spin_unlock+0xc/0x1f
Apr 15 13:27:35 c32791 kernel:  [<c01a208c>] filp_close+0x35/0x52
Apr 15 13:27:35 c32791 kernel:  [<c038550b>] sys_socket+0x5a/0x6b
Apr 15 13:27:35 c32791 kernel:  [<c01a2143>] sys_close+0x9a/0x149
Apr 15 13:27:35 c32791 kernel:  [<c038602a>] sys_socketcall+0x27f/0x286
Apr 15 13:27:35 c32791 kernel:  [<c01b1708>] sys_ioctl+0x65/0x69
Apr 15 13:27:35 c32791 kernel:  [<c010325a>] syscall_call+0x7/0xb
Apr 15 13:27:35 c32791 kernel: Code: b4 00 00 00 f6 40 30 02 74 0b 8b 49 38 85 c9 74 04 ff d1 90 c3 31 c0 90 8d 74 26 00 c3 c3 53 8b 98 ec 04 00 00 8b 83 b8 00 00 00 <8b> 08 b8 a1 ff ff ff 85 c9 74 04 89 d8 ff d1 5b c3 8b 80 ec 04 
Apr 15 13:27:35 c32791 kernel: EIP: [<f8ab8eaf>] vlan_ethtool_get_settings+0xd/0x1e [8021q] SS:ESP 0068:eb77fd6c
Apr 15 13:27:35 c32791 kernel: ---[ end trace c741446da241f528 ]---
(From:
ard@c32791:~$ cat /proc/version 
Linux version 2.6.29-vs2.3.0.36.9-pre2-hp-d530 (root@lennydev32)
(gcc version 4.3.2 (Debian 4.3.2-1.1) ) #1 SMP PREEMPT Mon Mar 30
11:57:32 UTC 2009)


However the same thing on a 2.6.28.9 on openwrt just works:
root@OpenWrt:/etc/config# cat /proc/version                                     
Linux version 2.6.28.9 (ard@lennydev64) (gcc version 4.1.2) #1
Tue Apr 14 12:549

I found that the 2.6.28.9 kernel does not have
vlan_ethtool_get_settings, and the 2.6.29 has:

in static int vlan_ethtool_get_settings:
        if (!real_dev->ethtool_ops->get_settings)
                return -EOPNOTSUPP;

I assume for now dat ethtool_ops do not exist on a gretap device.
So the question is: does gretap device need to set ethtool_ops, or does
vlan_ethtool_settings need to be changed into:
        if (!real_dev->ethtool_ops || !real_dev->ethtool_ops->get_settings)
                return -EOPNOTSUPP;

Regards,
Ard
/me wil add some checking to look what exactly is null.
-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in email?
--
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux