net/nfp: fix field initialization in TX descriptor
Checks
Commit Message
TX descriptor eop_offset field is not initialized and it could
contain garbage. This patch fixes the potential problem setting
EOP as the only subfield. The other subfield, data offset, is
not used by now.
Fixes: b812daadad0d ("nfp: add Rx and Tx")
Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
---
drivers/net/nfp/nfp_net.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
Comments
On 6/11/2018 10:50 AM, Alejandro Lucero wrote:
> TX descriptor eop_offset field is not initialized and it could
> contain garbage. This patch fixes the potential problem setting
> EOP as the only subfield. The other subfield, data offset, is
> not used by now.
>
> Fixes: b812daadad0d ("nfp: add Rx and Tx")
>
> Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
Applied to dpdk-next-net/master, thanks.
stable flag:
Cc: stable@dpdk.org
is the way to ask patches to be merged to stable trees.
In this patch is stable flag forgotten or intentionally not added?
I have added stable flag, but if this was intentionally left out please let me
know so that I can remove it back.
Hi Ferruh,
On Thu, Jun 14, 2018 at 10:17 AM, Ferruh Yigit <ferruh.yigit@intel.com>
wrote:
> On 6/11/2018 10:50 AM, Alejandro Lucero wrote:
> > TX descriptor eop_offset field is not initialized and it could
> > contain garbage. This patch fixes the potential problem setting
> > EOP as the only subfield. The other subfield, data offset, is
> > not used by now.
> >
> > Fixes: b812daadad0d ("nfp: add Rx and Tx")
> >
> > Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
>
> Applied to dpdk-next-net/master, thanks.
>
>
Thanks!
> stable flag:
> Cc: stable@dpdk.org
>
> is the way to ask patches to be merged to stable trees.
> In this patch is stable flag forgotten or intentionally not added?
>
> I have added stable flag, but if this was intentionally left out please
> let me
> know so that I can remove it back.
>
I though it was enough ccing to stable. I will add that flag in the commit
from now on.
Thanks
@@ -2253,11 +2253,15 @@ uint32_t nfp_net_txq_full(struct nfp_net_txq *txq)
txq->wr_p = 0;
pkt_size -= dma_size;
- if (!pkt_size)
- /* End of packet */
- txds->offset_eop |= PCIE_DESC_TX_EOP;
+
+ /*
+ * Making the EOP, packets with just one segment
+ * the priority
+ */
+ if (likely(!pkt_size))
+ txds->offset_eop = PCIE_DESC_TX_EOP;
else
- txds->offset_eop &= PCIE_DESC_TX_OFFSET_MASK;
+ txds->offset_eop = 0;
pkt = pkt->next;
/* Referencing next free TX descriptor */