after a kernel update from 2.6.27.45 to 2.6.27.48 (update SUSE-SA:2010:031) i have problems with the gre tunnels in our intranet. The tunnels are visible, but making a tcpdump from a remote endpoint i get the error message protocol 47 unreachable, length 100.
The problem is the change of the ip_gre module in ip_gre.c in the __init ipgre_init(void) function. The parenthesis is missing. static int __init ipgre_init(void) { int err; printk(KERN_INFO "GRE over IPv4 tunneling driver\n"); + err = register_pernet_gen_device(&ipgre_net_id, &ipgre_net_ops); + if (err < 0) + printk(KERN_INFO "ipgre init: can't register device\n"); + return err; + if (inet_add_protocol(&ipgre_protocol, IPPROTO_GRE) < 0) { printk(KERN_INFO "ipgre init: can't add protocol\n"); + unregister_pernet_gen_device(ipgre_net_id, &ipgre_net_ops); return -EAGAIN; } - err = register_pernet_gen_device(&ipgre_net_id, &ipgre_net_ops); - if (err < 0) - inet_del_protocol(&ipgre_protocol, IPPROTO_GRE); - return err; } best regardings Wolfgang -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org