[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20110131.131518.39181100.davem@davemloft.net>
Date: Mon, 31 Jan 2011 13:15:18 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: roland@...italvampire.org
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH] Add default_mtu() methods to blackhole dst_ops
From: Roland Dreier <roland@...italvampire.org>
Date: Mon, 31 Jan 2011 13:12:58 -0800
> From: Roland Dreier <roland@...estorage.com>
>
> When an IPSEC SA is still being set up, __xfrm_lookup() will return
> -EREMOTE and so ip_route_output_flow() will return a blackhole route.
> This can happen in a sndmsg call, and after d33e455337ea ("net: Abstract
> default MTU metric calculation behind an accessor.") this leads to a
> crash in ip_append_data() because the blackhole dst_ops have no
> default_mtu() method and so dst_mtu() calls a NULL pointer.
>
> Fix this by adding default_mtu() methods (that simply return 0, matching
> the old behavior) to the blackhole dst_ops.
>
> The IPv4 part of this patch fixes a crash that I saw when using an IPSEC
> VPN; the IPv6 part is untested because I don't have an IPv6 VPN, but it
> looks to be needed as well.
>
> Signed-off-by: Roland Dreier <roland@...estorage.com>
Thanks so much for tracking this down and fixing it. I was going to look
at your traces and report later today.
I'll apply this, thanks again Roland.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists