History

IB/mlx4: Add support for WQ related verbs

Support create/modify/destroy WQ related verbs. The base IB object to enable RSS functionality is a WQ (i.e. ib_wq). This patch implements the related WQ verbs as of create, modify and destroy. In downstream patches the WQ will be used as part of an indirection table (i.e. ib_rwq_ind_table) to enable RSS QP creation. Notes: ConnectX-3 hardware requires consecutive WQNs list as receive descriptor queues for the RSS QP. Hence, the driver manages consecutive ranges lists per context which the user must respect. Destroying the WQ does not return its WQN back to its range for reusing. However, destroying all WQs from the same range releases the range and in turn releases its WQNs for reusing. Since the WQ object is not a natural object in the hardware, the driver implements the WQ by the hardware QP. As such, the WQ inherits its port from its RSS QP parent upon its RST->INIT transition and by that time its state is applied to the hardware.

Guy Levi committed 9 years ago

Commit 400b1eb1 parent f3301874 files · +511 −57Browse files

Showing the changes to include/uapi (1 of 4 files). Show all

Unified · Split

include/uapi/rdma/mlx4-abi.h+14−0
@@ -105,4 +105,18 @@ struct mlx4_ib_create_qp { · 104 unmodified lines
105 __u8 reserved;105 __u8 reserved;
106};106};
107 107
108struct mlx4_ib_create_wq {
109 __u64 buf_addr;
110 __u64 db_addr;
111 __u8 log_range_size;
112 __u8 reserved[3];
113 __u32 comp_mask;
114 __u32 reserved1;
115};
116
117struct mlx4_ib_modify_wq {
118 __u32 comp_mask;
119 __u32 reserved;
120};
121
108#endif /* MLX4_ABI_USER_H */122#endif /* MLX4_ABI_USER_H */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t