[for-next v3 5/5] RDMA/mlx5: move mlx5 clock info to common struct ib_uverbs_clock_info
From: Abhijit Gangurde
Date: Sat Jun 06 2026 - 01:09:12 EST
Use struct ib_uverbs_clock_info from ib_user_verbs.h for clock info.
The original struct mlx5_ib_clock_info remains in mlx5-abi.h for
userspace ABI compatibility.
Signed-off-by: Abhijit Gangurde <abhijit.gangurde@xxxxxxx>
---
drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c | 8 ++++----
include/linux/mlx5/driver.h | 2 +-
include/uapi/rdma/mlx5-abi.h | 3 +++
3 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c b/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
index d0ba83d77cd1..fce6687a2773 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c
@@ -412,7 +412,7 @@ static u64 read_internal_timer(struct cyclecounter *cc)
static void mlx5_update_clock_info_page(struct mlx5_core_dev *mdev)
{
- struct mlx5_ib_clock_info *clock_info = mdev->clock_info;
+ struct ib_uverbs_clock_info *clock_info = mdev->clock_info;
struct mlx5_clock *clock = mdev->clock;
struct mlx5_timer *timer;
u32 sign;
@@ -1228,7 +1228,7 @@ static void mlx5_timecounter_init(struct mlx5_core_dev *mdev)
static void mlx5_init_overflow_period(struct mlx5_core_dev *mdev)
{
- struct mlx5_ib_clock_info *clock_info = mdev->clock_info;
+ struct ib_uverbs_clock_info *clock_info = mdev->clock_info;
struct mlx5_clock *clock = mdev->clock;
struct mlx5_timer *timer = &clock->timer;
u64 overflow_cycles;
@@ -1263,10 +1263,10 @@ static void mlx5_init_overflow_period(struct mlx5_core_dev *mdev)
static void mlx5_init_clock_info(struct mlx5_core_dev *mdev)
{
struct mlx5_clock *clock = mdev->clock;
- struct mlx5_ib_clock_info *info;
+ struct ib_uverbs_clock_info *info;
struct mlx5_timer *timer;
- mdev->clock_info = (struct mlx5_ib_clock_info *)get_zeroed_page(GFP_KERNEL);
+ mdev->clock_info = (struct ib_uverbs_clock_info *)get_zeroed_page(GFP_KERNEL);
if (!mdev->clock_info) {
mlx5_core_warn(mdev, "Failed to allocate IB clock info page\n");
return;
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h
index 5405ca1038f9..3b310331d582 100644
--- a/include/linux/mlx5/driver.h
+++ b/include/linux/mlx5/driver.h
@@ -774,7 +774,7 @@ struct mlx5_core_dev {
#endif
struct mlx5_clock *clock;
struct mlx5_clock_dev_state *clock_state;
- struct mlx5_ib_clock_info *clock_info;
+ struct ib_uverbs_clock_info *clock_info;
struct mlx5_fw_tracer *tracer;
struct mlx5_rsc_dump *rsc_dump;
u32 vsc_addr;
diff --git a/include/uapi/rdma/mlx5-abi.h b/include/uapi/rdma/mlx5-abi.h
index 8a6ad6c6841c..1a190883d5ea 100644
--- a/include/uapi/rdma/mlx5-abi.h
+++ b/include/uapi/rdma/mlx5-abi.h
@@ -472,6 +472,9 @@ struct mlx5_ib_modify_wq {
__u32 reserved;
};
+/*
+ * deprecated, see struct ib_uverbs_clock_info from ib_user_verbs.h
+ */
struct mlx5_ib_clock_info {
__u32 sign;
__u32 resv;
--
2.43.0