Subject: Re: [Bugme-new] [Bug 8057] New: slab corruption running ip6sic

From: Eric Sesterhenn / Snakebyte <[email-masked]>
Date: Wed, 25 Apr 2007 10:27:59 +0200

* Herbert Xu ([email-masked]) wrote:
> Jarek Poplawski <[email-masked]> wrote:
> >
> > My proposal is: maybe Eric could change this in
> > xfrm6_tunnel_rcv() from xfrm6_tunnel.c e.g. like this:
> > 
> > return xfrm6_rcv_spi(skb, spi) > 0 ? : 0;
> > 
> > and, if no errors in testing, he could resubmit this patch? 
> 
> I agree, this is the right fix.

The fix proposed by Jarek indeed fixes the problem, tested on two boxes,
with an -rc5 kernel and a yesterdays git

Acked-by: Eric Sesterhenn <[email-masked]>

--- linux-2.6/net/ipv6/xfrm6_tunnel.c.orig	2007-04-25 00:22:30.000000000 +0200
+++ linux-2.6/net/ipv6/xfrm6_tunnel.c	2007-04-25 00:22:45.000000000 +0200
@@ -261,7 +261,7 @@ static int xfrm6_tunnel_rcv(struct sk_bu
 	__be32 spi;
 
 	spi = xfrm6_tunnel_spi_lookup((xfrm_address_t *)&iph->saddr);
-	return xfrm6_rcv_spi(skb, spi);
+	return xfrm6_rcv_spi(skb, spi) > 0 ? : 0;
 }
 
 static int xfrm6_tunnel_err(struct sk_buff *skb, struct inet6_skb_parm *opt,