RDMA/vmw_pvrdma: Patches for 4.14
Subsystems (2)
cover RDMA/vmw_pvrdma: Patches for 4.14
Hi Doug,
Here are a couple more patches for the VMware PVRDMA driver for 4.14. These are based on your for-next branch.
Thanks,
Adit
---
Changes v0 -> v1:
- Dropped the PVRDMA network type enums and the conversion function.
---
Adit Ranadive (1):
RDMA/vmw_pvrdma: Fix a signedness
Aditya Sarwade (1):
RDMA/vmw_pvrdma: Report network header type in WC
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 3 ++- include/uapi/rdma/vmw_pvrdma-abi.h | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-)
Signature · 6 lines
2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): cover.1504045411.git.aditr-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org
PATCH 1/2 RDMA/vmw_pvrdma: Report network header type in WC
From: Aditya Sarwade <[email protected]>
We should report the network header type in the work completion so that the kernel can infer the right RoCE type headers.
--- drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 1 + include/uapi/rdma/vmw_pvrdma-abi.h | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-)
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +1 -0
@@ -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);
include/uapi/rdma/vmw_pvrdma-abi.h +4 -2
@@ -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 {
@@ -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__ */
Signature · 6 lines
2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): 2abd8333de3bb9a2e609f107b1826470a54d1c30.1504045411.git.aditr-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org
Yuval Shaia
Reviewed-byRe: [PATCH for-next v1 1/2] RDMA/vmw_pvrdma: Report network header type in WC
Quoted 40 lines · Adit Ranadive
From: Aditya Sarwade <[email protected]>
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 <[email protected]>Signed-off-by Aditya Sarwade <[email protected]>Signed-off-by Adit Ranadive <[email protected]>--- drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 1 + include/uapi/rdma/vmw_pvrdma-abi.h | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-)drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +1
-0@@ -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);include/uapi/rdma/vmw_pvrdma-abi.h +2
-1@@ -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 {
include/uapi/rdma/vmw_pvrdma-abi.h struct pvrdma_cqe { · line 289
Quoted 7 lines
include/uapi/rdma/vmw_pvrdma-abi.h +2
-1@@ -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). */ };
Quoted 9 lines
include/uapi/rdma/vmw_pvrdma-abi.h +0
-0#endif /* __VMW_PVRDMA_ABI_H__ */ Signature · 6 lines
2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
PATCH 2/2 RDMA/vmw_pvrdma: Fix a signedness
In reply to a message not in the archive--- drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +1 -1
@@ -299,7 +299,7 @@ static inline struct pvrdma_cqe *get_cqe(struct pvrdma_cq *cq, int i)void _pvrdma_flush_cqe (struct pvrdma_qp *qp,struct pvrdma_cq *cq) { -int head; +unsigned int head;int has_data;if (!cq->is_kernel)
Signature · 6 lines
2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): 41188f37ed9e524e6f53759ec92f9dd94c8b47a1.1504045412.git.aditr-pghWNbHTmq7QT0dZR+AlfA@public.gmane.org
Yuval Shaia
Reviewed-byRe: [PATCH for-next v1 2/2] RDMA/vmw_pvrdma: Fix a signedness
Quoted 11 lines · Adit Ranadive
Fixes 29c8d9eba550 ("IB: Add vmw_pvrdma driver")Signed-off-by Adit Ranadive <[email protected]>--- drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +0
-0
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c static inline struct pvrdma_cqe *get_cqe(struct pvrdma_cq *cq, int i) · line 304
Quoted 7 lines
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +1
-1@@ -299,7 +299,7 @@ static inline struct pvrdma_cqe *get_cqe(struct pvrdma_cq *cq, int i)void _pvrdma_flush_cqe (struct pvrdma_qp *qp,struct pvrdma_cq *cq) { -int head; +unsigned int head;int has_data;
Quoted 8 lines
drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c +0
-0if (!cq->is_kernel)Signature · 6 lines
2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 14 lines · Adit Ranadive
Hi Doug,
Here are a couple more patches for the VMware PVRDMA driver for 4.14. These are based on your for-next branch.
Thanks,
Adit
---
Changes v0 -> v1:
- Dropped the PVRDMA network type enums and the conversion function.
---
Adit Ranadive (1):
RDMA/vmw_pvrdma: Fix a signedness
Quoted 7 lines
Aditya Sarwade (1):
RDMA/vmw_pvrdma: Report network header type in WCdrivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 3 ++- include/uapi/rdma/vmw_pvrdma-abi.h | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-)
Thanks, will apply these today.
Signature · 3 lines
Doug Ledford <[email protected]> GPG Key ID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD