Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec
Steffen Klassert says: ==================== pull request (net): ipsec 2018-03-29 1) Fix a rcu_read_lock/rcu_read_unlock imbalance in the error path of xfrm_local_error(). From Taehee Yoo. 2) Some VTI MTU fixes. From Stefano Brivio. 3) Fix a too early overwritten skb control buffer on xfrm transport mode. Please note that this pull request has a merge conflict in net/ipv4/ip_tunnel.c. The conflict is between commitf6cc9c054e
("ip_tunnel: Emit events for post-register MTU changes") from the net tree and commit24fc79798b
("ip_tunnel: Clamp MTU to bounds on new link") from the ipsec tree. It can be solved as it is currently done in linux-next. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -1117,7 +1117,12 @@ int ip_tunnel_newlink(struct net_device *dev, struct nlattr *tb[],
|
||||
eth_hw_addr_random(dev);
|
||||
|
||||
mtu = ip_tunnel_bind_dev(dev);
|
||||
if (!tb[IFLA_MTU]) {
|
||||
if (tb[IFLA_MTU]) {
|
||||
unsigned int max = 0xfff8 - dev->hard_header_len - nt->hlen;
|
||||
|
||||
dev->mtu = clamp(dev->mtu, (unsigned int)ETH_MIN_MTU,
|
||||
(unsigned int)(max - sizeof(struct iphdr)));
|
||||
} else {
|
||||
err = dev_set_mtu(dev, mtu);
|
||||
if (err)
|
||||
goto err_dev_set_mtu;
|
||||
|
@@ -387,8 +387,6 @@ static int vti_tunnel_init(struct net_device *dev)
|
||||
memcpy(dev->dev_addr, &iph->saddr, 4);
|
||||
memcpy(dev->broadcast, &iph->daddr, 4);
|
||||
|
||||
dev->hard_header_len = LL_MAX_HEADER + sizeof(struct iphdr);
|
||||
dev->mtu = ETH_DATA_LEN;
|
||||
dev->flags = IFF_NOARP;
|
||||
dev->addr_len = 4;
|
||||
dev->features |= NETIF_F_LLTX;
|
||||
|
Reference in New Issue
Block a user