qed: Fix possible race for the link state value.

There's a possible race where driver can read link status in mid-transition
and see that virtual-link is up yet speed is 0. Since in this
mid-transition we're guaranteed to see a mailbox from MFW soon, we can
afford to treat this as link down.

Fixes: cc875c2e ("qed: Add link support")
Signed-off-by: Sudarsana Reddy Kalluru <Sudarsana.Kalluru@cavium.com>
Signed-off-by: Ariel Elior <ariel.elior@cavium.com>
Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Sudarsana Reddy Kalluru 2018-07-18 22:50:03 -07:00 committed by David S. Miller
parent 4ad95a93a7
commit 58874c7b24
1 changed files with 1 additions and 0 deletions

View File

@ -1211,6 +1211,7 @@ static void qed_mcp_handle_link_change(struct qed_hwfn *p_hwfn,
break; break;
default: default:
p_link->speed = 0; p_link->speed = 0;
p_link->link_up = 0;
} }
if (p_link->link_up && p_link->speed) if (p_link->link_up && p_link->speed)