[PATCH net-next v2] net/ip6mr: Fix build with !CONFIG_IPV6_PIMSM_V2
From: Dmitry Safonov
Date: Fri Feb 25 2022 - 09:52:16 EST
The following build-error on my config:
net/ipv6/ip6mr.c: In function ‘ip6_mroute_setsockopt’:
net/ipv6/ip6mr.c:1656:14: error: unused variable ‘do_wrmifwhole’ [-Werror=unused-variable]
1656 | bool do_wrmifwhole;
| ^
Cc: Mobashshera Rasool <mobash.rasool.linux@xxxxxxxxx>
Cc: David S. Miller <davem@xxxxxxxxxxxxx>
Cc: Hideaki YOSHIFUJI <yoshfuji@xxxxxxxxxxxxxx>
Cc: David Ahern <dsahern@xxxxxxxxxx>
Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
Cc: netdev@xxxxxxxxxxxxxxx
Fixes: 4b340a5a726d
Signed-off-by: Dmitry Safonov <dima@xxxxxxxxxx>
---
v2: move the (v == MRT6MSG_WRMIFWHOLE) check under if (v != mrt->mroute_do_pim)
net/ipv6/ip6mr.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c
index a9775c830194..9292f067c829 100644
--- a/net/ipv6/ip6mr.c
+++ b/net/ipv6/ip6mr.c
@@ -1653,7 +1653,6 @@ int ip6_mroute_setsockopt(struct sock *sk, int optname, sockptr_t optval,
mifi_t mifi;
struct net *net = sock_net(sk);
struct mr_table *mrt;
- bool do_wrmifwhole;
if (sk->sk_type != SOCK_RAW ||
inet_sk(sk)->inet_num != IPPROTO_ICMPV6)
@@ -1761,6 +1760,7 @@ int ip6_mroute_setsockopt(struct sock *sk, int optname, sockptr_t optval,
#ifdef CONFIG_IPV6_PIMSM_V2
case MRT6_PIM:
{
+ bool do_pim;
int v;
if (optlen != sizeof(v))
@@ -1768,14 +1768,14 @@ int ip6_mroute_setsockopt(struct sock *sk, int optname, sockptr_t optval,
if (copy_from_sockptr(&v, optval, sizeof(v)))
return -EFAULT;
- do_wrmifwhole = (v == MRT6MSG_WRMIFWHOLE);
- v = !!v;
+ do_pim = !!v;
+
rtnl_lock();
ret = 0;
- if (v != mrt->mroute_do_pim) {
- mrt->mroute_do_pim = v;
- mrt->mroute_do_assert = v;
- mrt->mroute_do_wrvifwhole = do_wrmifwhole;
+ if (do_pim != mrt->mroute_do_pim) {
+ mrt->mroute_do_pim = do_pim;
+ mrt->mroute_do_assert = do_pim;
+ mrt->mroute_do_wrvifwhole = (v == MRT6MSG_WRMIFWHOLE);
}
rtnl_unlock();
return ret;
--
2.35.1