]> git.openfabrics.org - ~ardavis/dapl.git/commitdiff
Add configuration files for new Proxy RDMA/SCIF Provider
authorArlin Davis <arlin.r.davis@intel.com>
Wed, 16 May 2012 18:28:09 +0000 (11:28 -0700)
committerArlin Davis <arlin.r.davis@intel.com>
Wed, 16 May 2012 18:28:09 +0000 (11:28 -0700)
This proxy RDMA provider is a interbus service within a platform
to enable offloading of RDMA writes from a small core (MIC) to
large core resource. Data sourced on a MIC that is
destined for remote nodes on the fabric will be transfered
to large core via SCIF and than to remote node.

Signed-off-by: Arlin Davis <arlin.r.davis@intel.com>
Makefile.am
configure.in

index 74413482abbfe2cfa5702edcf34559ae35b1486e..07bdb779e97c1544df600f88578c5b51b09f92ff 100755 (executable)
@@ -104,6 +104,15 @@ dapl_udapl_libdaploucm_la_CFLAGS = $(AM_CFLAGS) -D_GNU_SOURCE $(OSFLAGS) $(XFLAG
                                 -I$(srcdir)/dapl/openib_ucm \
                                -I$(srcdir)/dapl/openib_ucm/linux                               
 endif
+if DEFINE_PCM
+dapl_udapl_libdaplopcm_la_CFLAGS = $(AM_CFLAGS) -D_GNU_SOURCE $(OSFLAGS) $(XFLAGS) \
+                                -DOPENIB -DCQ_WAIT_OBJECT \
+                                -I$(srcdir)/dat/include/ -I$(srcdir)/dapl/include/ \
+                                -I$(srcdir)/dapl/common -I$(srcdir)/dapl/udapl/linux \
+                               -I$(srcdir)/dapl/openib_common \
+                                -I$(srcdir)/dapl/openib_ucm \
+                               -I$(srcdir)/dapl/openib_ucm/linux                               
+endif
 if HAVE_LD_VERSION_SCRIPT
     dat_version_script = -Wl,--version-script=$(srcdir)/dat/udat/libdat2.map
 if DEFINE_CMA
@@ -115,6 +124,9 @@ endif
 if DEFINE_UCM
     daploucm_version_script = -Wl,--version-script=$(srcdir)/dapl/udapl/libdaploucm.map
 endif
+if DEFINE_UCM
+    daplopcm_version_script = -Wl,--version-script=$(srcdir)/dapl/udapl/libdaplopcm.map
+endif
 else
     dat_version_script = 
 if DEFINE_CMA
@@ -126,6 +138,9 @@ endif
 if DEFINE_UCM
     daploucm_version_script =
 endif
+if DEFINE_PCM
+    daplopcm_version_script =
+endif
 endif
 
 #
@@ -484,11 +499,128 @@ dapl_udapl_libdaploucm_la_SOURCES = dapl/udapl/dapl_init.c \
         dapl/openib_ucm/cm.c                        \
         dapl/openib_ucm/device.c $(XPROGRAMS)
 
-dapl_udapl_libdaploucm_la_LDFLAGS = -version-info 2:0:0 $(daploscm_version_script) \
+dapl_udapl_libdaploucm_la_LDFLAGS = -version-info 2:0:0 $(daploucm_version_script) \
                                    -Wl,-init,dapl_init -Wl,-fini,dapl_fini \
                                    -lpthread -libverbs $(XLIBS)
 endif
 
+if DEFINE_PCM                      
+#
+# uDAPL OpenFabrics Proxy CM version for IB: libdaplpcm.so
+#    Proxy Infiniband RDMA writes via SCIF
+#
+dapl_udapl_libdaploucm_la_SOURCES = dapl/udapl/dapl_init.c \
+        dapl/udapl/dapl_evd_create.c               \
+        dapl/udapl/dapl_evd_query.c                \
+        dapl/udapl/dapl_cno_create.c               \
+        dapl/udapl/dapl_cno_modify_agent.c         \
+        dapl/udapl/dapl_cno_free.c                 \
+        dapl/udapl/dapl_cno_wait.c                 \
+        dapl/udapl/dapl_cno_query.c                \
+        dapl/udapl/dapl_lmr_create.c               \
+        dapl/udapl/dapl_evd_wait.c                 \
+        dapl/udapl/dapl_evd_disable.c              \
+        dapl/udapl/dapl_evd_enable.c               \
+        dapl/udapl/dapl_evd_modify_cno.c           \
+        dapl/udapl/dapl_evd_set_unwaitable.c       \
+        dapl/udapl/dapl_evd_clear_unwaitable.c     \
+        dapl/udapl/linux/dapl_osd.c                \
+        dapl/common/dapl_cookie.c                   \
+        dapl/common/dapl_cr_accept.c                \
+        dapl/common/dapl_cr_query.c                 \
+        dapl/common/dapl_cr_reject.c                \
+        dapl/common/dapl_cr_util.c                  \
+        dapl/common/dapl_cr_callback.c              \
+        dapl/common/dapl_cr_handoff.c               \
+        dapl/common/dapl_ep_connect.c               \
+        dapl/common/dapl_ep_create.c                \
+        dapl/common/dapl_ep_disconnect.c            \
+        dapl/common/dapl_ep_dup_connect.c           \
+        dapl/common/dapl_ep_free.c                  \
+        dapl/common/dapl_ep_reset.c                 \
+        dapl/common/dapl_ep_get_status.c            \
+        dapl/common/dapl_ep_modify.c                \
+        dapl/common/dapl_ep_post_rdma_read.c        \
+        dapl/common/dapl_ep_post_rdma_write.c       \
+        dapl/common/dapl_ep_post_recv.c             \
+        dapl/common/dapl_ep_post_send.c             \
+        dapl/common/dapl_ep_query.c                 \
+        dapl/common/dapl_ep_util.c                  \
+        dapl/common/dapl_evd_dequeue.c              \
+        dapl/common/dapl_evd_free.c                 \
+        dapl/common/dapl_evd_post_se.c              \
+        dapl/common/dapl_evd_resize.c               \
+        dapl/common/dapl_evd_util.c                 \
+        dapl/common/dapl_evd_cq_async_error_callb.c \
+        dapl/common/dapl_evd_qp_async_error_callb.c \
+        dapl/common/dapl_evd_un_async_error_callb.c \
+        dapl/common/dapl_evd_connection_callb.c     \
+        dapl/common/dapl_evd_dto_callb.c            \
+        dapl/common/dapl_get_consumer_context.c     \
+        dapl/common/dapl_get_handle_type.c          \
+        dapl/common/dapl_hash.c                     \
+        dapl/common/dapl_hca_util.c                 \
+        dapl/common/dapl_ia_close.c                 \
+        dapl/common/dapl_ia_open.c                  \
+        dapl/common/dapl_ia_query.c                 \
+        dapl/common/dapl_ia_util.c                  \
+        dapl/common/dapl_llist.c                    \
+        dapl/common/dapl_lmr_free.c                 \
+        dapl/common/dapl_lmr_query.c                \
+        dapl/common/dapl_lmr_util.c                 \
+        dapl/common/dapl_lmr_sync_rdma_read.c       \
+        dapl/common/dapl_lmr_sync_rdma_write.c      \
+        dapl/common/dapl_mr_util.c                  \
+        dapl/common/dapl_provider.c                 \
+        dapl/common/dapl_sp_util.c                  \
+        dapl/common/dapl_psp_create.c               \
+        dapl/common/dapl_psp_create_any.c           \
+        dapl/common/dapl_psp_free.c                 \
+        dapl/common/dapl_psp_query.c                \
+        dapl/common/dapl_pz_create.c                \
+        dapl/common/dapl_pz_free.c                  \
+        dapl/common/dapl_pz_query.c                 \
+        dapl/common/dapl_pz_util.c                  \
+        dapl/common/dapl_rmr_create.c               \
+        dapl/common/dapl_rmr_free.c                 \
+        dapl/common/dapl_rmr_bind.c                 \
+        dapl/common/dapl_rmr_query.c                \
+        dapl/common/dapl_rmr_util.c                 \
+        dapl/common/dapl_rsp_create.c               \
+        dapl/common/dapl_rsp_free.c                 \
+        dapl/common/dapl_rsp_query.c                \
+        dapl/common/dapl_cno_util.c                 \
+        dapl/common/dapl_set_consumer_context.c     \
+        dapl/common/dapl_ring_buffer_util.c         \
+        dapl/common/dapl_name_service.c             \
+        dapl/common/dapl_timer_util.c               \
+        dapl/common/dapl_ep_create_with_srq.c       \
+        dapl/common/dapl_ep_recv_query.c            \
+        dapl/common/dapl_ep_set_watermark.c         \
+        dapl/common/dapl_srq_create.c               \
+        dapl/common/dapl_srq_free.c                 \
+        dapl/common/dapl_srq_query.c                \
+        dapl/common/dapl_srq_resize.c               \
+        dapl/common/dapl_srq_post_recv.c            \
+        dapl/common/dapl_srq_set_lw.c               \
+        dapl/common/dapl_srq_util.c                 \
+        dapl/common/dapl_debug.c                    \
+        dapl/common/dapl_ia_ha.c                    \
+        dapl/common/dapl_csp.c                      \
+        dapl/common/dapl_ep_post_send_invalidate.c  \
+        dapl/common/dapl_ep_post_rdma_read_to_rmr.c \
+        dapl/openib_common/mem.c                    \
+        dapl/openib_common/cq.c                     \
+        dapl/openib_common/qp.c                     \
+        dapl/openib_common/util.c                   \
+        dapl/openib_pcm/cm.c                        \
+        dapl/openib_pcm/device.c $(XPROGRAMS)
+
+dapl_udapl_libdaploucm_la_LDFLAGS = -version-info 2:0:0 $(daplopcm_version_script) \
+                                   -Wl,-init,dapl_init -Wl,-fini,dapl_fini \
+                                   -lpthread -libverbs -lscif $(XLIBS)
+endif
+
 libdatincludedir = $(includedir)/dat2
 
 libdatinclude_HEADERS = dat/include/dat2/dat.h \
@@ -554,10 +686,13 @@ EXTRA_DIST = dat/common/dat_dictionary.h \
             dapl/openib_scm/linux/openib_osd.h \
             dapl/openib_ucm/dapl_ib_util.h \
             dapl/openib_ucm/linux/openib_osd.h \
+            dapl/openib_pcm/dapl_ib_util.h \
+            dapl/openib_pcm/linux/openib_osd.h \
             dat/udat/libdat2.map \
             dapl/udapl/libdaplofa.map \
             dapl/udapl/libdaploscm.map \
             dapl/udapl/libdaploucm.map \
+            dapl/udapl/libdaplopcm.map \
             LICENSE.txt \
             LICENSE2.txt \
             LICENSE3.txt \
index 60da50b6a46f8e092614f32c1da5c6076665f9e3..a5a41b9058643d9c8c389f18fb2f48a61c778e00 100644 (file)
@@ -104,6 +104,17 @@ AC_ARG_ENABLE([ucm],
   [ucm=true])
 AM_CONDITIONAL(DEFINE_UCM, test x$ucm = xtrue)
 
+nl Support to enable/disable PCM (proxy) SCIF provider library build
+AC_ARG_ENABLE([pcm], 
+  AS_HELP_STRING([--enable-ucm],[enable PCM (proxy CM) SCIF provider build, default=disabled]),
+  [case "${enableval}" in
+    yes) pcm=true ;;
+    no)  pcm=false ;;
+    *) AC_MSG_ERROR(bad value ${enableval} for --enable-pcm) ;; 
+  esac],
+  [pcm=false])
+AM_CONDITIONAL(DEFINE_PCM, test x$pcm = xtrue)
+
 dnl Support to enable/disable IB extended counters (CM,LINK,DIAG)
 AC_ARG_ENABLE([counters], 
   AS_HELP_STRING([--enable-counters],[enable counters provider build, default=disabled]),