diff options
author | Mohammad Athari Bin Ismail <mohammad.athari.ismail@intel.com> | 2021-04-30 07:01:04 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-04-30 14:43:53 -0700 |
commit | db7c691d7f4da6af40a6ce63331a5a9fb9511c2a (patch) | |
tree | be01138045e2065013bc19fcd7765fa901b2be6f /drivers/net/ethernet | |
parent | d4eecfb28b963493a8701f271789ff04e92ae205 (diff) | |
download | linux-db7c691d7f4da6af40a6ce63331a5a9fb9511c2a.tar.gz linux-db7c691d7f4da6af40a6ce63331a5a9fb9511c2a.tar.bz2 linux-db7c691d7f4da6af40a6ce63331a5a9fb9511c2a.zip |
net: stmmac: cleared __FPE_REMOVING bit in stmmac_fpe_start_wq()
An issue found when network interface is down and up again, FPE handshake
fails to trigger. This is due to __FPE_REMOVING bit remains being set in
stmmac_fpe_stop_wq() but not cleared in stmmac_fpe_start_wq(). This
cause FPE workqueue task, stmmac_fpe_lp_task() not able to be executed.
To fix this, add clearing __FPE_REMOVING bit in stmmac_fpe_start_wq().
Fixes: 5a5586112b92 ("net: stmmac: support FPE link partner hand-shaking procedure")
Signed-off-by: Mohammad Athari Bin Ismail <mohammad.athari.ismail@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r-- | drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index a9a984c57d78..e0b7eebcb512 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -3180,6 +3180,7 @@ static int stmmac_fpe_start_wq(struct stmmac_priv *priv) char *name; clear_bit(__FPE_TASK_SCHED, &priv->fpe_task_state); + clear_bit(__FPE_REMOVING, &priv->fpe_task_state); name = priv->wq_name; sprintf(name, "%s-fpe", priv->dev->name); |