Skip to content

Commit

Permalink
RDMA/vmw_pvrdma: Report network header type in WC
Browse files Browse the repository at this point in the history
We should report the network header type in the work completion so that
the kernel can infer the right RoCE type headers.

Reviewed-by: Bryan Tan <bryantan@vmware.com>
Signed-off-by: Aditya Sarwade <asarwade@vmware.com>
Signed-off-by: Adit Ranadive <aditr@vmware.com>
Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
  • Loading branch information
Aditya Sarwade authored and Doug Ledford committed Aug 31, 2017
1 parent 7936422 commit 72f9b08
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 2 deletions.
1 change: 1 addition & 0 deletions drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c
Original file line number Diff line number Diff line change
Expand Up @@ -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->port_num = cqe->port_num;
wc->vendor_err = cqe->vendor_err;
wc->network_hdr_type = cqe->network_hdr_type;

/* Update shared ring state */
pvrdma_idx_ring_inc(&cq->ring_state->rx.cons_head, cq->ibcq.cqe);
Expand Down
6 changes: 4 additions & 2 deletions include/uapi/rdma/vmw_pvrdma-abi.h
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,8 @@ enum pvrdma_wc_flags {
PVRDMA_WC_IP_CSUM_OK = 1 << 3,
PVRDMA_WC_WITH_SMAC = 1 << 4,
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 {
Expand Down Expand Up @@ -283,7 +284,8 @@ struct pvrdma_cqe {
__u8 dlid_path_bits;
__u8 port_num;
__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__ */

0 comments on commit 72f9b08

Please sign in to comment.