From: Noa Osherovich Date: Wed, 18 Jan 2017 13:39:55 +0000 (+0200) Subject: IB/core: Enable WQ creation and modification with cvlan offload X-Git-Tag: Ubuntu-5.2.0-15.16~7389^2~24 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=10bac72be10542a29169582e6f74f88bcdfdf19f;p=mirror_ubuntu-eoan-kernel.git IB/core: Enable WQ creation and modification with cvlan offload Enable WQ creation and modification with cvlan stripping offload. This includes: - Adding WQ creation flags. - Extending modify WQ to get flags and flags mask to enable turning it on and off. Signed-off-by: Noa Osherovich Reviewed-by: Maor Gottlieb Reviewed-by: Yishai Hadas Signed-off-by: Leon Romanovsky Signed-off-by: Doug Ledford --- diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 903ed76604f5..7028b0ec8447 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -1494,6 +1494,10 @@ struct ib_wq { atomic_t usecnt; }; +enum ib_wq_flags { + IB_WQ_FLAGS_CVLAN_STRIPPING = 1 << 0, +}; + struct ib_wq_init_attr { void *wq_context; enum ib_wq_type wq_type; @@ -1501,16 +1505,20 @@ struct ib_wq_init_attr { u32 max_sge; struct ib_cq *cq; void (*event_handler)(struct ib_event *, void *); + u32 create_flags; /* Use enum ib_wq_flags */ }; enum ib_wq_attr_mask { - IB_WQ_STATE = 1 << 0, - IB_WQ_CUR_STATE = 1 << 1, + IB_WQ_STATE = 1 << 0, + IB_WQ_CUR_STATE = 1 << 1, + IB_WQ_FLAGS = 1 << 2, }; struct ib_wq_attr { enum ib_wq_state wq_state; enum ib_wq_state curr_wq_state; + u32 flags; /* Use enum ib_wq_flags */ + u32 flags_mask; /* Use enum ib_wq_flags */ }; struct ib_rwq_ind_table {