Hi all, Today's linux-next merge of the net-next tree got a conflict in: drivers/net/amt.c between commit: 3656a79f94c47 ("amt: re-read skb header pointers after every pull") from the net tree and commit: 586c4dcf28eb6 ("amt: no longer rely on RTNL in amt_fill_info()") from the net-next tree. I fixed it up (see below) and can carry the fix as necessary. This is now fixed as far as linux-next is concerned, but any non trivial conflicts should be mentioned to your upstream maintainer when your tree is submitted for merging. You may also want to consider cooperating with the maintainer of the conflicting tree to minimise any particularly complex conflicts. diff --cc drivers/net/amt.c index b733309b866ff,f8169c5512a59..0000000000000 --- a/drivers/net/amt.c +++ b/drivers/net/amt.c @@@ -2811,7 -2775,8 +2814,8 @@@ drop static int amt_rcv(struct sock *sk, struct sk_buff *skb) { struct amt_dev *amt; - struct iphdr *iph; + __be32 saddr; + __be32 remote_ip; int type; bool err; @@@ -2822,9 -2787,10 +2826,10 @@@ kfree_skb(skb); goto out; } + remote_ip = READ_ONCE(amt->remote_ip); skb->dev = amt->dev; - iph = ip_hdr(skb); + saddr = ip_hdr(skb)->saddr; type = amt_parse_type(skb); if (type == -1) { err = true; @@@ -2846,7 -2812,7 +2851,7 @@@ } goto out; case AMT_MSG_MULTICAST_DATA: - if (saddr != amt->remote_ip) { - if (iph->saddr != remote_ip) { ++ if (saddr != remote_ip) { netdev_dbg(amt->dev, "Invalid Relay IP\n"); err = true; goto drop; @@@ -2857,7 -2823,7 +2862,7 @@@ else goto out; case AMT_MSG_MEMBERSHIP_QUERY: - if (saddr != amt->remote_ip) { - if (iph->saddr != remote_ip) { ++ if (saddr != remote_ip) { netdev_dbg(amt->dev, "Invalid Relay IP\n"); err = true; goto drop;