#include <rdma/mlx5_user_ioctl_verbs.h>
 
 #include "srq.h"
+#include "qp.h"
 
 #define mlx5_ib_dbg(_dev, format, arg...)                                      \
        dev_dbg(&(_dev)->ib_dev.dev, "%s:%d:(pid %d): " format, __func__,      \
 
 #ifndef _MLX5_IB_QP_H
 #define _MLX5_IB_QP_H
 
-#include "mlx5_ib.h"
+struct mlx5_ib_dev;
+
+struct mlx5_qp_table {
+       struct notifier_block nb;
+
+       /* protect radix tree
+        */
+       spinlock_t lock;
+       struct radix_tree_root tree;
+};
 
 int mlx5_init_qp_table(struct mlx5_ib_dev *dev);
 void mlx5_cleanup_qp_table(struct mlx5_ib_dev *dev);
 
        struct delayed_work             update_fw_log_ts_work;
 };
 
-struct mlx5_qp_table {
-       struct notifier_block   nb;
-
-       /* protect radix tree
-        */
-       spinlock_t              lock;
-       struct radix_tree_root  tree;
-};
-
 enum {
        MLX5_PF_NOTIFY_DISABLE_VF,
        MLX5_PF_NOTIFY_ENABLE_VF,