Commit 72f9b089 authored by Aditya Sarwade's avatar Aditya Sarwade Committed by Doug Ledford

RDMA/vmw_pvrdma: Report network header type in WC

We should report the network header type in the work completion so that
the kernel can infer the right RoCE type headers.
Reviewed-by: default avatarBryan Tan <bryantan@vmware.com>
Signed-off-by: default avatarAditya Sarwade <asarwade@vmware.com>
Signed-off-by: default avatarAdit Ranadive <aditr@vmware.com>
Reviewed-by: default avatarYuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 79364227
...@@ -389,6 +389,7 @@ static int pvrdma_poll_one(struct pvrdma_cq *cq, struct pvrdma_qp **cur_qp, ...@@ -389,6 +389,7 @@ static int pvrdma_poll_one(struct pvrdma_cq *cq, struct pvrdma_qp **cur_qp,
wc->dlid_path_bits = cqe->dlid_path_bits; wc->dlid_path_bits = cqe->dlid_path_bits;
wc->port_num = cqe->port_num; wc->port_num = cqe->port_num;
wc->vendor_err = cqe->vendor_err; wc->vendor_err = cqe->vendor_err;
wc->network_hdr_type = cqe->network_hdr_type;
/* Update shared ring state */ /* Update shared ring state */
pvrdma_idx_ring_inc(&cq->ring_state->rx.cons_head, cq->ibcq.cqe); pvrdma_idx_ring_inc(&cq->ring_state->rx.cons_head, cq->ibcq.cqe);
......
...@@ -125,7 +125,8 @@ enum pvrdma_wc_flags { ...@@ -125,7 +125,8 @@ enum pvrdma_wc_flags {
PVRDMA_WC_IP_CSUM_OK = 1 << 3, PVRDMA_WC_IP_CSUM_OK = 1 << 3,
PVRDMA_WC_WITH_SMAC = 1 << 4, PVRDMA_WC_WITH_SMAC = 1 << 4,
PVRDMA_WC_WITH_VLAN = 1 << 5, PVRDMA_WC_WITH_VLAN = 1 << 5,
PVRDMA_WC_FLAGS_MAX = PVRDMA_WC_WITH_VLAN, PVRDMA_WC_WITH_NETWORK_HDR_TYPE = 1 << 6,
PVRDMA_WC_FLAGS_MAX = PVRDMA_WC_WITH_NETWORK_HDR_TYPE,
}; };
struct pvrdma_alloc_ucontext_resp { struct pvrdma_alloc_ucontext_resp {
...@@ -283,7 +284,8 @@ struct pvrdma_cqe { ...@@ -283,7 +284,8 @@ struct pvrdma_cqe {
__u8 dlid_path_bits; __u8 dlid_path_bits;
__u8 port_num; __u8 port_num;
__u8 smac[6]; __u8 smac[6];
__u8 reserved2[7]; /* Pad to next power of 2 (64). */ __u8 network_hdr_type;
__u8 reserved2[6]; /* Pad to next power of 2 (64). */
}; };
#endif /* __VMW_PVRDMA_ABI_H__ */ #endif /* __VMW_PVRDMA_ABI_H__ */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment