.. | .. |
---|
46 | 46 | #define IB_USER_VERBS_ABI_VERSION 6 |
---|
47 | 47 | #define IB_USER_VERBS_CMD_THRESHOLD 50 |
---|
48 | 48 | |
---|
49 | | -enum { |
---|
| 49 | +enum ib_uverbs_write_cmds { |
---|
50 | 50 | IB_USER_VERBS_CMD_GET_CONTEXT, |
---|
51 | 51 | IB_USER_VERBS_CMD_QUERY_DEVICE, |
---|
52 | 52 | IB_USER_VERBS_CMD_QUERY_PORT, |
---|
.. | .. |
---|
164 | 164 | struct ib_uverbs_get_context_resp { |
---|
165 | 165 | __u32 async_fd; |
---|
166 | 166 | __u32 num_comp_vectors; |
---|
| 167 | + __aligned_u64 driver_data[0]; |
---|
167 | 168 | }; |
---|
168 | 169 | |
---|
169 | 170 | struct ib_uverbs_query_device { |
---|
.. | .. |
---|
269 | 270 | struct ib_uverbs_tm_caps tm_caps; |
---|
270 | 271 | struct ib_uverbs_cq_moderation_caps cq_moderation_caps; |
---|
271 | 272 | __aligned_u64 max_dm_size; |
---|
| 273 | + __u32 xrc_odp_caps; |
---|
| 274 | + __u32 reserved; |
---|
272 | 275 | }; |
---|
273 | 276 | |
---|
274 | 277 | struct ib_uverbs_query_port { |
---|
.. | .. |
---|
310 | 313 | |
---|
311 | 314 | struct ib_uverbs_alloc_pd_resp { |
---|
312 | 315 | __u32 pd_handle; |
---|
| 316 | + __u32 driver_data[0]; |
---|
313 | 317 | }; |
---|
314 | 318 | |
---|
315 | 319 | struct ib_uverbs_dealloc_pd { |
---|
.. | .. |
---|
325 | 329 | |
---|
326 | 330 | struct ib_uverbs_open_xrcd_resp { |
---|
327 | 331 | __u32 xrcd_handle; |
---|
| 332 | + __u32 driver_data[0]; |
---|
328 | 333 | }; |
---|
329 | 334 | |
---|
330 | 335 | struct ib_uverbs_close_xrcd { |
---|
.. | .. |
---|
345 | 350 | __u32 mr_handle; |
---|
346 | 351 | __u32 lkey; |
---|
347 | 352 | __u32 rkey; |
---|
| 353 | + __u32 driver_data[0]; |
---|
348 | 354 | }; |
---|
349 | 355 | |
---|
350 | 356 | struct ib_uverbs_rereg_mr { |
---|
.. | .. |
---|
356 | 362 | __aligned_u64 hca_va; |
---|
357 | 363 | __u32 pd_handle; |
---|
358 | 364 | __u32 access_flags; |
---|
| 365 | + __aligned_u64 driver_data[0]; |
---|
359 | 366 | }; |
---|
360 | 367 | |
---|
361 | 368 | struct ib_uverbs_rereg_mr_resp { |
---|
362 | 369 | __u32 lkey; |
---|
363 | 370 | __u32 rkey; |
---|
| 371 | + __aligned_u64 driver_data[0]; |
---|
364 | 372 | }; |
---|
365 | 373 | |
---|
366 | 374 | struct ib_uverbs_dereg_mr { |
---|
.. | .. |
---|
372 | 380 | __u32 pd_handle; |
---|
373 | 381 | __u8 mw_type; |
---|
374 | 382 | __u8 reserved[3]; |
---|
| 383 | + __aligned_u64 driver_data[0]; |
---|
375 | 384 | }; |
---|
376 | 385 | |
---|
377 | 386 | struct ib_uverbs_alloc_mw_resp { |
---|
378 | 387 | __u32 mw_handle; |
---|
379 | 388 | __u32 rkey; |
---|
| 389 | + __aligned_u64 driver_data[0]; |
---|
380 | 390 | }; |
---|
381 | 391 | |
---|
382 | 392 | struct ib_uverbs_dealloc_mw { |
---|
.. | .. |
---|
419 | 429 | struct ib_uverbs_create_cq_resp { |
---|
420 | 430 | __u32 cq_handle; |
---|
421 | 431 | __u32 cqe; |
---|
| 432 | + __aligned_u64 driver_data[0]; |
---|
422 | 433 | }; |
---|
423 | 434 | |
---|
424 | 435 | struct ib_uverbs_ex_create_cq_resp { |
---|
.. | .. |
---|
444 | 455 | __aligned_u64 response; |
---|
445 | 456 | __u32 cq_handle; |
---|
446 | 457 | __u32 ne; |
---|
| 458 | +}; |
---|
| 459 | + |
---|
| 460 | +enum ib_uverbs_wc_opcode { |
---|
| 461 | + IB_UVERBS_WC_SEND = 0, |
---|
| 462 | + IB_UVERBS_WC_RDMA_WRITE = 1, |
---|
| 463 | + IB_UVERBS_WC_RDMA_READ = 2, |
---|
| 464 | + IB_UVERBS_WC_COMP_SWAP = 3, |
---|
| 465 | + IB_UVERBS_WC_FETCH_ADD = 4, |
---|
| 466 | + IB_UVERBS_WC_BIND_MW = 5, |
---|
| 467 | + IB_UVERBS_WC_LOCAL_INV = 6, |
---|
| 468 | + IB_UVERBS_WC_TSO = 7, |
---|
447 | 469 | }; |
---|
448 | 470 | |
---|
449 | 471 | struct ib_uverbs_wc { |
---|
.. | .. |
---|
629 | 651 | __u32 max_recv_sge; |
---|
630 | 652 | __u32 max_inline_data; |
---|
631 | 653 | __u32 reserved; |
---|
| 654 | + __u32 driver_data[0]; |
---|
632 | 655 | }; |
---|
633 | 656 | |
---|
634 | 657 | struct ib_uverbs_ex_create_qp_resp { |
---|
.. | .. |
---|
731 | 754 | struct ib_uverbs_modify_qp base; |
---|
732 | 755 | __u32 rate_limit; |
---|
733 | 756 | __u32 reserved; |
---|
734 | | -}; |
---|
735 | | - |
---|
736 | | -struct ib_uverbs_modify_qp_resp { |
---|
737 | 757 | }; |
---|
738 | 758 | |
---|
739 | 759 | struct ib_uverbs_ex_modify_qp_resp { |
---|
.. | .. |
---|
863 | 883 | __u32 pd_handle; |
---|
864 | 884 | __u32 reserved; |
---|
865 | 885 | struct ib_uverbs_ah_attr attr; |
---|
| 886 | + __aligned_u64 driver_data[0]; |
---|
866 | 887 | }; |
---|
867 | 888 | |
---|
868 | 889 | struct ib_uverbs_create_ah_resp { |
---|
869 | 890 | __u32 ah_handle; |
---|
| 891 | + __u32 driver_data[0]; |
---|
870 | 892 | }; |
---|
871 | 893 | |
---|
872 | 894 | struct ib_uverbs_destroy_ah { |
---|
.. | .. |
---|
1175 | 1197 | __u32 max_wr; |
---|
1176 | 1198 | __u32 max_sge; |
---|
1177 | 1199 | __u32 srqn; |
---|
| 1200 | + __u32 driver_data[0]; |
---|
1178 | 1201 | }; |
---|
1179 | 1202 | |
---|
1180 | 1203 | struct ib_uverbs_modify_srq { |
---|