[ 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: 1a0f25a52e08b1f67510cabbb44888d2b3c46359
WARNING: Author mismatch between patch and upstream commit: Backport author: Przemek Kitszelprzemyslaw.kitszel@intel.com Commit author: Jesse Brandeburgjesse.brandeburg@intel.com
Status in newer kernel trees: 6.15.y | Present (exact SHA1) 6.12.y | Present (exact SHA1) 6.6.y | Present (exact SHA1) 6.1.y | Present (exact SHA1)
Note: The patch differs from the upstream commit: --- 1: 1a0f25a52e08b ! 1: c6c5671ad73f7 ice: safer stats processing @@ Metadata ## Commit message ## ice: safer stats processing
+ [ Upstream commit 1a0f25a52e08b1f67510cabbb44888d2b3c46359 ] + + Fix an issue of stats growing indefinitely, minor conflict resolved: + struct ice_tx_ring replaced by struct ice_ring, as the split is not yet + present on 5.15 line. -Przemek + + Original commit message: The driver was zeroing live stats that could be fetched by ndo_get_stats64 at any time. This could result in inconsistent statistics, and the telltale sign was when reading stats frequently from @@ Commit message Signed-off-by: Jesse Brandeburg jesse.brandeburg@intel.com Tested-by: Gurucharan G gurucharanx.g@intel.com Signed-off-by: Tony Nguyen anthony.l.nguyen@intel.com + Reported-by: Masakazu Asama masakazu.asama@gmail.com + Closes: https://lore.kernel.org/intel-wired-lan/CAP8M2pGttT4JBjt+i4GJkxy7yERbqWJ5a8R... + Signed-off-by: Przemek Kitszel przemyslaw.kitszel@intel.com
## drivers/net/ethernet/intel/ice/ice_main.c ## -@@ drivers/net/ethernet/intel/ice/ice_main.c: ice_fetch_u64_stats_per_ring(struct u64_stats_sync *syncp, struct ice_q_stats st +@@ drivers/net/ethernet/intel/ice/ice_main.c: ice_fetch_u64_stats_per_ring(struct ice_ring *ring, u64 *pkts, u64 *bytes) /** * ice_update_vsi_tx_ring_stats - Update VSI Tx ring stats counters * @vsi: the VSI to be updated @@ drivers/net/ethernet/intel/ice/ice_main.c: ice_fetch_u64_stats_per_ring(struct u * @count: number of rings */ static void --ice_update_vsi_tx_ring_stats(struct ice_vsi *vsi, struct ice_tx_ring **rings, +-ice_update_vsi_tx_ring_stats(struct ice_vsi *vsi, struct ice_ring **rings, - u16 count) +ice_update_vsi_tx_ring_stats(struct ice_vsi *vsi, + struct rtnl_link_stats64 *vsi_stats, -+ struct ice_tx_ring **rings, u16 count) ++ struct ice_ring **rings, u16 count) { - struct rtnl_link_stats64 *vsi_stats = &vsi->net_stats; u16 i;
for (i = 0; i < count; i++) { -@@ drivers/net/ethernet/intel/ice/ice_main.c: ice_update_vsi_tx_ring_stats(struct ice_vsi *vsi, struct ice_tx_ring **rings, +@@ drivers/net/ethernet/intel/ice/ice_main.c: ice_update_vsi_tx_ring_stats(struct ice_vsi *vsi, struct ice_ring **rings, */ static void ice_update_vsi_ring_stats(struct ice_vsi *vsi) { ---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-5.15.y | Success | Success |