net/ena: prevent double doorbell
authorIgor Chauskin <igorch@amazon.com>
Tue, 26 Jan 2021 18:32:26 +0000 (19:32 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 29 Jan 2021 17:16:12 +0000 (18:16 +0100)
commit1d973d8f4c149523a15c1c0813f204bb89d4e588
tree71a0f5fc04a9cad90d7df177e5b289c26960c57d
parent8a90f3d8d09b5fa2e7a6a7b83b8e4868acebbe01
net/ena: prevent double doorbell

Add per-tx-ring flag for packets that were pushed to HW but await
doorbell. That is to prevent a situation when a doorbell is sent due to
reaching Tx burst threshold and next send fails (e.g., due to queue
full). In such case we shouldn't send another doorbell because there are
no actual packets waiting for transmission.

Fixes: c7519ea5eb8d ("net/ena: call additional doorbells if needed")
Cc: stable@dpdk.org
Signed-off-by: Igor Chauskin <igorch@amazon.com>
Reviewed-by: Michal Krawczyk <mk@semihalf.com>
drivers/net/ena/ena_ethdev.c
drivers/net/ena/ena_ethdev.h