Skip to content

Commit e90b808

Browse files
committed
verbs_usnic: do not build by default
This component is a workaround to a bug in libibverbs that prints a dire warning that usNIC devices are not supported (of course not -- usNIC devices provide functionality through libfabric, not libibverbs). This component was written before a better workaround was created: a "no op" libibverbs plugin for usNIC devices (https://github.com/cisco/libusnic_verbs, and is also available in binary form on cisco.com). Hence, this component no longer builds by default. It's still available if a user specifically asks for it (e.g., if they do not want to install the "no op" libibverbs plugin), but it's not the default. This component also has the side-effect of making libopen-pal.so depend on libibverbs.so, which can be annoying for packagers (which is another reason it isn't built by default any more). (cherry picked from commit open-mpi/ompi@0715802)
1 parent bfefed4 commit e90b808

File tree

2 files changed

+26
-3
lines changed

2 files changed

+26
-3
lines changed

README

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Copyright (c) 2004-2008 High Performance Computing Center Stuttgart,
88
University of Stuttgart. All rights reserved.
99
Copyright (c) 2004-2007 The Regents of the University of California.
1010
All rights reserved.
11-
Copyright (c) 2006-2015 Cisco Systems, Inc. All rights reserved.
11+
Copyright (c) 2006-2016 Cisco Systems, Inc. All rights reserved.
1212
Copyright (c) 2006-2011 Mellanox Technologies. All rights reserved.
1313
Copyright (c) 2006-2012 Oracle and/or its affiliates. All rights reserved.
1414
Copyright (c) 2007 Myricom, Inc. All rights reserved.
@@ -958,6 +958,20 @@ NETWORKING SUPPORT / OPTIONS
958958
directory>/lib64, which covers most cases. This option is only
959959
needed for special configurations.
960960

961+
--with-verbs-usnic
962+
This option will activate support in Open MPI for disabling a
963+
dire-sounding warning message from libibverbs that Cisco usNIC
964+
devices are not supported (because Cisco usNIC devices are supported
965+
through libfabric, not libibverbs). This libibverbs warning can
966+
also be suppressed by installing the "no op" libusnic_verbs plugin
967+
for libibverbs (see https://github.com/cisco/libusnic_verbs, or
968+
download binaries from cisco.com). This option is disabled by
969+
default because it causes libopen-pal.so to depend on libibverbs.so,
970+
which is undesirable to many downstream packagers.
971+
972+
--with-usnic
973+
Abort configure if Cisco usNIC support cannot be built.
974+
961975
RUN-TIME SYSTEM SUPPORT
962976

963977
--enable-mpirun-prefix-by-default

ompi/mca/common/verbs_usnic/configure.m4

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,17 @@ AC_DEFUN([MCA_ompi_common_verbs_usnic_CONFIG],[
4040
AC_CONFIG_FILES([ompi/mca/common/verbs_usnic/Makefile])
4141
common_verbs_usnic_happy="no"
4242

43-
OMPI_CHECK_OPENFABRICS([common_verbs_usnic],
44-
[common_verbs_usnic_happy="yes"])
43+
AC_ARG_WITH(verbs-usnic,
44+
AC_HELP_STRING([--with-verbs-usnic],
45+
[Add support in Open MPI to defeat a seemingly dire warning message from libibverbs that Cisco usNIC devices are not supported. This support is not compiled by default because you can also avoid this libibverbs bug by installing the libibverbs_usnic "no no" plugin, available from https://github.com/cisco/libusnic_verbs or in binary form from cisco.com]))
46+
47+
AS_IF([test "$with_verbs_usnic" = "yes"],
48+
[common_verbs_usnic_happy=yes])
49+
50+
AS_IF([test "$common_verbs_usnic_happy" = "yes"],
51+
[OMPI_CHECK_OPENFABRICS([common_verbs_usnic],
52+
[common_verbs_usnic_happy="yes"])
53+
])
4554

4655
AS_IF([test "$common_verbs_usnic_happy" = "yes"],
4756
[$1],

0 commit comments

Comments
 (0)