]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - include/net/ip.h
ipv4: better IP_MAX_MTU enforcement
[mirror_ubuntu-artful-kernel.git] / include / net / ip.h
index 821cedcc8e73b68af72d1918242c25d757c63d24..0cf7f5a65fe6be2be30259aa5cd251d02de489d5 100644 (file)
@@ -352,7 +352,7 @@ static inline unsigned int ip_dst_mtu_maybe_forward(const struct dst_entry *dst,
            !forwarding)
                return dst_mtu(dst);
 
-       return min(dst->dev->mtu, IP_MAX_MTU);
+       return min(READ_ONCE(dst->dev->mtu), IP_MAX_MTU);
 }
 
 static inline unsigned int ip_skb_dst_mtu(struct sock *sk,
@@ -364,7 +364,7 @@ static inline unsigned int ip_skb_dst_mtu(struct sock *sk,
                return ip_dst_mtu_maybe_forward(skb_dst(skb), forwarding);
        }
 
-       return min(skb_dst(skb)->dev->mtu, IP_MAX_MTU);
+       return min(READ_ONCE(skb_dst(skb)->dev->mtu), IP_MAX_MTU);
 }
 
 u32 ip_idents_reserve(u32 hash, int segs);