|
@@ -178,6 +178,22 @@ void ib_uverbs_event_handler(struct ib_event_handler *handler,
|
|
|
struct ib_event *event);
|
|
|
void ib_uverbs_dealloc_xrcd(struct ib_uverbs_device *dev, struct ib_xrcd *xrcd);
|
|
|
|
|
|
+struct ib_uverbs_flow_spec {
|
|
|
+ union {
|
|
|
+ union {
|
|
|
+ struct ib_uverbs_flow_spec_hdr hdr;
|
|
|
+ struct {
|
|
|
+ __u32 type;
|
|
|
+ __u16 size;
|
|
|
+ __u16 reserved;
|
|
|
+ };
|
|
|
+ };
|
|
|
+ struct ib_uverbs_flow_spec_eth eth;
|
|
|
+ struct ib_uverbs_flow_spec_ipv4 ipv4;
|
|
|
+ struct ib_uverbs_flow_spec_tcp_udp tcp_udp;
|
|
|
+ };
|
|
|
+};
|
|
|
+
|
|
|
#define IB_UVERBS_DECLARE_CMD(name) \
|
|
|
ssize_t ib_uverbs_##name(struct ib_uverbs_file *file, \
|
|
|
const char __user *buf, int in_len, \
|