diff options
author | Sascha Hlusiak <contact@saschahlusiak.de> | 2009-07-12 05:30:52 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-07-12 05:30:52 +0200 |
commit | f2ba025b2036e52a176cddcf91b15ac2b10c644a (patch) | |
tree | 5af959232c95ec4b931b2ac6f9f2063c93345e6f /net | |
parent | net: ip_push_pending_frames() fix (diff) | |
download | linux-f2ba025b2036e52a176cddcf91b15ac2b10c644a.tar.xz linux-f2ba025b2036e52a176cddcf91b15ac2b10c644a.zip |
sit: fix regression: do not release skb->dst before xmit
The sit module makes use of skb->dst in it's xmit function, so since
93f154b594fe47 ("net: release dst entry in dev_hard_start_xmit()") sit
tunnels are broken, because the flag IFF_XMIT_DST_RELEASE is not
unset.
This patch unsets that flag for sit devices to fix this
regression.
Signed-off-by: Sascha Hlusiak <contact@saschahlusiak.de>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/sit.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c index 68e52308e552..98b7327d0949 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c @@ -1018,6 +1018,7 @@ static void ipip6_tunnel_setup(struct net_device *dev) dev->hard_header_len = LL_MAX_HEADER + sizeof(struct iphdr); dev->mtu = ETH_DATA_LEN - sizeof(struct iphdr); dev->flags = IFF_NOARP; + dev->priv_flags &= ~IFF_XMIT_DST_RELEASE; dev->iflink = 0; dev->addr_len = 4; dev->features |= NETIF_F_NETNS_LOCAL; |