[ Sasha's backport helper bot ]
Hi,
✅ All tests passed successfully. No issues detected. No action required from the submitter.
The upstream commit SHA1 provided is correct: bdf5d13aa05ec314d4385b31ac974d6c7e0997c9
WARNING: Author mismatch between patch and upstream commit: Backport author: bin.lan.cn@windriver.com Commit author: Nick Childnnac123@linux.ibm.com
Status in newer kernel trees: 6.14.y | Present (exact SHA1) 6.12.y | Present (different SHA1: 25dddd01dcc8) 6.6.y | Present (different SHA1: 093b0e5c9059) 6.1.y | Present (different SHA1: 501ac6a7e21b) 5.15.y | Not found
Note: The patch differs from the upstream commit: --- 1: bdf5d13aa05ec ! 1: 3acbb072e25da ibmvnic: Don't reference skb after sending to VIOS @@ Metadata ## Commit message ## ibmvnic: Don't reference skb after sending to VIOS
+ [ Upstream commit bdf5d13aa05ec314d4385b31ac974d6c7e0997c9 ] + Previously, after successfully flushing the xmit buffer to VIOS, the tx_bytes stat was incremented by the length of the skb.
@@ Commit message Reviewed-by: Simon Horman horms@kernel.org Link: https://patch.msgid.link/20250214155233.235559-1-nnac123@linux.ibm.com Signed-off-by: Jakub Kicinski kuba@kernel.org + [Minor context change fixed.] + Signed-off-by: Bin Lan bin.lan.cn@windriver.com + Signed-off-by: He Zhe zhe.he@windriver.com
## drivers/net/ethernet/ibm/ibmvnic.c ## @@ drivers/net/ethernet/ibm/ibmvnic.c: static netdev_tx_t ibmvnic_xmit(struct sk_buff *skb, struct net_device *netdev) @@ drivers/net/ethernet/ibm/ibmvnic.c: static netdev_tx_t ibmvnic_xmit(struct sk_bu + unsigned int skblen; union sub_crq tx_crq; unsigned int offset; - bool use_scrq_send_direct = false; + int num_entries = 1; @@ drivers/net/ethernet/ibm/ibmvnic.c: static netdev_tx_t ibmvnic_xmit(struct sk_buff *skb, struct net_device *netdev) - tx_buff->skb = skb; - tx_buff->index = bufidx; + tx_buff->index = index; tx_buff->pool_index = queue_num; + tx_buff->last_frag = true; + skblen = skb->len;
memset(&tx_crq, 0, sizeof(tx_crq)); tx_crq.v1.first = IBMVNIC_CRQ_CMD; @@ drivers/net/ethernet/ibm/ibmvnic.c: static netdev_tx_t ibmvnic_xmit(struct sk_buff *skb, struct net_device *netdev) - netif_stop_subqueue(netdev, queue_num); }
+ tx_packets++; - tx_bytes += skb->len; + tx_bytes += skblen; - txq_trans_cond_update(txq); + txq->trans_start = jiffies; ret = NETDEV_TX_OK; goto out; ---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-5.10.y | Success | Success |