(). Otherwise
cancel_work_sync() will wait forever for tg3_reset_task() to
finish.
Reported-by: David Christensen
Reported-by: Baptiste Covolato
Fixes: db2199737990 ("tg3: Schedule at most one tg3_reset_task run")
Signed-off-by: Michael Chan
Thanks for the patch, I'll have some test
"Frozen" state.
Signed-off-by: David Christensen
---
drivers/net/ethernet/broadcom/tg3.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/tg3.c
b/drivers/net/ethernet/broadcom/tg3.c
index 7a3b22b35238..ebff1fc0d8ce 100644
--- a/d
"Frozen" state.
Signed-off-by: David Christensen
---
drivers/net/ethernet/broadcom/tg3.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/tg3.c
b/drivers/net/ethernet/broadcom/tg3.c
index 7a3b22b35238..ebff1fc0d8ce 100644
--- a/drivers/ne
On 6/15/20 1:45 PM, Michael Chan wrote:
On Mon, Jun 15, 2020 at 12:01 PM David Christensen
wrote:
The driver function tg3_io_error_detected() calls napi_disable twice,
without an intervening napi_enable, when the number of EEH errors exceeds
eeh_max_freezes, resulting in an indefinite sleep
called again with the state pci_channel_io_perm_failure when the
number of EEH failures in an hour exceeds eeh_max_freezes.
Protecting the calls to napi_enable/napi_disable with a new state
variable prevents the long sleep.
Signed-off-by: David Christensen
---
drivers/net/ethernet/broadcom/tg3.c