[PATCH net-next] failover: remove set but not used variable 'primary_dev'

Subsystems: networking drivers, net_failover module, the rest

STALE2894d

8 messages, 4 authors, 2018-09-06 · open the first message on its own page

[PATCH net-next] failover: remove set but not used variable 'primary_dev'

From: YueHaibing <hidden>
Date: 2018-08-31 07:41:59

Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
 variable 'primary_dev' set but not used [-Wunused-but-set-variable]

Signed-off-by: YueHaibing <redacted>
---
 drivers/net/net_failover.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..e103c94e 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -595,12 +595,11 @@ static int net_failover_slave_pre_unregister(struct net_device *slave_dev,
 static int net_failover_slave_unregister(struct net_device *slave_dev,
 					 struct net_device *failover_dev)
 {
-	struct net_device *standby_dev, *primary_dev;
+	struct net_device *standby_dev;
 	struct net_failover_info *nfo_info;
 	bool slave_is_standby;
 
 	nfo_info = netdev_priv(failover_dev);
-	primary_dev = rtnl_dereference(nfo_info->primary_dev);
 	standby_dev = rtnl_dereference(nfo_info->standby_dev);
 
 	vlan_vids_del_by_dev(slave_dev, failover_dev);

Re: [PATCH net-next] failover: remove set but not used variable 'primary_dev'

From: "Samudrala, Sridhar" <sridhar.samudrala@intel.com>
Date: 2018-08-31 20:48:11

On 8/30/2018 8:46 PM, YueHaibing wrote:
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
  variable 'primary_dev' set but not used [-Wunused-but-set-variable]
Actually this gcc option found a bug.
We need to add this check after accessing primary_dev and standby_dev.

         if (slave_dev != primary_dev && slave_dev != standby_dev)
                 return -ENODEV;

Can you resubmit with the right fix?

quoted hunk
Signed-off-by: YueHaibing <redacted>
---
  drivers/net/net_failover.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..e103c94e 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -595,12 +595,11 @@ static int net_failover_slave_pre_unregister(struct net_device *slave_dev,
  static int net_failover_slave_unregister(struct net_device *slave_dev,
  					 struct net_device *failover_dev)
  {
-	struct net_device *standby_dev, *primary_dev;
+	struct net_device *standby_dev;
  	struct net_failover_info *nfo_info;
  	bool slave_is_standby;
  
  	nfo_info = netdev_priv(failover_dev);
-	primary_dev = rtnl_dereference(nfo_info->primary_dev);
  	standby_dev = rtnl_dereference(nfo_info->standby_dev);
  
  	vlan_vids_del_by_dev(slave_dev, failover_dev);

Re: [PATCH net-next] failover: remove set but not used variable 'primary_dev'

From: YueHaibing <hidden>
Date: 2018-09-01 05:44:37


On 2018/9/1 0:39, Samudrala, Sridhar wrote:
On 8/30/2018 8:46 PM, YueHaibing wrote:
quoted
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
  variable 'primary_dev' set but not used [-Wunused-but-set-variable]
Actually this gcc option found a bug.
We need to add this check after accessing primary_dev and standby_dev.

        if (slave_dev != primary_dev && slave_dev != standby_dev)
                return -ENODEV;

Can you resubmit with the right fix?
sure, thank you. will send v2
quoted
Signed-off-by: YueHaibing <redacted>
---
  drivers/net/net_failover.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..e103c94e 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -595,12 +595,11 @@ static int net_failover_slave_pre_unregister(struct net_device *slave_dev,
  static int net_failover_slave_unregister(struct net_device *slave_dev,
                       struct net_device *failover_dev)
  {
-    struct net_device *standby_dev, *primary_dev;
+    struct net_device *standby_dev;
      struct net_failover_info *nfo_info;
      bool slave_is_standby;
        nfo_info = netdev_priv(failover_dev);
-    primary_dev = rtnl_dereference(nfo_info->primary_dev);
      standby_dev = rtnl_dereference(nfo_info->standby_dev);
        vlan_vids_del_by_dev(slave_dev, failover_dev);

.

[PATCH net-next] failover: Add missing check to validate 'slave_dev' in net_failover_slave_unregister

From: YueHaibing <hidden>
Date: 2018-09-01 07:06:39

Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
 variable 'primary_dev' set but not used [-Wunused-but-set-variable]

There should check the validity of 'slave_dev'.

Fixes: cfc80d9a1163 ("net: Introduce net_failover driver")
Suggested-by: Samudrala, Sridhar <sridhar.samudrala@intel.com>
Signed-off-by: YueHaibing <redacted>
---
 drivers/net/net_failover.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..af1ece8 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -602,6 +602,9 @@ static int net_failover_slave_unregister(struct net_device *slave_dev,
 	nfo_info = netdev_priv(failover_dev);
 	primary_dev = rtnl_dereference(nfo_info->primary_dev);
 	standby_dev = rtnl_dereference(nfo_info->standby_dev);
+
+	if (slave_dev != primary_dev && slave_dev != standby_dev)
+		return -ENODEV;
 
 	vlan_vids_del_by_dev(slave_dev, failover_dev);
 	dev_uc_unsync(slave_dev, failover_dev);

Re: [PATCH net-next] failover: Add missing check to validate 'slave_dev' in net_failover_slave_unregister

From: Liran Alon <hidden>
Date: 2018-09-02 12:49:50

quoted hunk
On 1 Sep 2018, at 6:06, YueHaibing [off-list ref] wrote:

Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
variable 'primary_dev' set but not used [-Wunused-but-set-variable]

There should check the validity of 'slave_dev'.

Fixes: cfc80d9a1163 ("net: Introduce net_failover driver")
Suggested-by: Samudrala, Sridhar <sridhar.samudrala@intel.com>
Signed-off-by: YueHaibing <redacted>
---
drivers/net/net_failover.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..af1ece8 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -602,6 +602,9 @@ static int net_failover_slave_unregister(struct net_device *slave_dev,
	nfo_info = netdev_priv(failover_dev);
	primary_dev = rtnl_dereference(nfo_info->primary_dev);
	standby_dev = rtnl_dereference(nfo_info->standby_dev);
+
+	if (slave_dev != primary_dev && slave_dev != standby_dev)
+		return -ENODEV;
As this condition signals a bug, I think we should instead:
if (WARN_ON_ONCE((slave_dev != primary_dev) && (slave_dev != standby_dev))
    return -ENODEV;
	vlan_vids_del_by_dev(slave_dev, failover_dev);
	dev_uc_unsync(slave_dev, failover_dev);

[PATCH v2 net-next] failover: Add missing check to validate 'slave_dev' in net_failover_slave_unregister

From: YueHaibing <hidden>
Date: 2018-09-04 07:09:05

Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
 variable 'primary_dev' set but not used [-Wunused-but-set-variable]

There should check the validity of 'slave_dev'.

Fixes: cfc80d9a1163 ("net: Introduce net_failover driver")

Signed-off-by: YueHaibing <redacted>
---
v2: use WARN_ON_ONCE as Liran Alon suggested
---
 drivers/net/net_failover.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..5a749dc 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -603,6 +603,9 @@ static int net_failover_slave_unregister(struct net_device *slave_dev,
 	primary_dev = rtnl_dereference(nfo_info->primary_dev);
 	standby_dev = rtnl_dereference(nfo_info->standby_dev);
 
+	if (WARN_ON_ONCE(slave_dev != primary_dev && slave_dev != standby_dev))
+		return -ENODEV;
+
 	vlan_vids_del_by_dev(slave_dev, failover_dev);
 	dev_uc_unsync(slave_dev, failover_dev);
 	dev_mc_unsync(slave_dev, failover_dev);

Re: [PATCH v2 net-next] failover: Add missing check to validate 'slave_dev' in net_failover_slave_unregister

From: "Samudrala, Sridhar" <sridhar.samudrala@intel.com>
Date: 2018-09-04 21:02:53

On 9/3/2018 7:56 PM, YueHaibing wrote:
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
  variable 'primary_dev' set but not used [-Wunused-but-set-variable]

There should check the validity of 'slave_dev'.

Fixes: cfc80d9a1163 ("net: Introduce net_failover driver")

Signed-off-by: YueHaibing <redacted>
Acked-by: Sridhar Samudrala <sridhar.samudrala@intel.com>

quoted hunk
---
v2: use WARN_ON_ONCE as Liran Alon suggested
---
  drivers/net/net_failover.c | 3 +++
  1 file changed, 3 insertions(+)
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
index 7ae1856..5a749dc 100644
--- a/drivers/net/net_failover.c
+++ b/drivers/net/net_failover.c
@@ -603,6 +603,9 @@ static int net_failover_slave_unregister(struct net_device *slave_dev,
  	primary_dev = rtnl_dereference(nfo_info->primary_dev);
  	standby_dev = rtnl_dereference(nfo_info->standby_dev);
  
+	if (WARN_ON_ONCE(slave_dev != primary_dev && slave_dev != standby_dev))
+		return -ENODEV;
+
  	vlan_vids_del_by_dev(slave_dev, failover_dev);
  	dev_uc_unsync(slave_dev, failover_dev);
  	dev_mc_unsync(slave_dev, failover_dev);

Re: [PATCH v2 net-next] failover: Add missing check to validate 'slave_dev' in net_failover_slave_unregister

From: David Miller <davem@davemloft.net>
Date: 2018-09-06 09:50:08

From: YueHaibing <redacted>
Date: Tue, 4 Sep 2018 02:56:26 +0000
Fixes gcc '-Wunused-but-set-variable' warning:

drivers/net/net_failover.c: In function 'net_failover_slave_unregister':
drivers/net/net_failover.c:598:35: warning:
 variable 'primary_dev' set but not used [-Wunused-but-set-variable]

There should check the validity of 'slave_dev'.

Fixes: cfc80d9a1163 ("net: Introduce net_failover driver")

Signed-off-by: YueHaibing <redacted>
---
v2: use WARN_ON_ONCE as Liran Alon suggested
Applied.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help