ipv4: do not destroy neighbour on dead device

Neighbour (ARP) table is dead at this point.

Signed-off-by: Denis V. Lunev <den@parallels.com>
=================================================
--- ./net/core/neighbour.c.dst4	2008-09-29 15:05:53.000000000 +0400
+++ ./net/core/neighbour.c	2008-09-29 15:06:03.000000000 +0400
@@ -564,6 +564,13 @@ void neigh_destroy(struct neighbour *nei
 {
 	struct hh_cache *hh;
 
+	if (neigh->dev->is_leaked) {
+		printk(KERN_WARNING
+		       "Destroying neighbour %p on leaked device\n", neigh);
+		dump_stack();
+		return;
+	}
+
 	NEIGH_CACHE_STAT_INC(neigh->tbl, destroys);
 
 	if (!neigh->dead) {
