linux/net/core
Doug Kehn d7091c2bbd net/core: neighbour update Oops
commit 91a72a7059 upstream.

When configuring DMVPN (GRE + openNHRP) and a GRE remote
address is configured a kernel Oops is observed.  The
obserseved Oops is caused by a NULL header_ops pointer
(neigh->dev->header_ops) in neigh_update_hhs() when

void (*update)(struct hh_cache*, const struct net_device*, const unsigned char *)
= neigh->dev->header_ops->cache_update;

is executed.  The dev associated with the NULL header_ops is
the GRE interface.  This patch guards against the
possibility that header_ops is NULL.

This Oops was first observed in kernel version 2.6.26.8.

Signed-off-by: Doug Kehn <rdkehn@yahoo.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-02 10:20:53 -07:00
..
datagram.c net: fix sk_forward_alloc corruption 2009-10-30 12:25:12 -07:00
dev_mcast.c net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
dev.c net: bug fix for vlan + gro issue 2010-03-15 08:49:39 -07:00
drop_monitor.c net: drop_monitor: make last_rx timestamp private 2009-09-02 14:37:45 -07:00
dst.c dst: call cond_resched() in dst_gc_task() 2010-02-23 07:37:55 -08:00
ethtool.c net/ethtool: Add support for the ethtool feature to flash firmware image from a specified file. 2009-09-02 23:07:39 -07:00
fib_rules.c net: Remove unused parameter from fill method in fib_rules_ops. 2009-05-20 17:26:23 -07:00
filter.c filter: add SKF_AD_NLATTR_NEST to look for nested attributes 2008-11-20 00:49:27 -08:00
flow.c netns xfrm: lookup in netns 2008-11-25 17:35:18 -08:00
gen_estimator.c net: restore gnet_stats_basic to previous definition 2009-08-17 21:33:49 -07:00
gen_stats.c net: restore gnet_stats_basic to previous definition 2009-08-17 21:33:49 -07:00
iovec.c net: Fix memcpy_toiovecend() to use the right offset 2009-06-08 00:25:39 -07:00
kmap_skb.h
link_watch.c Revert "net: Fix for initial link state in 2.6.28" 2009-01-05 16:01:51 -08:00
Makefile Network Drop Monitor: Adding Build changes to enable drop monitor 2009-03-13 12:09:29 -07:00
neighbour.c net/core: neighbour update Oops 2010-08-02 10:20:53 -07:00
net_namespace.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-08-12 17:44:53 -07:00
net-sysfs.c net-sysfs: Use rtnl_trylock in wireless sysfs methods. 2010-03-15 08:49:38 -07:00
net-sysfs.h
net-traces.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
netevent.c
netpoll.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-09-02 00:32:56 -07:00
pktgen.c pktgen: Fix freezing problem 2010-02-23 07:37:56 -08:00
request_sock.c
rtnetlink.c net: Fix userspace RTM_NEWLINK notifications. 2009-12-18 14:05:38 -08:00
scm.c scm: Only support SCM_RIGHTS on unix domain sockets. 2010-03-15 08:49:58 -07:00
skb_dma_map.c net: skb_shared_info optimization 2009-06-08 00:21:48 -07:00
skbuff.c gro: Fix illegal merging of trailer trash 2009-11-17 05:18:18 -08:00
sock.c tcp: update the netstamp_needed counter when cloning sockets 2010-02-09 04:50:55 -08:00
stream.c tcp: tcp_prequeue() can use keyed wakeups 2009-05-17 20:44:43 -07:00
sysctl_net_core.c sysctl: fix sparse warning: Should it be static? 2009-02-26 23:13:34 -08:00
user_dma.c net/core/user_dma.c: Use frag list abstraction interfaces. 2009-06-09 00:19:10 -07:00
utils.c net: core: remove unneeded include in net/core/utils.c. 2009-03-26 01:11:48 -07:00