mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-26 00:41:17 +00:00
28 lines
1002 B
Diff
28 lines
1002 B
Diff
|
From f9c647d5df14aab2ce40b77a2d8daf9e2065a165 Mon Sep 17 00:00:00 2001
|
||
|
From: Jan Kiszka <jan.kiszka@siemens.com>
|
||
|
Date: Sun, 4 Mar 2018 13:16:04 +0100
|
||
|
Subject: [PATCH] ivshmem-net: Fix bogus transition to RESET state
|
||
|
|
||
|
If we are in READY but the remote is still in INIT, we so far fell back
|
||
|
to RESET which caused the setup to get stuck. Fix this by only
|
||
|
transitioning from READY/RUN to RESET in ivshm_net_state_change if the
|
||
|
remote is in RESET as well.
|
||
|
|
||
|
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
|
||
|
(cherry picked from commit b58915e11eba2643d5c68ea0328823a62c21dc49)
|
||
|
---
|
||
|
drivers/net/ivshmem-net.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
--- a/drivers/net/ivshmem-net.c
|
||
|
+++ b/drivers/net/ivshmem-net.c
|
||
|
@@ -598,7 +598,7 @@ static void ivshm_net_state_change(struc
|
||
|
if (rstate >= IVSHM_NET_STATE_READY) {
|
||
|
netif_carrier_on(ndev);
|
||
|
ivshm_net_run(ndev);
|
||
|
- } else {
|
||
|
+ } else if (rstate == IVSHM_NET_STATE_RESET) {
|
||
|
netif_carrier_off(ndev);
|
||
|
ivshm_net_do_stop(ndev);
|
||
|
}
|