We can do better than just return 1 to userspace. Lets return a proper
Linux error code.

Signed-off-by: Jose Abreu <joab...@synopsys.com>

---
Cc: Giuseppe Cavallaro <peppe.cavall...@st.com>
Cc: Alexandre Torgue <alexandre.tor...@st.com>
Cc: Jose Abreu <joab...@synopsys.com>
Cc: "David S. Miller" <da...@davemloft.net>
Cc: Maxime Coquelin <mcoquelin.st...@gmail.com>
Cc: net...@vger.kernel.org
Cc: linux-st...@st-md-mailman.stormreply.com
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
 .../net/ethernet/stmicro/stmmac/stmmac_selftests.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 
b/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
index ecc8602c6799..d3234338a0ca 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
@@ -318,7 +318,7 @@ static int __stmmac_test_loopback(struct stmmac_priv *priv,
                attr->timeout = STMMAC_LB_TIMEOUT;
 
        wait_for_completion_timeout(&tpriv->comp, attr->timeout);
-       ret = !tpriv->ok;
+       ret = tpriv->ok ? 0 : -ETIMEDOUT;
 
 cleanup:
        if (!attr->dont_wait)
@@ -480,7 +480,7 @@ static int stmmac_test_hfilt(struct stmmac_priv *priv)
 
        /* Shall NOT receive packet */
        ret = __stmmac_test_loopback(priv, &attr);
-       ret = !ret;
+       ret = ret ? 0 : -EINVAL;
 
 cleanup:
        dev_mc_del(priv->dev, gd_addr);
@@ -512,7 +512,7 @@ static int stmmac_test_pfilt(struct stmmac_priv *priv)
 
        /* Shall NOT receive packet */
        ret = __stmmac_test_loopback(priv, &attr);
-       ret = !ret;
+       ret = ret ? 0 : -EINVAL;
 
 cleanup:
        dev_uc_del(priv->dev, gd_addr);
@@ -562,7 +562,7 @@ static int stmmac_test_mcfilt(struct stmmac_priv *priv)
 
        /* Shall NOT receive packet */
        ret = __stmmac_test_loopback(priv, &attr);
-       ret = !ret;
+       ret = ret ? 0 : -EINVAL;
 
 cleanup:
        dev_uc_del(priv->dev, uc_addr);
@@ -600,7 +600,7 @@ static int stmmac_test_ucfilt(struct stmmac_priv *priv)
 
        /* Shall NOT receive packet */
        ret = __stmmac_test_loopback(priv, &attr);
-       ret = !ret;
+       ret = ret ? 0 : -EINVAL;
 
 cleanup:
        dev_mc_del(priv->dev, mc_addr);
@@ -699,7 +699,7 @@ static int stmmac_test_flowctrl(struct stmmac_priv *priv)
        }
 
        wait_for_completion_timeout(&tpriv->comp, STMMAC_LB_TIMEOUT);
-       ret = !tpriv->ok;
+       ret = tpriv->ok ? 0 : -ETIMEDOUT;
 
 cleanup:
        dev_mc_del(priv->dev, paddr);
@@ -833,11 +833,11 @@ static int stmmac_test_vlanfilt(struct stmmac_priv *priv)
                        goto vlan_del;
 
                wait_for_completion_timeout(&tpriv->comp, STMMAC_LB_TIMEOUT);
-               ret = !tpriv->ok;
+               ret = tpriv->ok ? 0 : -ETIMEDOUT;
                if (ret && !i) {
                        goto vlan_del;
                } else if (!ret && i) {
-                       ret = -1;
+                       ret = -EINVAL;
                        goto vlan_del;
                } else {
                        ret = 0;
@@ -909,11 +909,11 @@ static int stmmac_test_dvlanfilt(struct stmmac_priv *priv)
                        goto vlan_del;
 
                wait_for_completion_timeout(&tpriv->comp, STMMAC_LB_TIMEOUT);
-               ret = !tpriv->ok;
+               ret = tpriv->ok ? 0 : -ETIMEDOUT;
                if (ret && !i) {
                        goto vlan_del;
                } else if (!ret && i) {
-                       ret = -1;
+                       ret = -EINVAL;
                        goto vlan_del;
                } else {
                        ret = 0;
@@ -998,7 +998,7 @@ static int stmmac_test_rxp(struct stmmac_priv *priv)
        attr.src = addr;
 
        ret = __stmmac_test_loopback(priv, &attr);
-       ret = !ret; /* Shall NOT receive packet */
+       ret = ret ? 0 : -EINVAL; /* Shall NOT receive packet */
 
        cls_u32.command = TC_CLSU32_DELETE_KNODE;
        stmmac_tc_setup_cls_u32(priv, priv, &cls_u32);
-- 
2.7.4

Reply via email to