> -----Original Message-----
> From: Intel-wired-lan <[email protected]> On Behalf Of Jacob 
> Keller
> Sent: 21 November 2025 01:51
> To: Loktionov, Aleksandr <[email protected]>; Lobakin, Aleksander 
> <[email protected]>; Nguyen, Anthony L 
> <[email protected]>; Kitszel, Przemyslaw 
> <[email protected]>
> Cc: Simon Horman <[email protected]>; [email protected]; 
> [email protected]; Keller, Jacob E <[email protected]>; 
> Loktionov, Aleksandr <[email protected]>
> Subject: [Intel-wired-lan] [PATCH iwl-next v4 5/6] ice: shorten ring stat 
> names and add accessors
>
> The ice Tx/Rx hotpath has a few statistics counters for tracking unexpected 
> events. These values are stored as u64 but are not accumulated using the 
> u64_stats API. This could result in load/tear stores on some architectures.
> Even some 64-bit architectures could have issues since the fields are not 
> read or written using ACCESS_ONCE or READ_ONCE.
>
> A following change is going to refactor the stats accumulator code to use the 
> u64_stats API for all of these stats, and to use u64_stats_read and 
> u64_stats_inc properly to prevent load/store tears on all architectures.
>
> Using u64_stats_inc and the syncp pointer is slightly verbose and would be 
> duplicated in a number of places in the Tx and Rx hot path. Add accessor 
> macros for the cases where only a single stat value is touched at once. To 
> keep lines short, also shorten the stats names and convert ice_txq_stats and 
> ice_rxq_stats to struct_group.
>
> This will ease the transition to properly using the u64_stats API in the 
> following change.
>
> Reviewed-by: Aleksandr Loktionov <[email protected]>
> Signed-off-by: Jacob Keller <[email protected]>
> ---
> drivers/net/ethernet/intel/ice/ice_txrx.h     | 55 +++++++++++++++++++--------
> drivers/net/ethernet/intel/ice/ice_txrx_lib.h |  2 +-
> drivers/net/ethernet/intel/ice/ice_main.c     | 16 ++++----
> drivers/net/ethernet/intel/ice/ice_txrx.c     | 16 ++++----
> drivers/net/ethernet/intel/ice/ice_txrx_lib.c |  2 +-
> drivers/net/ethernet/intel/ice/ice_xsk.c      |  4 +-
> 6 files changed, 60 insertions(+), 35 deletions(-)
>

Tested-by: Rinitha S <[email protected]> (A Contingent worker at Intel)

Reply via email to