[ofw] [Patch 39/62] Reference implementation of NDv2
Fab Tillier
ftillier at microsoft.com
Wed Feb 20 18:25:12 PST 2013
Export UVP entry points directly.
This patch makes it so that the ND provider can call directly into the UVP, without having to query/user the UVP interface structure from IBAL. Going forward, these entry points will be optimized for performance, taking native ND structures as input, optimizing locking, etc.
Signed-off-by: Fab Tillier <ftillier at microsoft.com>
diff -dwup3 -X excl.txt -r \dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\user\hca\mlx4.def .\hw\mlx4\user\hca\mlx4.def
--- \dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\user\hca\mlx4.def Thu Mar 29 00:15:30 2012
+++ .\hw\mlx4\user\hca\mlx4.def Wed May 23 15:14:43 2012
@@ -1,8 +1,31 @@
LIBRARY mlx4u.dll
-
-#ifndef _WIN64
EXPORTS
+#ifndef _WIN64
uvp_get_interface
#endif
-
+mlx4_pre_open_ca
+mlx4_post_open_ca
+mlx4_post_close_ca
+mlx4_pre_alloc_pd
+mlx4_post_alloc_pd
+mlx4_post_free_pd
+mlx4_pre_create_cq
+mlx4_post_create_cq
+mlx4_post_destroy_cq
+mlx4_arm_cq
+mlx4_poll_cq_array
+mlx4_pre_create_srq
+mlx4_post_create_srq
+mlx4_pre_destroy_srq
+mlx4_post_destroy_srq
+mlx4_post_srq_recv
+mlx4_pre_create_qp
+mlx4_wv_pre_create_qp
+mlx4_post_create_qp
+mlx4_pre_destroy_qp
+mlx4_post_destroy_qp
+mlx4_nd_modify_qp
+mlx4_nd_get_qp_state
+mlx4_post_send
+mlx4_post_recv
diff -dwup3 -X excl.txt -r \dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\user\hca\verbs.h .\hw\mlx4\user\hca\verbs.h
--- \dev\openib\ofw\gen1\branches\mlx4_30\trunk\hw\mlx4\user\hca\verbs.h Tue Aug 07 17:06:08 2012
+++ .\hw\mlx4\user\hca\verbs.h Thu May 31 12:35:12 2012
@@ -36,7 +36,7 @@
#ifndef INFINIBAND_VERBS_H
#define INFINIBAND_VERBS_H
-#include "l2w.h"
+#include "iba\ib_uvp.h"
#ifdef __cplusplus
@@ -276,6 +276,14 @@ mlx4_post_destroy_cq (
IN const ib_cq_handle_t h_uvp_cq,
IN ib_api_status_t ioctl_status );
+ib_api_status_t
+mlx4_arm_cq (
+ IN const void* h_cq,
+ IN const boolean_t solicited);
+
+int mlx4_poll_cq_array(const void* h_cq,
+ const int num_entries, uvp_wc_t* const wc);
+
/************* SRQ Management **********************/
ib_api_status_t
mlx4_pre_create_srq (
@@ -300,6 +308,10 @@ mlx4_post_destroy_srq (
IN const ib_srq_handle_t h_uvp_srq,
IN ib_api_status_t ioctl_status );
+ib_api_status_t mlx4_post_srq_recv(const void* h_srq,
+ ib_recv_wr_t* const wr,
+ ib_recv_wr_t** bad_wr);
+
/************* QP Management ***********************/
ib_api_status_t
mlx4_pre_create_qp (
@@ -359,6 +371,14 @@ mlx4_nd_modify_qp (
uint32_t
mlx4_nd_get_qp_state (
IN const ib_qp_handle_t h_uvp_qp );
+
+ib_api_status_t mlx4_post_send(const void* h_qp,
+ ib_send_wr_t* const wr,
+ ib_send_wr_t** bad_wr);
+
+ib_api_status_t mlx4_post_recv(const void* h_qp,
+ ib_recv_wr_t* const wr,
+ ib_recv_wr_t** bad_wr);
/************* AV Management ***********************/
ib_api_status_t
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ndv2.39.patch
Type: application/octet-stream
Size: 2561 bytes
Desc: ndv2.39.patch
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20130221/cdfb0e80/attachment.obj>
More information about the ofw
mailing list