summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/efa/efa_com_cmd.h
diff options
context:
space:
mode:
authorMichael Margolin <mrgolin@amazon.com>2023-07-03 15:34:04 +0000
committerLeon Romanovsky <leon@kernel.org>2023-07-12 15:07:32 +0300
commit113383eff3ff6f6ea6fcddeb469d10d21c8e3d35 (patch)
tree2daaef8f7414396517ea29d69d7c60afdca0ea95 /drivers/infiniband/hw/efa/efa_com_cmd.h
parent52b4bdd28c861e7331543f4b5a0853b80c9fd3fa (diff)
downloadlinux-stable-113383eff3ff6f6ea6fcddeb469d10d21c8e3d35.tar.gz
linux-stable-113383eff3ff6f6ea6fcddeb469d10d21c8e3d35.tar.bz2
linux-stable-113383eff3ff6f6ea6fcddeb469d10d21c8e3d35.zip
RDMA/efa: Add RDMA write HW statistics counters
Update device API and request RDMA write counters if RDMA write is supported by device. Expose newly added counters through ib core counters mechanism. Reviewed-by: Daniel Kranzdorf <dkkranzd@amazon.com> Reviewed-by: Yonatan Nachum <ynachum@amazon.com> Signed-off-by: Michael Margolin <mrgolin@amazon.com> Link: https://lore.kernel.org/r/20230703153404.30877-1-mrgolin@amazon.com Reviewed-by: Gal Pressman <gal.pressman@linux.dev> Signed-off-by: Leon Romanovsky <leon@kernel.org>
Diffstat (limited to 'drivers/infiniband/hw/efa/efa_com_cmd.h')
-rw-r--r--drivers/infiniband/hw/efa/efa_com_cmd.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/efa/efa_com_cmd.h b/drivers/infiniband/hw/efa/efa_com_cmd.h
index 0898ad5bc340..fc97f37bb39b 100644
--- a/drivers/infiniband/hw/efa/efa_com_cmd.h
+++ b/drivers/infiniband/hw/efa/efa_com_cmd.h
@@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause */
/*
- * Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All rights reserved.
+ * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All rights reserved.
*/
#ifndef _EFA_COM_CMD_H_
@@ -262,10 +262,18 @@ struct efa_com_rdma_read_stats {
u64 read_resp_bytes;
};
+struct efa_com_rdma_write_stats {
+ u64 write_wrs;
+ u64 write_bytes;
+ u64 write_wr_err;
+ u64 write_recv_bytes;
+};
+
union efa_com_get_stats_result {
struct efa_com_basic_stats basic_stats;
struct efa_com_messages_stats messages_stats;
struct efa_com_rdma_read_stats rdma_read_stats;
+ struct efa_com_rdma_write_stats rdma_write_stats;
};
int efa_com_create_qp(struct efa_com_dev *edev,