]> git.baikalelectronics.ru Git - kernel.git/commit
qed: Fix missing DORQ attentions
authorDenis Bolotin <dbolotin@marvell.com>
Sun, 14 Apr 2019 14:23:07 +0000 (17:23 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sun, 14 Apr 2019 20:59:49 +0000 (13:59 -0700)
commit5012db930bd5b513d87f138a32bcdf8cac6f6364
treec034703ebfb6ce563eb9d9cb7a069421f9ae7a2a
parent6b3902d10451d8185e052caac5eb97ee3c6ce5a5
qed: Fix missing DORQ attentions

When the DORQ (doorbell block) is overflowed, all PFs get attentions at the
same time. If one PF finished handling the attention before another PF even
started, the second PF might miss the DORQ's attention bit and not handle
the attention at all.
If the DORQ attention is missed and the issue is not resolved, another
attention will not be sent, therefore each attention is treated as a
potential DORQ attention.
As a result, the attention callback is called more frequently so the debug
print was moved to reduce its quantity.
The number of periodic doorbell recovery handler schedules was reduced
because it was the previous way to mitigating the missed attention issue.

Signed-off-by: Denis Bolotin <dbolotin@marvell.com>
Signed-off-by: Michal Kalderon <mkalderon@marvell.com>
Signed-off-by: Ariel Elior <aelior@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qed/qed.h
drivers/net/ethernet/qlogic/qed/qed_int.c
drivers/net/ethernet/qlogic/qed/qed_main.c