Extending uverbs_ioctl header with driver_id and another reserved field. driver_id should be used in order to identify the driver. Since every driver could have its own parsing tree, this is necessary for strace support. Downstream patches take off the EXPERIMENTAL flag from the ioctl() IB support and thus we add some reserved fields for future usage.
Showing the changes to include/uapi (1 of 21 files). Show all
Unified · Split
| @@ -64,8 +64,30 @@ struct ib_uverbs_ioctl_hdr { · 63 unmodified lines | ||
| 64 | 64 | __u16 object_id; |
| 65 | 65 | __u16 method_id; |
| 66 | 66 | __u16 num_attrs; |
| 67 | − __aligned_u64 reserved; | |
| 67 | + __aligned_u64 reserved1; | |
| 68 | + __u32 driver_id; | |
| 69 | + __u32 reserved2; | |
| 68 | 70 | struct ib_uverbs_attr attrs[0]; |
| 69 | 71 | }; |
| 70 | 72 | |
| 73 | +enum rdma_driver_id { | |
| 74 | + RDMA_DRIVER_UNKNOWN, | |
| 75 | + RDMA_DRIVER_MLX5, | |
| 76 | + RDMA_DRIVER_MLX4, | |
| 77 | + RDMA_DRIVER_CXGB3, | |
| 78 | + RDMA_DRIVER_CXGB4, | |
| 79 | + RDMA_DRIVER_MTHCA, | |
| 80 | + RDMA_DRIVER_BNXT_RE, | |
| 81 | + RDMA_DRIVER_OCRDMA, | |
| 82 | + RDMA_DRIVER_NES, | |
| 83 | + RDMA_DRIVER_I40IW, | |
| 84 | + RDMA_DRIVER_VMW_PVRDMA, | |
| 85 | + RDMA_DRIVER_QEDR, | |
| 86 | + RDMA_DRIVER_HNS, | |
| 87 | + RDMA_DRIVER_USNIC, | |
| 88 | + RDMA_DRIVER_RXE, | |
| 89 | + RDMA_DRIVER_HFI1, | |
| 90 | + RDMA_DRIVER_QIB, | |
| 91 | +}; | |
| 92 | + | |
| 71 | 93 | #endif |