a292c8c357
Change-Id: Ic2a6e6f1ceea81f2e34f3db370682569327b44ad Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
40 lines
1.2 KiB
Diff
40 lines
1.2 KiB
Diff
From a31a1dbdf5e1ff46d04f50fea02e83453b84652c Mon Sep 17 00:00:00 2001
|
|
From: John Daley <johndale@cisco.com>
|
|
Date: Tue, 8 Mar 2016 10:49:07 -0800
|
|
Subject: [PATCH 12/22] enic: fix last packet not being sent
|
|
|
|
The last packet of the tx burst function array was not being
|
|
emitted until the subsequent call. The nic descriptor index
|
|
was being set to the current tx descriptor instead of one past
|
|
the descriptor as required by the nic.
|
|
|
|
Fixes: d739ba4c6abf ("enic: improve Tx packet rate")
|
|
|
|
Signed-off-by: John Daley <johndale@cisco.com>
|
|
---
|
|
drivers/net/enic/base/enic_vnic_wq.h | 6 +++---
|
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/drivers/net/enic/base/enic_vnic_wq.h b/drivers/net/enic/base/enic_vnic_wq.h
|
|
index e3ea574..b019109 100644
|
|
--- a/drivers/net/enic/base/enic_vnic_wq.h
|
|
+++ b/drivers/net/enic/base/enic_vnic_wq.h
|
|
@@ -69,11 +69,11 @@ static inline void enic_vnic_post_wq(struct vnic_wq *wq,
|
|
buf->wr_id = wrid;
|
|
|
|
buf = buf->next;
|
|
- if (cq_entry)
|
|
- enic_vnic_post_wq_index(wq);
|
|
+ wq->ring.desc_avail -= desc_skip_cnt;
|
|
wq->to_use = buf;
|
|
|
|
- wq->ring.desc_avail -= desc_skip_cnt;
|
|
+ if (cq_entry)
|
|
+ enic_vnic_post_wq_index(wq);
|
|
}
|
|
|
|
#endif /* _ENIC_VNIC_WQ_H_ */
|
|
--
|
|
1.9.1
|
|
|