diff options
| -rw-r--r-- | Documentation/networking/devlink/mlx5.rst | 6 | ||||
| -rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/diag/reporter_vnic.c | 9 |
2 files changed, 15 insertions, 0 deletions
diff --git a/Documentation/networking/devlink/mlx5.rst b/Documentation/networking/devlink/mlx5.rst index 41c9b716699e..0e5f9c76e514 100644 --- a/Documentation/networking/devlink/mlx5.rst +++ b/Documentation/networking/devlink/mlx5.rst @@ -385,6 +385,12 @@ Description of the vnic counters: amount of Interconnect Host Memory (ICM) consumed by the vnic in granularity of 4KB. ICM is host memory allocated by SW upon HCA request and is used for storing data structures that control HCA operation. +- bar_uar_access + number of WRITE or READ access operations to the UAR on the PCIe BAR. +- odp_local_triggered_page_fault + number of locally-triggered page-faults due to ODP. +- odp_remote_triggered_page_fault + number of remotly-triggered page-faults due to ODP. User commands examples: diff --git a/drivers/net/ethernet/mellanox/mlx5/core/diag/reporter_vnic.c b/drivers/net/ethernet/mellanox/mlx5/core/diag/reporter_vnic.c index a17f82321c25..7cae0c6e5e8a 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/diag/reporter_vnic.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/diag/reporter_vnic.c @@ -107,6 +107,15 @@ void mlx5_reporter_vnic_diagnose_counters(struct mlx5_core_dev *dev, } if (MLX5_CAP_GEN(dev, nic_cap_reg)) mlx5_reporter_vnic_diagnose_counter_icm(dev, fmsg, vport_num, other_vport); + if (MLX5_CAP_GEN(dev, vnic_env_cnt_bar_uar_access)) + devlink_fmsg_u32_pair_put(fmsg, "bar_uar_access", + VNIC_ENV_GET(&vnic, bar_uar_access)); + if (MLX5_CAP_GEN(dev, vnic_env_cnt_odp_page_fault)) { + devlink_fmsg_u32_pair_put(fmsg, "odp_local_triggered_page_fault", + VNIC_ENV_GET(&vnic, odp_local_triggered_page_fault)); + devlink_fmsg_u32_pair_put(fmsg, "odp_remote_triggered_page_fault", + VNIC_ENV_GET(&vnic, odp_remote_triggered_page_fault)); + } devlink_fmsg_obj_nest_end(fmsg); devlink_fmsg_pair_nest_end(fmsg); |
