From b3d420996696d1a720a27ad2a145e59baefb4fcf Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 30 Jan 2022 20:24:09 +0100 Subject: [PATCH] drop ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch from 4.4 and 4.9 --- ...sk_bound_dev_if-match-in-ping_lookup.patch | 46 ------------------- queue-4.4/series | 1 - ...sk_bound_dev_if-match-in-ping_lookup.patch | 46 ------------------- queue-4.9/series | 1 - 4 files changed, 94 deletions(-) delete mode 100644 queue-4.4/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch delete mode 100644 queue-4.9/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch diff --git a/queue-4.4/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch b/queue-4.4/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch deleted file mode 100644 index b3183f2a94b..00000000000 --- a/queue-4.4/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 2afc3b5a31f9edf3ef0f374f5d70610c79c93a42 Mon Sep 17 00:00:00 2001 -From: Xin Long -Date: Sat, 22 Jan 2022 06:40:56 -0500 -Subject: ping: fix the sk_bound_dev_if match in ping_lookup - -From: Xin Long - -commit 2afc3b5a31f9edf3ef0f374f5d70610c79c93a42 upstream. - -When 'ping' changes to use PING socket instead of RAW socket by: - - # sysctl -w net.ipv4.ping_group_range="0 100" - -the selftests 'router_broadcast.sh' will fail, as such command - - # ip vrf exec vrf-h1 ping -I veth0 198.51.100.255 -b - -can't receive the response skb by the PING socket. It's caused by mismatch -of sk_bound_dev_if and dif in ping_rcv() when looking up the PING socket, -as dif is vrf-h1 if dif's master was set to vrf-h1. - -This patch is to fix this regression by also checking the sk_bound_dev_if -against sdif so that the packets can stil be received even if the socket -is not bound to the vrf device but to the real iif. - -Fixes: c319b4d76b9e ("net: ipv4: add IPPROTO_ICMP socket kind") -Reported-by: Hangbin Liu -Signed-off-by: Xin Long -Signed-off-by: David S. Miller -Signed-off-by: Greg Kroah-Hartman ---- - net/ipv4/ping.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/net/ipv4/ping.c -+++ b/net/ipv4/ping.c -@@ -223,7 +223,8 @@ static struct sock *ping_lookup(struct n - continue; - } - -- if (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif) -+ if (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif && -+ sk->sk_bound_dev_if != inet_sdif(skb)) - continue; - - sock_hold(sk); diff --git a/queue-4.4/series b/queue-4.4/series index d19cdbbce8b..18d3a4413b0 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -14,7 +14,6 @@ scsi-bnx2fc-flush-destroy_work-queue-before-calling-bnx2fc_interface_put.patch ipv6_tunnel-rate-limit-warning-messages.patch arm-9170-1-fix-panic-when-kasan-and-kprobe-are-enabled.patch net-fix-information-leakage-in-proc-net-ptype.patch -ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch ipv4-avoid-using-shared-ip-generator-for-connected-sockets.patch net-procfs-show-net-devices-bound-packet-types.patch drm-msm-fix-wrong-size-calculation.patch diff --git a/queue-4.9/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch b/queue-4.9/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch deleted file mode 100644 index bc77f01d622..00000000000 --- a/queue-4.9/ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 2afc3b5a31f9edf3ef0f374f5d70610c79c93a42 Mon Sep 17 00:00:00 2001 -From: Xin Long -Date: Sat, 22 Jan 2022 06:40:56 -0500 -Subject: ping: fix the sk_bound_dev_if match in ping_lookup - -From: Xin Long - -commit 2afc3b5a31f9edf3ef0f374f5d70610c79c93a42 upstream. - -When 'ping' changes to use PING socket instead of RAW socket by: - - # sysctl -w net.ipv4.ping_group_range="0 100" - -the selftests 'router_broadcast.sh' will fail, as such command - - # ip vrf exec vrf-h1 ping -I veth0 198.51.100.255 -b - -can't receive the response skb by the PING socket. It's caused by mismatch -of sk_bound_dev_if and dif in ping_rcv() when looking up the PING socket, -as dif is vrf-h1 if dif's master was set to vrf-h1. - -This patch is to fix this regression by also checking the sk_bound_dev_if -against sdif so that the packets can stil be received even if the socket -is not bound to the vrf device but to the real iif. - -Fixes: c319b4d76b9e ("net: ipv4: add IPPROTO_ICMP socket kind") -Reported-by: Hangbin Liu -Signed-off-by: Xin Long -Signed-off-by: David S. Miller -Signed-off-by: Greg Kroah-Hartman ---- - net/ipv4/ping.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/net/ipv4/ping.c -+++ b/net/ipv4/ping.c -@@ -225,7 +225,8 @@ static struct sock *ping_lookup(struct n - continue; - } - -- if (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif) -+ if (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif && -+ sk->sk_bound_dev_if != inet_sdif(skb)) - continue; - - sock_hold(sk); diff --git a/queue-4.9/series b/queue-4.9/series index 5676a4f3817..2b2923d5203 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -16,7 +16,6 @@ scsi-bnx2fc-flush-destroy_work-queue-before-calling-bnx2fc_interface_put.patch ipv6_tunnel-rate-limit-warning-messages.patch arm-9170-1-fix-panic-when-kasan-and-kprobe-are-enabled.patch net-fix-information-leakage-in-proc-net-ptype.patch -ping-fix-the-sk_bound_dev_if-match-in-ping_lookup.patch ipv4-avoid-using-shared-ip-generator-for-connected-sockets.patch nfsv4-handle-case-where-the-lookup-of-a-directory-fails.patch nfsv4-nfs_atomic_open-can-race-when-looking-up-a-non-regular-file.patch -- 2.47.3