We're starting from a TXQ label, not a TXQ type, so
 efx_channel_get_tx_queue() is inappropriate.  This worked by chance,
 because labels and types currently match on EF10, but we shouldn't
 rely on that.

Fixes: 12804793b17c ("sfc: decouple TXQ type from label")
Signed-off-by: Edward Cree <ecree.xil...@gmail.com>
---
 drivers/net/ethernet/sfc/ef10.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/sfc/ef10.c b/drivers/net/ethernet/sfc/ef10.c
index da6886dcac37..4fa72b573c17 100644
--- a/drivers/net/ethernet/sfc/ef10.c
+++ b/drivers/net/ethernet/sfc/ef10.c
@@ -2928,8 +2928,7 @@ static u32 efx_ef10_extract_event_ts(efx_qword_t *event)
 
        /* Get the transmit queue */
        tx_ev_q_label = EFX_QWORD_FIELD(*event, ESF_DZ_TX_QLABEL);
-       tx_queue = efx_channel_get_tx_queue(channel,
-                                           tx_ev_q_label % 
EFX_MAX_TXQ_PER_CHANNEL);
+       tx_queue = channel->tx_queue + (tx_ev_q_label % 
EFX_MAX_TXQ_PER_CHANNEL);
 
        if (!tx_queue->timestamping) {
                /* Transmit completion */
-- 
1.8.3.1

Reply via email to