1
1
openmpi/orte/mca/oob/ud/Makefile.am
Alina Sklarevich e4c4e7df5e Fix the calls to ibv_fork_init and remove btl_openib_want_fork_support.
In order to have an effect, ibv_fork_init should be called in the
beginning of the verbs initialization flow - before the calls to the
ibv_create_qp and ibv_create_cq verbs.
These functions are called from the oob/ud code and by the time the
other verbs components (btl openib, pml yalla, ...) call ibv_fork_init,
it's too late. This commit forces the call to ibv_fork_init (if it's
requested) right at the beginning of all the components that are using
verbs.
(ibv_fork_init() can be safely called multiple times)

This commit also removes the btl_openib_want_fork_support mca parameter
and adds a new mca parameter instead - opal_verbs_want_fork_support.
Through this new parameter, fork support may be requested for ALL
components.
The default value for this parameter is set to 1.

Before this commit the btl_openib_want_fork_support parameter didn't
provide fork support for the openib btl if its value was set to 1.
(because when openib called ibv_fork_init, it was already after the
calls to ibv_create_* in oob/ud and thereofre it failed).
2015-02-25 10:58:50 +02:00

66 строки
1.9 KiB
Makefile

#
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
# University Research and Technology
# Corporation. All rights reserved.
# Copyright (c) 2004-2005 The University of Tennessee and The University
# of Tennessee Research Foundation. All rights
# reserved.
# Copyright (c) 2004-2009 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved.
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
# Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
AM_CPPFLAGS = $(orte_oob_ud_CPPFLAGS)
dist_ortedata_DATA = help-oob-ud.txt
sources = \
oob_ud_component.h \
oob_ud_component.c \
oob_ud.c \
oob_ud.h \
oob_ud_event.c \
oob_ud_peer.c \
oob_ud_peer.h \
oob_ud_ping.c \
oob_ud_ping.h \
oob_ud_qp.c \
oob_ud_qp.h \
oob_ud_recv.c \
oob_ud_req.c \
oob_ud_req.h \
oob_ud_send.c \
oob_ud_send.h
# Make the output library in this directory, and name it either
# mca_<type>_<name>.la (for DSO builds) or libmca_<type>_<name>.la
# (for static builds).
if MCA_BUILD_orte_oob_ud_DSO
component_noinst =
component_install = mca_oob_ud.la
else
component_noinst = libmca_oob_ud.la
component_install =
endif
mcacomponentdir = $(ortelibdir)
mcacomponent_LTLIBRARIES = $(component_install)
mca_oob_ud_la_SOURCES = $(sources)
mca_oob_ud_la_LDFLAGS = -module -avoid-version $(orte_oob_ud_LDFLAGS)
mca_oob_ud_la_LIBADD = $(orte_oob_ud_LIBS) \
$(OPAL_TOP_BUILDDIR)/opal/mca/common/verbs/lib@OPAL_LIB_PREFIX@mca_common_verbs.la
noinst_LTLIBRARIES = $(component_noinst)
libmca_oob_ud_la_SOURCES = $(sources)
libmca_oob_ud_la_LDFLAGS = -module -avoid-version $(orte_oob_ud_LDFLAGS)
libmca_oob_ud_la_LIBADD = $(orte_oob_ud_LIBS)