components/open-fabrics/libibverbs/patches/001-libibverbs-solaris_port.patch
author zihao.zhu@oracle.com <zihao.zhu@oracle.com>
Mon, 17 Oct 2016 09:22:53 -0700
changeset 7116 24e5d18aa27c
parent 5708 49b43e37ce26
child 7710 21c8d4a2402e
permissions -rw-r--r--
23606339 openldap role audit class not set to "cusa"
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4835
d5abd56e3fcf 21170572 libmlx4 should be built with the system mlnx_umap.h
boris.chiu@oracle.com
parents: 4661
diff changeset
     1
#This patch was developed both in-house and from outside. We plan to submit it
d5abd56e3fcf 21170572 libmlx4 should be built with the system mlnx_umap.h
boris.chiu@oracle.com
parents: 4661
diff changeset
     2
#upstream, but do not yet have a target date for doing so
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
     3
#
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     4
# HG changeset patch
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     5
# Parent  714ac8a9d237c16e4c1d4c0d6b836fd6f2442b4f
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     6
libibverbs solaris specific changes
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     7
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     8
diff -r 714ac8a9d237 Makefile.am
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
     9
--- a/Makefile.am	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    10
+++ b/Makefile.am	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    11
@@ -11,7 +11,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    12
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    13
 src_libibverbs_la_SOURCES = src/cmd.c src/compat-1_0.c src/device.c src/init.c \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    14
 			    src/marshall.c src/memory.c src/sysfs.c src/verbs.c \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    15
-			    src/enum_strs.c
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    16
+			    src/enum_strs.c src/solaris_compatibility.c
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    17
 src_libibverbs_la_LDFLAGS = -version-info 1 -export-dynamic \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    18
     $(libibverbs_version_script)
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    19
 src_libibverbs_la_DEPENDENCIES = $(srcdir)/src/libibverbs.map
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    20
@@ -40,7 +40,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    21
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    22
 libibverbsinclude_HEADERS = include/infiniband/arch.h include/infiniband/driver.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    23
     include/infiniband/kern-abi.h include/infiniband/opcode.h include/infiniband/verbs.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    24
-    include/infiniband/sa-kern-abi.h include/infiniband/sa.h include/infiniband/marshall.h
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    25
+    include/infiniband/sa-kern-abi.h include/infiniband/sa.h include/infiniband/marshall.h include/infiniband/ofa_solaris.h
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    26
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    27
 man_MANS = man/ibv_asyncwatch.1 man/ibv_devices.1 man/ibv_devinfo.1	\
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    28
     man/ibv_rc_pingpong.1 man/ibv_uc_pingpong.1 man/ibv_ud_pingpong.1	\
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    29
@@ -67,6 +67,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    30
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    31
 EXTRA_DIST = include/infiniband/driver.h include/infiniband/kern-abi.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    32
     include/infiniband/opcode.h include/infiniband/verbs.h include/infiniband/marshall.h \
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    33
+    include/infiniband/ofa_solaris.h \
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    34
     include/infiniband/sa-kern-abi.h include/infiniband/sa.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    35
     src/ibverbs.h examples/pingpong.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    36
     src/libibverbs.map libibverbs.spec.in $(man_MANS)
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    37
diff -r 714ac8a9d237 Makefile.in
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    38
--- a/Makefile.in	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    39
+++ b/Makefile.in	Mon Feb 01 09:10:21 2016 -0800
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    40
@@ -1,7 +1,7 @@
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    41
-# Makefile.in generated by automake 1.14.1 from Makefile.am.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    42
+# Makefile.in generated by automake 1.15 from Makefile.am.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    43
 # @configure_input@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    44
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    45
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    46
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
1399
8f4b38fe52ad 16831066 need hardening in libibverbs (e.g., prevent double frees, interprocess sharing)
Christophe Juhasz <Chris.Juhasz@Sun.COM>
parents: 1196
diff changeset
    47
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    48
 # This Makefile.in is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    49
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    50
@@ -17,7 +17,17 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
    51
 
1399
8f4b38fe52ad 16831066 need hardening in libibverbs (e.g., prevent double frees, interprocess sharing)
Christophe Juhasz <Chris.Juhasz@Sun.COM>
parents: 1196
diff changeset
    52
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    53
 VPATH = @srcdir@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    54
-am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    55
+am__is_gnu_make = { \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    56
+  if test -z '$(MAKELEVEL)'; then \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    57
+    false; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    58
+  elif test -n '$(MAKE_HOST)'; then \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    59
+    true; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    60
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    61
+    true; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    62
+  else \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    63
+    false; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    64
+  fi; \
4661
353f8a998732 PSARC 2015/310 IBTF and OFUV updates
boris.chiu@oracle.com
parents: 2187
diff changeset
    65
+}
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    66
 am__make_running_with_option = \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    67
   case $${target_option-} in \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    68
       ?) ;; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    69
@@ -88,17 +98,6 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    70
 	examples/ibv_srq_pingpong$(EXEEXT) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    71
 	examples/ibv_xsrq_pingpong$(EXEEXT)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    72
 subdir = .
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    73
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    74
-	$(top_srcdir)/configure $(am__configure_deps) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    75
-	$(srcdir)/config.h.in $(srcdir)/libibverbs.spec.in \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    76
-	$(top_srcdir)/config/depcomp $(libibverbsinclude_HEADERS) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    77
-	AUTHORS COPYING ChangeLog README config/compile \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    78
-	config/config.guess config/config.sub config/depcomp \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    79
-	config/install-sh config/missing config/ltmain.sh \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    80
-	$(top_srcdir)/config/compile $(top_srcdir)/config/config.guess \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    81
-	$(top_srcdir)/config/config.sub \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    82
-	$(top_srcdir)/config/install-sh $(top_srcdir)/config/ltmain.sh \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    83
-	$(top_srcdir)/config/missing
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    84
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    85
 am__aclocal_m4_deps = $(top_srcdir)/config/libtool.m4 \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    86
 	$(top_srcdir)/config/ltoptions.m4 \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    87
@@ -107,6 +106,9 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    88
 	$(top_srcdir)/config/lt~obsolete.m4 $(top_srcdir)/configure.ac
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    89
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    90
 	$(ACLOCAL_M4)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    91
+DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    92
+	$(am__configure_deps) $(libibverbsinclude_HEADERS) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    93
+	$(am__DIST_COMMON)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    94
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    95
  configure.lineno config.status.lineno
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    96
 mkinstalldirs = $(install_sh) -d
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    97
@@ -152,7 +154,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    98
 	src/src_libibverbs_la-marshall.lo \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
    99
 	src/src_libibverbs_la-memory.lo src/src_libibverbs_la-sysfs.lo \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   100
 	src/src_libibverbs_la-verbs.lo \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   101
-	src/src_libibverbs_la-enum_strs.lo
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   102
+	src/src_libibverbs_la-enum_strs.lo \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   103
+	src/src_libibverbs_la-solaris_compatibility.lo
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   104
 src_libibverbs_la_OBJECTS = $(am_src_libibverbs_la_OBJECTS)
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   105
 AM_V_lt = $(am__v_lt_@AM_V@)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   106
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   107
@@ -288,6 +291,15 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   108
 CTAGS = ctags
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   109
 CSCOPE = cscope
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   110
 AM_RECURSIVE_TARGETS = cscope
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   111
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   112
+	$(srcdir)/libibverbs.spec.in $(top_srcdir)/config/compile \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   113
+	$(top_srcdir)/config/config.guess \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   114
+	$(top_srcdir)/config/config.sub $(top_srcdir)/config/depcomp \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   115
+	$(top_srcdir)/config/install-sh $(top_srcdir)/config/ltmain.sh \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   116
+	$(top_srcdir)/config/missing AUTHORS COPYING ChangeLog README \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   117
+	config/compile config/config.guess config/config.sub \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   118
+	config/depcomp config/install-sh config/ltmain.sh \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   119
+	config/missing
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   120
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   121
 distdir = $(PACKAGE)-$(VERSION)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   122
 top_distdir = $(distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   123
@@ -428,7 +440,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   124
 libibverbs_version_script = @LIBIBVERBS_VERSION_SCRIPT@
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   125
 src_libibverbs_la_SOURCES = src/cmd.c src/compat-1_0.c src/device.c src/init.c \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   126
 			    src/marshall.c src/memory.c src/sysfs.c src/verbs.c \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   127
-			    src/enum_strs.c
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   128
+			    src/enum_strs.c src/solaris_compatibility.c
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   129
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   130
 src_libibverbs_la_LDFLAGS = -version-info 1 -export-dynamic \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   131
     $(libibverbs_version_script)
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   132
@@ -453,7 +465,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   133
 libibverbsincludedir = $(includedir)/infiniband
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   134
 libibverbsinclude_HEADERS = include/infiniband/arch.h include/infiniband/driver.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   135
     include/infiniband/kern-abi.h include/infiniband/opcode.h include/infiniband/verbs.h \
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   136
-    include/infiniband/sa-kern-abi.h include/infiniband/sa.h include/infiniband/marshall.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   137
+    include/infiniband/sa-kern-abi.h include/infiniband/sa.h include/infiniband/marshall.h include/infiniband/ofa_solaris.h
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   138
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   139
 man_MANS = man/ibv_asyncwatch.1 man/ibv_devices.1 man/ibv_devinfo.1	\
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   140
     man/ibv_rc_pingpong.1 man/ibv_uc_pingpong.1 man/ibv_ud_pingpong.1	\
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   141
@@ -480,6 +492,7 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   142
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   143
 EXTRA_DIST = include/infiniband/driver.h include/infiniband/kern-abi.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   144
     include/infiniband/opcode.h include/infiniband/verbs.h include/infiniband/marshall.h \
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   145
+    include/infiniband/ofa_solaris.h \
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   146
     include/infiniband/sa-kern-abi.h include/infiniband/sa.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   147
     src/ibverbs.h examples/pingpong.h \
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   148
     src/libibverbs.map libibverbs.spec.in $(man_MANS)
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   149
@@ -504,7 +517,6 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   150
 	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   151
 	$(am__cd) $(top_srcdir) && \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   152
 	  $(AUTOMAKE) --foreign Makefile
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   153
-.PRECIOUS: Makefile
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   154
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   155
 	@case '$?' in \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   156
 	  *config.status*) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   157
@@ -599,6 +611,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   158
 	src/$(DEPDIR)/$(am__dirstamp)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   159
 src/src_libibverbs_la-enum_strs.lo: src/$(am__dirstamp) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   160
 	src/$(DEPDIR)/$(am__dirstamp)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   161
+src/src_libibverbs_la-solaris_compatibility.lo: src/$(am__dirstamp) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   162
+	src/$(DEPDIR)/$(am__dirstamp)
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   163
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   164
 src/libibverbs.la: $(src_libibverbs_la_OBJECTS) $(src_libibverbs_la_DEPENDENCIES) $(EXTRA_src_libibverbs_la_DEPENDENCIES) src/$(am__dirstamp)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   165
 	$(AM_V_CCLD)$(src_libibverbs_la_LINK) -rpath $(libdir) $(src_libibverbs_la_OBJECTS) $(src_libibverbs_la_LIBADD) $(LIBS)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   166
@@ -733,6 +747,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   167
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-init.Plo@am__quote@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   168
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-marshall.Plo@am__quote@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   169
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-memory.Plo@am__quote@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   170
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-solaris_compatibility.Plo@am__quote@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   171
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-sysfs.Plo@am__quote@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   172
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_libibverbs_la-verbs.Plo@am__quote@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   173
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   174
@@ -823,6 +838,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   175
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   176
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(src_libibverbs_la_CFLAGS) $(CFLAGS) -c -o src/src_libibverbs_la-enum_strs.lo `test -f 'src/enum_strs.c' || echo '$(srcdir)/'`src/enum_strs.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   177
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   178
+src/src_libibverbs_la-solaris_compatibility.lo: src/solaris_compatibility.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   179
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(src_libibverbs_la_CFLAGS) $(CFLAGS) -MT src/src_libibverbs_la-solaris_compatibility.lo -MD -MP -MF src/$(DEPDIR)/src_libibverbs_la-solaris_compatibility.Tpo -c -o src/src_libibverbs_la-solaris_compatibility.lo `test -f 'src/solaris_compatibility.c' || echo '$(srcdir)/'`src/solaris_compatibility.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   180
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) src/$(DEPDIR)/src_libibverbs_la-solaris_compatibility.Tpo src/$(DEPDIR)/src_libibverbs_la-solaris_compatibility.Plo
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   181
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='src/solaris_compatibility.c' object='src/src_libibverbs_la-solaris_compatibility.lo' libtool=yes @AMDEPBACKSLASH@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   182
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   183
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(src_libibverbs_la_CFLAGS) $(CFLAGS) -c -o src/src_libibverbs_la-solaris_compatibility.lo `test -f 'src/solaris_compatibility.c' || echo '$(srcdir)/'`src/solaris_compatibility.c
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   184
+
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   185
 mostlyclean-libtool:
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   186
 	-rm -f *.lo
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   187
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   188
@@ -1059,15 +1081,15 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   189
 	$(am__post_remove_distdir)
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   190
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   191
 dist-tarZ: distdir
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   192
-	@echo WARNING: "Support for shar distribution archives is" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   193
-	               "deprecated." >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   194
+	@echo WARNING: "Support for distribution archives compressed with" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   195
+		       "legacy program 'compress' is deprecated." >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   196
 	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   197
 	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   198
 	$(am__post_remove_distdir)
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   199
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   200
 dist-shar: distdir
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   201
-	@echo WARNING: "Support for distribution archives compressed with" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   202
-		       "legacy program 'compress' is deprecated." >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   203
+	@echo WARNING: "Support for shar distribution archives is" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   204
+	               "deprecated." >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   205
 	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   206
 	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   207
 	$(am__post_remove_distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   208
@@ -1103,17 +1125,17 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   209
 	esac
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   210
 	chmod -R a-w $(distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   211
 	chmod u+w $(distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   212
-	mkdir $(distdir)/_build $(distdir)/_inst
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   213
+	mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   214
 	chmod a-w $(distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   215
 	test -d $(distdir)/_build || exit 0; \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   216
 	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   217
 	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   218
 	  && am__cwd=`pwd` \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   219
-	  && $(am__cd) $(distdir)/_build \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   220
-	  && ../configure \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   221
+	  && $(am__cd) $(distdir)/_build/sub \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   222
+	  && ../../configure \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   223
 	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   224
 	    $(DISTCHECK_CONFIGURE_FLAGS) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   225
-	    --srcdir=.. --prefix="$$dc_install_base" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   226
+	    --srcdir=../.. --prefix="$$dc_install_base" \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   227
 	  && $(MAKE) $(AM_MAKEFLAGS) \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   228
 	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   229
 	  && $(MAKE) $(AM_MAKEFLAGS) check \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   230
@@ -1312,6 +1334,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   231
 	uninstall-libibverbsincludeHEADERS uninstall-man \
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   232
 	uninstall-man1 uninstall-man3
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   233
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   234
+.PRECIOUS: Makefile
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   235
+
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   236
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   237
 dist-hook: libibverbs.spec
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   238
 	cp libibverbs.spec $(distdir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   239
diff -r 714ac8a9d237 aclocal.m4
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   240
--- a/aclocal.m4	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   241
+++ b/aclocal.m4	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   242
@@ -1,6 +1,6 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   243
-# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   244
+# generated automatically by aclocal 1.15 -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   245
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   246
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   247
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   248
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   249
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   250
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   251
@@ -20,7 +20,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   252
 If you have problems, you may need to regenerate the build system entirely.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   253
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   254
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   255
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   256
+# Copyright (C) 2002-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   257
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   258
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   259
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   260
@@ -32,10 +32,10 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   261
 # generated from the m4 files accompanying Automake X.Y.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   262
 # (This private macro should not be called outside this file.)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   263
 AC_DEFUN([AM_AUTOMAKE_VERSION],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   264
-[am__api_version='1.14'
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   265
+[am__api_version='1.15'
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   266
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   267
 dnl require some minimum version.  Point them to the right macro.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   268
-m4_if([$1], [1.14.1], [],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   269
+m4_if([$1], [1.15], [],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   270
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   271
 ])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   272
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   273
@@ -51,14 +51,14 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   274
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   275
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   276
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   277
-[AM_AUTOMAKE_VERSION([1.14.1])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   278
+[AM_AUTOMAKE_VERSION([1.15])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   279
 m4_ifndef([AC_AUTOCONF_VERSION],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   280
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   281
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   282
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   283
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   284
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   285
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   286
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   287
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   288
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   289
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   290
@@ -103,15 +103,14 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   291
 # configured tree to be moved without reconfiguration.
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   292
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   293
 AC_DEFUN([AM_AUX_DIR_EXPAND],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   294
-[dnl Rely on autoconf to set up CDPATH properly.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   295
-AC_PREREQ([2.50])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   296
-# expand $ac_aux_dir to an absolute path
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   297
-am_aux_dir=`cd $ac_aux_dir && pwd`
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   298
+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   299
+# Expand $ac_aux_dir to an absolute path.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   300
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   301
 ])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   302
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   303
 # AM_CONDITIONAL                                            -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   304
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   305
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   306
+# Copyright (C) 1997-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   307
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   308
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   309
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   310
@@ -142,7 +141,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   311
 Usually this means the macro was only invoked conditionally.]])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   312
 fi])])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   313
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   314
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   315
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   316
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   317
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   318
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   319
@@ -333,7 +332,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   320
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   321
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   322
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   323
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   324
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   325
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   326
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   327
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   328
@@ -409,7 +408,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   329
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   330
 # Do all the work for Automake.                             -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   331
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   332
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   333
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   334
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   335
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   336
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   337
@@ -499,8 +498,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   338
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   339
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   340
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   341
-# We need awk for the "check" target.  The system "awk" is bad on
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   342
-# some platforms.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   343
+# We need awk for the "check" target (and possibly the TAP driver).  The
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   344
+# system "awk" is bad on some platforms.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   345
 AC_REQUIRE([AC_PROG_AWK])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   346
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   347
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   348
@@ -574,6 +573,9 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   349
     AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   350
   fi
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   351
 fi
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   352
+dnl The trailing newline in this macro's definition is deliberate, for
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   353
+dnl backward compatibility and to allow trailing 'dnl'-style comments
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   354
+dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   355
 ])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   356
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   357
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   358
@@ -603,7 +605,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   359
 done
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   360
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   361
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   362
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   363
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   364
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   365
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   366
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   367
@@ -614,7 +616,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   368
 # Define $install_sh.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   369
 AC_DEFUN([AM_PROG_INSTALL_SH],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   370
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   371
-if test x"${install_sh}" != xset; then
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   372
+if test x"${install_sh+set}" != xset; then
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   373
   case $am_aux_dir in
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   374
   *\ * | *\	*)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   375
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   376
@@ -624,7 +626,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   377
 fi
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   378
 AC_SUBST([install_sh])])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   379
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   380
-# Copyright (C) 2003-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   381
+# Copyright (C) 2003-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   382
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   383
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   384
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   385
@@ -645,7 +647,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   386
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   387
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   388
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   389
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   390
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   391
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   392
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   393
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   394
@@ -695,7 +697,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   395
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   396
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   397
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   398
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   399
+# Copyright (C) 1997-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   400
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   401
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   402
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   403
@@ -734,7 +736,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   404
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   405
 # Helper functions for option handling.                     -*- Autoconf -*-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   406
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   407
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   408
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   409
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   410
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   411
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   412
@@ -763,7 +765,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   413
 AC_DEFUN([_AM_IF_OPTION],
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   414
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   415
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   416
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   417
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   418
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   419
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   420
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   421
@@ -810,7 +812,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   422
 # For backward compatibility.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   423
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   424
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   425
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   426
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   427
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   428
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   429
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   430
@@ -829,7 +831,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   431
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   432
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   433
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   434
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   435
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   436
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   437
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   438
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   439
@@ -910,7 +912,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   440
 rm -f conftest.file
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   441
 ])
1125
47a52afcc302 PSARC 2012/384 Fast IB node death detection
Boris Chiu <Boris.Chiu@Oracle.COM>
parents: 1019
diff changeset
   442
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   443
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   444
+# Copyright (C) 2009-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   445
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   446
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   447
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   448
@@ -970,7 +972,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   449
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   450
 ])
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   451
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   452
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   453
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   454
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   455
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   456
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   457
@@ -998,7 +1000,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   458
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   459
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   460
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   461
-# Copyright (C) 2006-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   462
+# Copyright (C) 2006-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   463
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   464
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   465
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   466
@@ -1017,7 +1019,7 @@
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   467
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   468
 # Check how to create a tarball.                            -*- Autoconf -*-
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   469
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   470
-# Copyright (C) 2004-2013 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   471
+# Copyright (C) 2004-2014 Free Software Foundation, Inc.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   472
 #
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   473
 # This file is free software; the Free Software Foundation
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   474
 # gives unlimited permission to copy and/or distribute it,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   475
diff -r 714ac8a9d237 configure
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   476
--- a/configure	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   477
+++ b/configure	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   478
@@ -2285,7 +2285,7 @@
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   479
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   480
 ac_config_headers="$ac_config_headers config.h"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   481
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   482
-am__api_version='1.14'
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   483
+am__api_version='1.15'
2187
391c8a50fa82 19187537 iberror() of open-fabrics dumps core because of buffer overrun
boris.chiu@oracle.com
parents: 1566
diff changeset
   484
 
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   485
 # Find a good install program.  We prefer a C program (faster),
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   486
 # so one script is as good as another.  But avoid the broken or
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   487
diff -r 714ac8a9d237 examples/device_list.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   488
--- a/examples/device_list.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   489
+++ b/examples/device_list.c	Mon Feb 01 09:10:21 2016 -0800
851
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   490
@@ -36,16 +36,32 @@
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   491
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   492
 #include <stdio.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   493
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   494
+#if !(defined(__SVR4) && defined(__sun))
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   495
 #include <endian.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   496
 #include <byteswap.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   497
+#endif
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   498
 
851
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   499
+#include <stdlib.h>
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   500
+#include <string.h>
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   501
 #include <infiniband/verbs.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   502
 #include <infiniband/arch.h>
851
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   503
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   504
+/*
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   505
+ * Structure to hold the data printed by ibv_devices.
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   506
+ */
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   507
+typedef struct dev_print_s {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   508
+	char			name[24];
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   509
+	unsigned long long	guid;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   510
+	uint8_t			is_pf;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   511
+} dev_print_t;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   512
+
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   513
 int main(int argc, char *argv[])
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   514
 {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   515
 	struct ibv_device **dev_list;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   516
 	int num_devices, i;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   517
+	unsigned long long	guid_external;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   518
+	dev_print_t	*dp;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   519
+	int	print_col = 0;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   520
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   521
 	dev_list = ibv_get_device_list(&num_devices);
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   522
 	if (!dev_list) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   523
@@ -53,15 +69,45 @@
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   524
 		return 1;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   525
 	}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   526
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   527
-	printf("    %-16s\t   node GUID\n", "device");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   528
-	printf("    %-16s\t----------------\n", "------");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   529
+	dp = (dev_print_t *)malloc(sizeof(dev_print_t) * num_devices);
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   530
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   531
-	for (i = 0; i < num_devices; ++i) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   532
-		printf("    %-16s\t%016llx\n",
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   533
-		       ibv_get_device_name(dev_list[i]),
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   534
-		       (unsigned long long) ntohll(ibv_get_device_guid(dev_list[i])));
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   535
+	for (i = (num_devices - 1); i >= 0; --i) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   536
+		strcpy(dp[i].name, ibv_get_device_name(dev_list[i]));
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   537
+
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   538
+		dp[i].guid = (unsigned long long) ntohll(ibv_get_device_guid(dev_list[i]));
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   539
+		guid_external = (unsigned long long) ntohll(ibv_get_device_guid_external(dev_list[i]));
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   540
+		if (dp[i].guid != guid_external) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   541
+			print_col = 1;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   542
+			dp[i].is_pf = 0;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   543
+		} else
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   544
+			dp[i].is_pf = 1;
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   545
 	}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   546
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   547
+	if (print_col) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   548
+		printf("    %-16s\t   node GUID\t        type\n", "device");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   549
+		printf("    %-16s\t----------------\t----\n", "------");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   550
+		/* First print PFs */
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   551
+		for (i = (num_devices - 1); i >= 0; --i) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   552
+			if (dp[i].is_pf)
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   553
+				printf("    %-16s\t%016llx\t %s\n",
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   554
+					dp[i].name, dp[i].guid, "PF");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   555
+		}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   556
+		/* print VFs */
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   557
+		for (i = (num_devices - 1); i >= 0; --i) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   558
+			if (!dp[i].is_pf)
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   559
+				printf("    %-16s\t%016llx\t %s\n",
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   560
+					dp[i].name, dp[i].guid, "VF");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   561
+		}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   562
+	} else {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   563
+		printf("    %-16s\t   node GUID\n", "device");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   564
+		printf("    %-16s\t----------------\n", "------");
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   565
+		for (i = (num_devices - 1); i >= 0; --i) {
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   566
+			printf("    %-16s\t%016llx\n",
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   567
+				dp[i].name, dp[i].guid);
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   568
+		}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   569
+	}
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   570
+	free(dp);
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   571
+
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   572
 	ibv_free_device_list(dev_list);
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   573
 
5d9119e2b7e1 PSARC/2012/200 OFUV SR-IOV support
Alex Chiu <Alex.Chiu@Oracle.COM>
parents: 817
diff changeset
   574
 	return 0;
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   575
diff -r 714ac8a9d237 examples/devinfo.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   576
--- a/examples/devinfo.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   577
+++ b/examples/devinfo.c	Mon Feb 01 09:10:21 2016 -0800
369
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   578
@@ -41,8 +41,10 @@
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   579
 #include <string.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   580
 #include <getopt.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   581
 #include <netinet/in.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   582
+#if !(defined(__SVR4) && defined(__sun))
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   583
 #include <endian.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   584
 #include <byteswap.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   585
+#endif
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   586
 
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   587
 #include <infiniband/verbs.h>
cc8c00719da9 PSARC 2011/165 OFUV update of existing components
Boris Chiu <Boris.Chiu@Sun.COM>
parents:
diff changeset
   588
 #include <infiniband/driver.h>
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   589
diff -r 714ac8a9d237 examples/rc_pingpong.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   590
--- a/examples/rc_pingpong.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   591
+++ b/examples/rc_pingpong.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   592
@@ -156,8 +156,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   593
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   594
 	n = getaddrinfo(servername, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   595
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   596
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   597
-		fprintf(stderr, "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   598
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   599
+		if (n == EAI_NONAME)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   600
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   601
+			    "Name or service not known for %s:%d\n", servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   602
+		else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   603
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   604
+			    "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   605
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   606
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   607
 	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   608
@@ -233,7 +238,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   609
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   610
 	n = getaddrinfo(NULL, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   611
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   612
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   613
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   614
 		fprintf(stderr, "%s for port %d\n", gai_strerror(n), port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   615
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   616
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   617
diff -r 714ac8a9d237 examples/srq_pingpong.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   618
--- a/examples/srq_pingpong.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   619
+++ b/examples/srq_pingpong.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   620
@@ -166,8 +166,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   621
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   622
 	n = getaddrinfo(servername, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   623
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   624
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   625
-		fprintf(stderr, "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   626
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   627
+		if (n == EAI_NONAME)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   628
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   629
+			    "Name or service not known for %s:%d\n", servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   630
+		else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   631
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   632
+			    "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   633
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   634
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   635
 	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   636
@@ -255,7 +260,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   637
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   638
 	n = getaddrinfo(NULL, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   639
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   640
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   641
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   642
 		fprintf(stderr, "%s for port %d\n", gai_strerror(n), port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   643
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   644
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   645
diff -r 714ac8a9d237 examples/uc_pingpong.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   646
--- a/examples/uc_pingpong.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   647
+++ b/examples/uc_pingpong.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   648
@@ -144,7 +144,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   649
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   650
 	n = getaddrinfo(servername, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   651
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   652
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   653
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   654
 		fprintf(stderr, "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   655
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   656
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   657
@@ -221,7 +221,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   658
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   659
 	n = getaddrinfo(NULL, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   660
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   661
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   662
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   663
 		fprintf(stderr, "%s for port %d\n", gai_strerror(n), port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   664
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   665
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   666
diff -r 714ac8a9d237 examples/ud_pingpong.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   667
--- a/examples/ud_pingpong.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   668
+++ b/examples/ud_pingpong.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   669
@@ -144,8 +144,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   670
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   671
 	n = getaddrinfo(servername, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   672
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   673
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   674
-		fprintf(stderr, "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   675
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   676
+		if (n == EAI_NONAME)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   677
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   678
+			    "Name or service not known for %s:%d\n", servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   679
+		else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   680
+			fprintf(stderr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   681
+			    "%s for %s:%d\n", gai_strerror(n), servername, port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   682
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   683
 		return NULL;
4835
d5abd56e3fcf 21170572 libmlx4 should be built with the system mlnx_umap.h
boris.chiu@oracle.com
parents: 4661
diff changeset
   684
 	}
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   685
@@ -220,7 +225,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   686
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   687
 	n = getaddrinfo(NULL, service, &hints, &res);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   688
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   689
-	if (n < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   690
+	if (n != 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   691
 		fprintf(stderr, "%s for port %d\n", gai_strerror(n), port);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   692
 		free(service);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   693
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   694
diff -r 714ac8a9d237 include/infiniband/arch.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   695
--- a/include/infiniband/arch.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   696
+++ b/include/infiniband/arch.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   697
@@ -34,6 +34,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   698
 #define INFINIBAND_ARCH_H
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   699
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   700
 #include <stdint.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   701
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   702
 #include <endian.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   703
 #include <byteswap.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   704
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   705
@@ -46,6 +47,9 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   706
 #else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   707
 #error __BYTE_ORDER is neither __LITTLE_ENDIAN nor __BIG_ENDIAN
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   708
 #endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   709
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   710
+#include <infiniband/ofa_solaris.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   711
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   712
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   713
 /*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   714
  * Architecture-specific defines.  Currently, an architecture is
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   715
diff -r 714ac8a9d237 include/infiniband/driver.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   716
--- a/include/infiniband/driver.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   717
+++ b/include/infiniband/driver.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   718
@@ -190,6 +190,10 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   719
 			  struct ibv_recv_wr **bad_wr);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   720
 int ibv_cmd_create_ah(struct ibv_pd *pd, struct ibv_ah *ah,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   721
 		      struct ibv_ah_attr *attr);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   722
+int ibv_cmd_create_ah_ex(struct ibv_pd *pd, struct ibv_ah *ah,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   723
+			struct ibv_ah_attr *attr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   724
+			struct ibv_create_ah *cmd, size_t cmd_size,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   725
+			struct ibv_create_ah_resp *resp, size_t resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   726
 int ibv_cmd_destroy_ah(struct ibv_ah *ah);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   727
 int ibv_cmd_attach_mcast(struct ibv_qp *qp, const union ibv_gid *gid, uint16_t lid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   728
 int ibv_cmd_detach_mcast(struct ibv_qp *qp, const union ibv_gid *gid, uint16_t lid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   729
diff -r 714ac8a9d237 include/infiniband/kern-abi.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   730
--- a/include/infiniband/kern-abi.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   731
+++ b/include/infiniband/kern-abi.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   732
@@ -35,7 +35,11 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   733
 #ifndef KERN_ABI_H
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   734
 #define KERN_ABI_H
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   735
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   736
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   737
 #include <linux/types.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   738
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   739
+#include <infiniband/ofa_solaris.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   740
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   741
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   742
 /*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   743
  * This file must be kept in sync with the kernel's version of
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   744
@@ -199,6 +203,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   745
 struct ibv_query_device_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   746
 	__u64 fw_ver;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   747
 	__u64 node_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   748
+	__u64 node_guid_external;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   749
 	__u64 sys_image_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   750
 	__u64 max_mr_size;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   751
 	__u64 page_size_cap;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   752
@@ -279,11 +284,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   753
 	__u16 in_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   754
 	__u16 out_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   755
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   756
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   757
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   758
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   759
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   760
 struct ibv_alloc_pd_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   761
 	__u32 pd_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   762
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   763
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   764
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   765
 struct ibv_dealloc_pd {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   766
@@ -291,6 +298,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   767
 	__u16 in_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   768
 	__u16 out_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   769
 	__u32 pd_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   770
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   771
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   772
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   773
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   774
 struct ibv_open_xrcd {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   775
@@ -324,6 +333,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   776
 	__u64 hca_va;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   777
 	__u32 pd_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   778
 	__u32 access_flags;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   779
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   780
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   781
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   782
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   783
@@ -331,6 +341,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   784
 	__u32 mr_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   785
 	__u32 lkey;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   786
 	__u32 rkey;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   787
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   788
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   789
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   790
 struct ibv_dereg_mr {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   791
@@ -338,6 +349,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   792
 	__u16 in_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   793
 	__u16 out_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   794
 	__u32 mr_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   795
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   796
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   797
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   798
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   799
 struct ibv_create_comp_channel {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   800
@@ -349,6 +362,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   801
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   802
 struct ibv_create_comp_channel_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   803
 	__u32 fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   804
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   805
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   806
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   807
 struct ibv_create_cq {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   808
@@ -394,6 +408,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   809
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   810
 	__u32 cq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   811
 	__u32 ne;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   812
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   813
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   814
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   815
 struct ibv_poll_cq_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   816
@@ -408,6 +423,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   817
 	__u16 out_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   818
 	__u32 cq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   819
 	__u32 solicited;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   820
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   821
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   822
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   823
 struct ibv_resize_cq {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   824
@@ -417,6 +433,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   825
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   826
 	__u32 cq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   827
 	__u32 cqe;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   828
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   829
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   830
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   831
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   832
@@ -433,6 +450,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   833
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   834
 	__u32 cq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   835
 	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   836
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   837
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   838
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   839
 struct ibv_destroy_cq_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   840
@@ -567,6 +585,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   841
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   842
 	__u32 qp_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   843
 	__u32 attr_mask;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   844
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   845
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   846
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   847
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   848
@@ -634,6 +653,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   849
 	__u8  alt_port_num;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   850
 	__u8  alt_timeout;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   851
 	__u8  reserved[2];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   852
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   853
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   854
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   855
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   856
@@ -644,10 +664,12 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   857
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   858
 	__u32 qp_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   859
 	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   860
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   861
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   862
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   863
 struct ibv_destroy_qp_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   864
 	__u32 events_reported;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   865
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   866
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   867
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   868
 struct ibv_kern_send_wr {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   869
@@ -767,6 +789,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   870
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   871
 struct ibv_post_send_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   872
 	__u32 bad_wr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   873
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   874
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   875
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   876
 struct ibv_kern_recv_wr {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   877
@@ -789,6 +812,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   878
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   879
 struct ibv_post_recv_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   880
 	__u32 bad_wr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   881
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   882
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   883
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   884
 struct ibv_post_srq_recv {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   885
@@ -805,6 +829,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   886
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   887
 struct ibv_post_srq_recv_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   888
 	__u32 bad_wr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   889
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   890
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   891
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   892
 struct ibv_create_ah {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   893
@@ -820,6 +845,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   894
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   895
 struct ibv_create_ah_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   896
 	__u32 handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   897
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   898
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   899
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   900
 struct ibv_destroy_ah {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   901
@@ -827,6 +853,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   902
 	__u16 in_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   903
 	__u16 out_words;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   904
 	__u32 ah_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   905
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   906
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   907
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   908
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   909
 struct ibv_attach_mcast {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   910
@@ -837,6 +865,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   911
 	__u32 qp_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   912
 	__u16 mlid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   913
 	__u16 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   914
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   915
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   916
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   917
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   918
@@ -866,6 +895,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   919
 	__u32 qp_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   920
 	__u16 mlid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   921
 	__u16 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   922
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   923
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   924
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   925
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   926
@@ -914,6 +944,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   927
 	__u32 attr_mask;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   928
 	__u32 max_wr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   929
 	__u32 srq_limit;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   930
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   931
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   932
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   933
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   934
@@ -924,6 +955,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   935
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   936
 	__u32 srq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   937
 	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   938
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   939
 	__u64 driver_data[0];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   940
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   941
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   942
@@ -941,10 +973,12 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   943
 	__u64 response;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   944
 	__u32 srq_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   945
 	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   946
+	__u64 user_handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   947
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   948
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   949
 struct ibv_destroy_srq_resp {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   950
 	__u32 events_reported;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   951
+	__u32 reserved;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   952
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   953
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   954
 /*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   955
diff -r 714ac8a9d237 include/infiniband/sa-kern-abi.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   956
--- a/include/infiniband/sa-kern-abi.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   957
+++ b/include/infiniband/sa-kern-abi.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   958
@@ -33,7 +33,11 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   959
 #ifndef INFINIBAND_SA_KERN_ABI_H
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   960
 #define INFINIBAND_SA_KERN_ABI_H
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   961
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   962
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   963
 #include <linux/types.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   964
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   965
+#include <infiniband/ofa_solaris.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   966
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   967
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   968
 /*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   969
  * Obsolete, deprecated names.  Will be removed in libibverbs 1.1.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   970
diff -r 714ac8a9d237 include/infiniband/verbs.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   971
--- a/include/infiniband/verbs.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   972
+++ b/include/infiniband/verbs.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   973
@@ -40,6 +40,9 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   974
 #include <pthread.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   975
 #include <stddef.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   976
 #include <errno.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   977
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   978
+#include <infiniband/ofa_solaris.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   979
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   980
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   981
 #ifdef __cplusplus
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   982
 #  define BEGIN_C_DECLS extern "C" {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   983
@@ -128,6 +131,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   984
 struct ibv_device_attr {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   985
 	char			fw_ver[64];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   986
 	uint64_t		node_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   987
+	uint64_t		node_guid_external;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   988
 	uint64_t		sys_image_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   989
 	uint64_t		max_mr_size;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   990
 	uint64_t		page_size_cap;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   991
@@ -498,6 +502,14 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   992
 	uint32_t		max_inline_data;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   993
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   994
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   995
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   996
+/*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   997
+ * The 31st bit of sq_sig_all is set for QPs allocated
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   998
+ * using librdmacm. Consumers use sq_sig_all 0 /1.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
   999
+ */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1000
+#define LIB_RDMACM_QP_BIT	0x8000
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1001
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1002
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1003
 struct ibv_qp_init_attr {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1004
 	void		       *qp_context;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1005
 	struct ibv_cq	       *send_cq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1006
@@ -859,6 +871,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1007
 	char			dev_path[IBV_SYSFS_PATH_MAX];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1008
 	/* Path to infiniband class device in sysfs */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1009
 	char			ibdev_path[IBV_SYSFS_PATH_MAX];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1010
+	uint                    blueflame_enabled;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1011
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1012
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1013
 struct verbs_device {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1014
@@ -934,6 +947,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1015
 	struct ibv_device      *device;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1016
 	struct ibv_context_ops	ops;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1017
 	int			cmd_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1018
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1019
+	/*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1020
+	 * Solaris user libraries use this FD for mmap operations. It is an
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1021
+	 * open to the underlying kernel hardware specific driver.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1022
+	 */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1023
+	int			mmap_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1024
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1025
 	int			async_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1026
 	int			num_comp_vectors;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1027
 	pthread_mutex_t		mutex;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1028
@@ -1028,6 +1048,11 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1029
 uint64_t ibv_get_device_guid(struct ibv_device *device);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1030
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1031
 /**
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1032
+ * ibv_get_device_guid_external - Return device's node external GUID
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1033
+ */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1034
+uint64_t ibv_get_device_guid_external(struct ibv_device *device);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1035
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1036
+/**
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1037
  * ibv_open_device - Initialize device for use
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1038
  */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1039
 struct ibv_context *ibv_open_device(struct ibv_device *device);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1040
diff -r 714ac8a9d237 man/ibv_devices.1
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1041
--- a/man/ibv_devices.1	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1042
+++ b/man/ibv_devices.1	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1043
@@ -10,6 +10,35 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1044
 .PP
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1045
 List RDMA devices available for use from userspace.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1046
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1047
+On SR-IOV capable systems, if a domain is configured with
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1048
+VFs (Virtual Function), ibv_devices lists for each IB device
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1049
+the node GUID and the type (PF or VF).  In this case, the PF
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1050
+devices are displayed before the VF devices.  The following
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1051
+shows the results of running ibv_devices on a domain with
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1052
+one PF and two VFs:
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1053
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1054
+    device                 node GUID            type
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1055
+    ------              ----------------        ----
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1056
+    mlx4_2              00212800013f3126         PF
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1057
+    mlx4_0              00212d00013f3126         VF
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1058
+    mlx4_1              00212900013f3126         VF
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1059
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1060
+If all of the IB devices are PFs, only node GUIDs are
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1061
+listed.  The following shows the results of running
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1062
+ibv_devices on a domain with one PF and no VFs:
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1063
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1064
+    device                 node GUID
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1065
+    ------              ----------------
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1066
+    mlx4_0              00212800013f3126
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1067
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1068
+On systems which are not SR-IOV capable only node GUIDs are
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1069
+listed.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1070
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1071
+    device                 node GUID
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1072
+    ------              ----------------
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1073
+    mlx4_0              0021280001a0e4d8
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1074
+    mlx4_1              0021280001a0e754
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1075
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1076
 .SH SEE ALSO
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1077
 .BR ibv_devinfo (1)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1078
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1079
diff -r 714ac8a9d237 src/cmd.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1080
--- a/src/cmd.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1081
+++ b/src/cmd.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1082
@@ -42,24 +42,81 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1083
 #include <errno.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1084
 #include <alloca.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1085
 #include <string.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1086
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1087
+#include <fcntl.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1088
+#include <sys/stat.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1089
+#include <sys/mkdev.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1090
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1091
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1092
 #include "ibverbs.h"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1093
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1094
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1095
+extern int ibv_open_mmap_driver(char *dev_name);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1096
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1097
+/*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1098
+ * Event file creation for GET_CONTEXT & CREATE_COMP_CHANNEL :
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1099
+ * 	Solaris Uverbs driver supports creation of event file
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1100
+ * 	from the open(2) system call only. Event file will not
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1101
+ * 	be created by the write(2) syscall, for the above commands
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1102
+ *	as in Linux OFED.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1103
+ *
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1104
+ * Sequence of operations for GET_CONTEXT &  CREATE_COMP_CHANNEL :
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1105
+ *	event_fd = open(UVERBS_EVENT_FILE, O_RDWR);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1106
+ *	fstat(event_fd, &fstat_buf);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1107
+ *	NOTE : Minor number of event file passed to driver 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1108
+ *	cmd.resp.fd = minor(fstat_buf.st_rdev);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1109
+ *	write(verbs_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1110
+ *	NOTE : Initialize the fd to one got by opening event file
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1111
+ *	cmd.resp.fd = event_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1112
+ */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1113
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1114
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1115
 int ibv_cmd_get_context(struct ibv_context *context, struct ibv_get_context *cmd,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1116
 			size_t cmd_size, struct ibv_get_context_resp *resp,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1117
 			size_t resp_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1118
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1119
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1120
+	int			event_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1121
+	struct stat		fstat_buf;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1122
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1123
 	if (abi_ver < IB_USER_VERBS_MIN_ABI_VERSION)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1124
 		return ENOSYS;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1125
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1126
 	IBV_INIT_CMD_RESP(cmd, cmd_size, GET_CONTEXT, resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1127
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1128
+	event_fd = open("/dev/infiniband/ofs/uverbs:event", O_RDWR);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1129
+	if (event_fd < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1130
+		return (errno);	
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1131
+	if (fstat(event_fd, &fstat_buf))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1132
+		return (errno);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1133
+	resp->async_fd = minor(fstat_buf.st_rdev);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1134
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1135
+	/*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1136
+	 * Open the underlying kernel hardware driver that will
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1137
+	 * provide the mmap function for this context.
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1138
+	 */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1139
+	context->mmap_fd = ibv_open_mmap_driver(context->device->dev_name);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1140
+	if (context->mmap_fd < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1141
+		fprintf(stderr, PFX "ibv_cmd_get_context: Mmap open failed\n");
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1142
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1143
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1144
 	if (write(context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1145
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1146
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1147
+	resp->async_fd = event_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1148
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1149
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1150
 	(void) VALGRIND_MAKE_MEM_DEFINED(resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1151
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1152
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1153
+	/* We don't support parent-child sharing of IB resources on Solaris */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1154
+	if (fcntl(resp->async_fd, F_SETFD, FD_CLOEXEC) < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1155
+		fprintf(stderr, "ibv_get_context: FD_CLOEXEC failed: %s\n",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1156
+		    strerror(errno));
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1157
+		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1158
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1159
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1160
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1161
 	context->async_fd         = resp->async_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1162
 	context->num_comp_vectors = resp->num_comp_vectors;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1163
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1164
@@ -83,6 +140,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1165
 	memset(device_attr->fw_ver, 0, sizeof device_attr->fw_ver);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1166
 	*raw_fw_ver			       = resp.fw_ver;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1167
 	device_attr->node_guid 		       = resp.node_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1168
+	device_attr->node_guid_external	       = resp.node_guid_external;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1169
 	device_attr->sys_image_guid 	       = resp.sys_image_guid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1170
 	device_attr->max_mr_size 	       = resp.max_mr_size;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1171
 	device_attr->page_size_cap 	       = resp.page_size_cap;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1172
@@ -170,6 +228,8 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1173
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1174
 	IBV_INIT_CMD_RESP(cmd, cmd_size, ALLOC_PD, resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1175
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1176
+	cmd->user_handle     = (uintptr_t) pd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1177
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1178
 	if (write(context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1179
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1180
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1181
@@ -187,6 +247,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1182
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1183
 	IBV_INIT_CMD(&cmd, sizeof cmd, DEALLOC_PD);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1184
 	cmd.pd_handle = pd->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1185
+	cmd.user_handle = (uintptr_t) pd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1186
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1187
 	if (write(pd->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1188
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1189
@@ -252,6 +313,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1190
 	cmd->length 	  = length;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1191
 	cmd->hca_va 	  = hca_va;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1192
 	cmd->pd_handle 	  = pd->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1193
+	cmd->user_handle  = (uintptr_t) mr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1194
 	cmd->access_flags = access;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1195
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1196
 	if (write(pd->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1197
@@ -273,6 +335,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1198
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1199
 	IBV_INIT_CMD(&cmd, sizeof cmd, DEREG_MR);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1200
 	cmd.mr_handle = mr->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1201
+	cmd.user_handle  = (uintptr_t) mr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1202
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1203
 	if (write(mr->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1204
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1205
@@ -290,7 +353,19 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1206
 	cmd->user_handle   = (uintptr_t) cq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1207
 	cmd->cqe           = cqe;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1208
 	cmd->comp_vector   = comp_vector;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1209
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1210
+	if (channel) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1211
+		struct stat	fstat_buf;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1212
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1213
+		if (fstat(channel->fd, &fstat_buf))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1214
+			return (errno);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1215
+		else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1216
+			cmd->comp_channel = minor(fstat_buf.st_rdev);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1217
+	} else 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1218
+		cmd->comp_channel = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1219
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1220
 	cmd->comp_channel  = channel ? channel->fd : -1;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1221
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1222
 	cmd->reserved      = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1223
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1224
 	if (write(context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1225
@@ -321,6 +396,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1226
 	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, POLL_CQ, resp, rsize);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1227
 	cmd.cq_handle = ibcq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1228
 	cmd.ne        = ne;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1229
+	cmd.user_handle  = (uintptr_t) ibcq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1230
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1231
 	if (write(ibcq->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1232
 		ret = -1;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1233
@@ -359,6 +435,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1234
 	IBV_INIT_CMD(&cmd, sizeof cmd, REQ_NOTIFY_CQ);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1235
 	cmd.cq_handle = ibcq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1236
 	cmd.solicited = !!solicited_only;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1237
+	cmd.user_handle  = (uintptr_t) ibcq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1238
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1239
 	if (write(ibcq->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1240
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1241
@@ -373,6 +450,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1242
 	IBV_INIT_CMD_RESP(cmd, cmd_size, RESIZE_CQ, resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1243
 	cmd->cq_handle = cq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1244
 	cmd->cqe       = cqe;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1245
+	cmd->user_handle   = (uintptr_t) cq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1246
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1247
 	if (write(cq->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1248
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1249
@@ -392,6 +470,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1250
 	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, DESTROY_CQ, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1251
 	cmd.cq_handle = cq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1252
 	cmd.reserved  = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1253
+	cmd.user_handle  = (uintptr_t) cq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1254
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1255
 	if (write(cq->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1256
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1257
@@ -516,7 +595,6 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1258
 	return 0;
4835
d5abd56e3fcf 21170572 libmlx4 should be built with the system mlnx_umap.h
boris.chiu@oracle.com
parents: 4661
diff changeset
  1259
 }
5708
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1260
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1261
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1262
 static int ibv_cmd_modify_srq_v3(struct ibv_srq *srq,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1263
 				 struct ibv_srq_attr *srq_attr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1264
 				 int srq_attr_mask,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1265
@@ -560,6 +638,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1266
 	cmd->attr_mask	= srq_attr_mask;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1267
 	cmd->max_wr	= srq_attr->max_wr;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1268
 	cmd->srq_limit	= srq_attr->srq_limit;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1269
+	cmd->user_handle   = (uintptr_t) srq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1270
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1271
 	if (write(srq->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1272
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1273
@@ -574,6 +653,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1274
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1275
 	IBV_INIT_CMD_RESP(cmd, cmd_size, QUERY_SRQ, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1276
 	cmd->srq_handle = srq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1277
+	cmd->user_handle   = (uintptr_t) srq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1278
 	cmd->reserved   = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1279
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1280
 	if (write(srq->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1281
@@ -595,6 +675,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1282
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1283
 	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, DESTROY_SRQ, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1284
 	cmd.srq_handle = srq->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1285
+	cmd.user_handle  = (uintptr_t) srq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1286
 	cmd.reserved   = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1287
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1288
 	if (write(srq->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1289
@@ -646,7 +727,18 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1290
 	cmd->max_send_sge    = attr_ex->cap.max_send_sge;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1291
 	cmd->max_recv_sge    = attr_ex->cap.max_recv_sge;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1292
 	cmd->max_inline_data = attr_ex->cap.max_inline_data;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1293
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1294
+	if (attr_ex->sq_sig_all & LIB_RDMACM_QP_BIT) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1295
+		cmd->sq_sig_all =
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1296
+		    (uint8_t)(attr_ex->sq_sig_all & ~LIB_RDMACM_QP_BIT);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1297
+		cmd->sq_sig_all |= 0x80;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1298
+		attr_ex->sq_sig_all &= ~LIB_RDMACM_QP_BIT;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1299
+	} else {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1300
+		cmd->sq_sig_all = (uint8_t)attr_ex->sq_sig_all;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1301
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1302
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1303
 	cmd->sq_sig_all	     = attr_ex->sq_sig_all;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1304
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1305
 	cmd->qp_type         = attr_ex->qp_type;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1306
 	cmd->is_srq	     = !!attr_ex->srq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1307
 	cmd->reserved	     = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1308
@@ -721,7 +813,20 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1309
 	cmd->max_send_sge    = attr->cap.max_send_sge;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1310
 	cmd->max_recv_sge    = attr->cap.max_recv_sge;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1311
 	cmd->max_inline_data = attr->cap.max_inline_data;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1312
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1313
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1314
+	if (attr->sq_sig_all & LIB_RDMACM_QP_BIT) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1315
+		cmd->sq_sig_all =
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1316
+		    (uint8_t)(attr->sq_sig_all & ~LIB_RDMACM_QP_BIT);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1317
+		cmd->sq_sig_all |= 0x80;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1318
+		attr->sq_sig_all &= ~LIB_RDMACM_QP_BIT;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1319
+	} else {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1320
+		cmd->sq_sig_all = (uint8_t)attr->sq_sig_all;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1321
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1322
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1323
 	cmd->sq_sig_all	     = attr->sq_sig_all;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1324
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1325
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1326
 	cmd->qp_type 	     = attr->qp_type;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1327
 	cmd->is_srq 	     = !!attr->srq;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1328
 	cmd->reserved	     = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1329
@@ -822,6 +927,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1330
 	IBV_INIT_CMD_RESP(cmd, cmd_size, QUERY_QP, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1331
 	cmd->qp_handle = qp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1332
 	cmd->attr_mask = attr_mask;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1333
+	cmd->user_handle   = (uintptr_t) qp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1334
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1335
 	if (write(qp->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1336
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1337
@@ -901,6 +1007,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1338
 	IBV_INIT_CMD(cmd, cmd_size, MODIFY_QP);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1339
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1340
 	cmd->qp_handle 		 = qp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1341
+	cmd->user_handle   	 = (uintptr_t) qp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1342
 	cmd->attr_mask 		 = attr_mask;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1343
 	cmd->qkey 		 = attr->qkey;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1344
 	cmd->rq_psn 		 = attr->rq_psn;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1345
@@ -1170,36 +1277,45 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1346
 	return ret;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1347
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1348
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1349
+int ibv_cmd_create_ah_ex(struct ibv_pd *pd, struct ibv_ah *ah, struct ibv_ah_attr *attr,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1350
+			 struct ibv_create_ah *cmd, size_t cmd_size,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1351
+			 struct ibv_create_ah_resp *resp, size_t resp_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1352
+{
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1353
+	IBV_INIT_CMD_RESP(cmd, cmd_size, CREATE_AH, resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1354
+	cmd->user_handle            = (uintptr_t) ah;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1355
+	cmd->pd_handle              = pd->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1356
+	cmd->reserved               = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1357
+	cmd->attr.dlid              = attr->dlid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1358
+	cmd->attr.sl                = attr->sl;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1359
+	cmd->attr.src_path_bits     = attr->src_path_bits;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1360
+	cmd->attr.static_rate       = attr->static_rate;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1361
+	cmd->attr.is_global         = attr->is_global;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1362
+	cmd->attr.port_num          = attr->port_num;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1363
+	cmd->attr.grh.flow_label    = attr->grh.flow_label;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1364
+	cmd->attr.grh.sgid_index    = attr->grh.sgid_index;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1365
+	cmd->attr.grh.hop_limit     = attr->grh.hop_limit;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1366
+	cmd->attr.grh.traffic_class = attr->grh.traffic_class;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1367
+	cmd->attr.grh.reserved      = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1368
+	cmd->attr.reserved          = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1369
+	memcpy(cmd->attr.grh.dgid, attr->grh.dgid.raw, 16);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1370
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1371
+	if (write(pd->context->cmd_fd, cmd, cmd_size) != cmd_size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1372
+		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1373
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1374
+	(void) VALGRIND_MAKE_MEM_DEFINED(resp, resp_size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1375
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1376
+	ah->handle  = resp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1377
+	ah->context = pd->context;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1378
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1379
+	return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1380
+}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1381
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1382
 int ibv_cmd_create_ah(struct ibv_pd *pd, struct ibv_ah *ah,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1383
 		      struct ibv_ah_attr *attr)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1384
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1385
 	struct ibv_create_ah      cmd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1386
 	struct ibv_create_ah_resp resp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1387
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1388
-	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, CREATE_AH, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1389
-	cmd.user_handle            = (uintptr_t) ah;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1390
-	cmd.pd_handle              = pd->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1391
-	cmd.attr.dlid              = attr->dlid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1392
-	cmd.attr.sl                = attr->sl;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1393
-	cmd.attr.src_path_bits     = attr->src_path_bits;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1394
-	cmd.attr.static_rate       = attr->static_rate;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1395
-	cmd.attr.is_global         = attr->is_global;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1396
-	cmd.attr.port_num          = attr->port_num;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1397
-	cmd.attr.grh.flow_label    = attr->grh.flow_label;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1398
-	cmd.attr.grh.sgid_index    = attr->grh.sgid_index;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1399
-	cmd.attr.grh.hop_limit     = attr->grh.hop_limit;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1400
-	cmd.attr.grh.traffic_class = attr->grh.traffic_class;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1401
-	memcpy(cmd.attr.grh.dgid, attr->grh.dgid.raw, 16);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1402
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1403
-	if (write(pd->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1404
-		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1405
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1406
-	(void) VALGRIND_MAKE_MEM_DEFINED(&resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1407
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1408
-	ah->handle  = resp.handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1409
-	ah->context = pd->context;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1410
-
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1411
-	return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1412
+	return ibv_cmd_create_ah_ex(pd, ah, attr, &cmd, sizeof(cmd), &resp, sizeof(resp));
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1413
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1414
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1415
 int ibv_cmd_destroy_ah(struct ibv_ah *ah)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1416
@@ -1208,6 +1324,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1417
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1418
 	IBV_INIT_CMD(&cmd, sizeof cmd, DESTROY_AH);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1419
 	cmd.ah_handle = ah->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1420
+	cmd.user_handle            = (uintptr_t) ah;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1421
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1422
 	if (write(ah->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1423
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1424
@@ -1223,6 +1340,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1425
 	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, DESTROY_QP, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1426
 	cmd.qp_handle = qp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1427
 	cmd.reserved  = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1428
+	cmd.user_handle  = (uintptr_t) qp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1429
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1430
 	if (write(qp->context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1431
 		return errno;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1432
@@ -1244,6 +1362,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1433
 	IBV_INIT_CMD(&cmd, sizeof cmd, ATTACH_MCAST);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1434
 	memcpy(cmd.gid, gid->raw, sizeof cmd.gid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1435
 	cmd.qp_handle = qp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1436
+	cmd.user_handle  = (uintptr_t) qp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1437
 	cmd.mlid      = lid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1438
 	cmd.reserved  = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1439
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1440
@@ -1260,6 +1379,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1441
 	IBV_INIT_CMD(&cmd, sizeof cmd, DETACH_MCAST);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1442
 	memcpy(cmd.gid, gid->raw, sizeof cmd.gid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1443
 	cmd.qp_handle = qp->handle;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1444
+	cmd.user_handle  = (uintptr_t) qp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1445
 	cmd.mlid      = lid;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1446
 	cmd.reserved  = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1447
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1448
diff -r 714ac8a9d237 src/device.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1449
--- a/src/device.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1450
+++ b/src/device.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1451
@@ -122,6 +122,28 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1452
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1453
 default_symver(__ibv_get_device_guid, ibv_get_device_guid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1454
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1455
+uint64_t __ibv_get_device_guid_external(struct ibv_device *device)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1456
+{
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1457
+	char attr[24];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1458
+	uint64_t guid = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1459
+	uint16_t parts[4];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1460
+	int i;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1461
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1462
+	if (ibv_read_sysfs_file(device->ibdev_path, "node_guid_external",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1463
+				attr, sizeof attr) < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1464
+		return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1465
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1466
+	if (sscanf(attr, "%hx:%hx:%hx:%hx",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1467
+		   parts, parts + 1, parts + 2, parts + 3) != 4)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1468
+		return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1469
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1470
+	for (i = 0; i < 4; ++i)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1471
+		guid = (guid << 16) | parts[i];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1472
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1473
+	return htonll(guid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1474
+}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1475
+default_symver(__ibv_get_device_guid_external, ibv_get_device_guid_external);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1476
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1477
 struct ibv_context *__ibv_open_device(struct ibv_device *device)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1478
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1479
 	struct verbs_device *verbs_device = verbs_get_device(device);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1480
@@ -130,8 +152,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1481
 	struct ibv_context *context;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1482
 	struct verbs_context *context_ex;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1483
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1484
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1485
 	if (asprintf(&devpath, "/dev/infiniband/%s", device->dev_name) < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1486
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1487
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1488
+	if (asprintf(&devpath, "/dev/infiniband/ofs/%s", device->dev_name) < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1489
+		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1490
+#endif		
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1491
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1492
 	/*
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1493
 	 * We'll only be doing writes, but we need O_RDWR in case the
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1494
@@ -143,6 +170,14 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1495
 	if (cmd_fd < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1496
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1497
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1498
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1499
+	/* We don't support parent-child sharing of IB resources on Solaris */
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1500
+	if (fcntl(cmd_fd, F_SETFD, FD_CLOEXEC) < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1501
+		fprintf(stderr, "ibv_open_device: FD_CLOEXEC failed: %s\n",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1502
+		    strerror(errno));
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1503
+		goto err;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1504
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1505
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1506
 	if (!verbs_device) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1507
 		context = device->ops.alloc_context(device, cmd_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1508
 		if (!context)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1509
@@ -195,6 +230,9 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1510
 	int cmd_fd   = context->cmd_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1511
 	int cq_fd    = -1;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1512
 	struct verbs_context *context_ex;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1513
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1514
+	int mmap_fd   = context->mmap_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1515
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1516
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1517
 	context_ex = verbs_get_ctx(context);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1518
 	if (context_ex) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1519
@@ -205,6 +243,11 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1520
 		context->device->ops.free_context(context);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1521
 	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1522
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1523
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1524
+	if (mmap_fd > 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1525
+		close(mmap_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1526
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1527
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1528
 	close(async_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1529
 	close(cmd_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1530
 	if (abi_ver <= 2)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1531
diff -r 714ac8a9d237 src/ibverbs.h
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1532
--- a/src/ibverbs.h	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1533
+++ b/src/ibverbs.h	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1534
@@ -52,7 +52,12 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1535
 #  define VALGRIND_MAKE_MEM_DEFINED(addr, len) 0
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1536
 #endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1537
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1538
-#define HIDDEN		__attribute__((visibility ("hidden")))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1539
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1540
+#define	HIDDEN
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1541
+#undef HAVE_SYMVER_SUPPORT
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1542
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1543
+#define	HIDDEN		__attribute__((visibility ("hidden")))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1544
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1545
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1546
 #define INIT		__attribute__((constructor))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1547
 #define FINI		__attribute__((destructor))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1548
diff -r 714ac8a9d237 src/init.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1549
--- a/src/init.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1550
+++ b/src/init.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1551
@@ -78,8 +78,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1552
 static struct ibv_driver_name *driver_name_list;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1553
 static struct ibv_driver *head_driver, *tail_driver;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1554
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1555
+static uint blueflame_enabled = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1556
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1557
 static int find_sysfs_devs(void)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1558
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1559
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1560
+	char device_path[IBV_SYSFS_PATH_MAX];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1561
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1562
 	char class_path[IBV_SYSFS_PATH_MAX];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1563
 	DIR *class_dir;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1564
 	struct dirent *dent;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1565
@@ -87,19 +92,35 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1566
 	char value[8];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1567
 	int ret = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1568
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1569
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1570
+	snprintf(device_path, sizeof device_path, "/dev/infiniband/ofs");
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1571
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1572
 	snprintf(class_path, sizeof class_path, "%s/class/infiniband_verbs",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1573
 		 ibv_get_sysfs_path());
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1574
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1575
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1576
+	class_dir = opendir(device_path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1577
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1578
 	class_dir = opendir(class_path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1579
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1580
 	if (!class_dir)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1581
 		return ENOSYS;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1582
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1583
 	while ((dent = readdir(class_dir))) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1584
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1585
+		int adapter_num;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1586
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1587
 		struct stat buf;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1588
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1589
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1590
 		if (dent->d_name[0] == '.')
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1591
 			continue;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1592
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1593
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1594
+		if (sscanf(dent->d_name, "uverbs%d",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1595
+		    &adapter_num) != 1)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1596
+			continue;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1597
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1598
 		if (!sysfs_dev)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1599
 			sysfs_dev = malloc(sizeof *sysfs_dev);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1600
 		if (!sysfs_dev) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1601
@@ -110,6 +131,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1602
 		snprintf(sysfs_dev->sysfs_path, sizeof sysfs_dev->sysfs_path,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1603
 			 "%s/%s", class_path, dent->d_name);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1604
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1605
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1606
 		if (stat(sysfs_dev->sysfs_path, &buf)) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1607
 			fprintf(stderr, PFX "Warning: couldn't stat '%s'.\n",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1608
 				sysfs_dev->sysfs_path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1609
@@ -118,6 +140,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1610
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1611
 		if (!S_ISDIR(buf.st_mode))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1612
 			continue;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1613
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1614
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1615
 		snprintf(sysfs_dev->sysfs_name, sizeof sysfs_dev->sysfs_name,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1616
 			"%s", dent->d_name);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1617
@@ -296,6 +319,13 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1618
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1619
 			driver_name->next = driver_name_list;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1620
 			driver_name_list  = driver_name;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1621
+		} else if (strcmp(field, "blueflame") == 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1622
+			config += strspn(config, "\t ");
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1623
+			field = strsep(&config, "\n\t ");
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1624
+			if (strcmp(field, "enable") == 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1625
+				blueflame_enabled = 1;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1626
+			if (strcmp(field, "disable") == 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1627
+				blueflame_enabled = 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1628
 		} else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1629
 			fprintf(stderr, PFX "Warning: ignoring bad config directive "
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1630
 				"'%s' in file '%s'.\n", field, path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1631
@@ -401,6 +431,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1632
 	strcpy(dev->dev_path,   sysfs_dev->sysfs_path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1633
 	strcpy(dev->name,       sysfs_dev->ibdev_name);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1634
 	strcpy(dev->ibdev_path, sysfs_dev->ibdev_path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1635
+	dev->blueflame_enabled = blueflame_enabled;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1636
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1637
 	return dev;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1638
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1639
@@ -443,6 +474,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1640
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1641
 static void check_memlock_limit(void)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1642
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1643
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1644
 	struct rlimit rlim;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1645
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1646
 	if (!geteuid())
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1647
@@ -457,6 +489,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1648
 		fprintf(stderr, PFX "Warning: RLIMIT_MEMLOCK is %lu bytes.\n"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1649
 			"    This will severely limit memory registrations.\n",
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1650
 			rlim.rlim_cur);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1651
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1652
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1653
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1654
 static void add_device(struct ibv_device *dev,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1655
diff -r 714ac8a9d237 src/libibverbs.map
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1656
--- a/src/libibverbs.map	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1657
+++ b/src/libibverbs.map	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1658
@@ -73,6 +73,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1659
 		mult_to_ibv_rate;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1660
 		ibv_get_sysfs_path;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1661
 		ibv_read_sysfs_file;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1662
+		sol_get_cpu_info;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1663
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1664
 	local: *;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1665
 };
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1666
diff -r 714ac8a9d237 src/sysfs.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1667
--- a/src/sysfs.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1668
+++ b/src/sysfs.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1669
@@ -44,6 +44,10 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1670
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1671
 #include "ibverbs.h"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1672
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1673
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1674
+int sol_read_sysfs_file(char *path, char *buf, size_t size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1675
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1676
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1677
 static char *sysfs_path;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1678
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1679
 const char *ibv_get_sysfs_path(void)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1680
@@ -79,12 +83,18 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1681
 			char *buf, size_t size)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1682
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1683
 	char *path;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1684
+#if !(defined(__SVR4) && defined(__sun))
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1685
 	int fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1686
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1687
 	int len;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1688
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1689
 	if (asprintf(&path, "%s/%s", dir, file) < 0)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1690
 		return -1;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1691
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1692
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1693
+	len = sol_read_sysfs_file(path, buf, size);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1694
+	free(path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1695
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1696
 	fd = open(path, O_RDONLY | O_CLOEXEC);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1697
 	if (fd < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1698
 		free(path);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1699
@@ -98,6 +108,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1700
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1701
 	if (len > 0 && buf[len - 1] == '\n')
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1702
 		buf[--len] = '\0';
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1703
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1704
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1705
 	return len;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1706
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1707
diff -r 714ac8a9d237 src/verbs.c
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1708
--- a/src/verbs.c	Wed Oct 14 12:54:37 2015 -0700
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1709
+++ b/src/verbs.c	Mon Feb 01 09:10:21 2016 -0800
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1710
@@ -41,6 +41,11 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1711
 #include <stdlib.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1712
 #include <errno.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1713
 #include <string.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1714
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1715
+#include <fcntl.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1716
+#include <sys/stat.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1717
+#include <sys/mkdev.h>
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1718
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1719
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1720
 #include "ibverbs.h"
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1721
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1722
@@ -141,6 +146,12 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1723
 int __ibv_query_gid(struct ibv_context *context, uint8_t port_num,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1724
 		    int index, union ibv_gid *gid)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1725
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1726
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1727
+	extern int sol_ibv_query_gid();
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1728
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1729
+	return sol_ibv_query_gid(context, port_num, index, gid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1730
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1731
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1732
 	char name[24];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1733
 	char attr[41];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1734
 	uint16_t val;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1735
@@ -160,12 +171,19 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1736
 	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1737
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1738
 	return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1739
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1740
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1741
 default_symver(__ibv_query_gid, ibv_query_gid);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1742
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1743
 int __ibv_query_pkey(struct ibv_context *context, uint8_t port_num,
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1744
 		     int index, uint16_t *pkey)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1745
 {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1746
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1747
+	extern int sol_ibv_query_pkey();
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1748
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1749
+	return sol_ibv_query_pkey(context, port_num, index, pkey);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1750
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1751
+#else
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1752
 	char name[24];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1753
 	char attr[8];
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1754
 	uint16_t val;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1755
@@ -181,6 +199,7 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1756
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1757
 	*pkey = htons(val);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1758
 	return 0;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1759
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1760
 }
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1761
 default_symver(__ibv_query_pkey, ibv_query_pkey);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1762
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1763
@@ -260,6 +279,10 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1764
 	struct ibv_comp_channel            *channel;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1765
 	struct ibv_create_comp_channel      cmd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1766
 	struct ibv_create_comp_channel_resp resp;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1767
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1768
+	int		event_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1769
+	struct stat	fstat_buf;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1770
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1771
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1772
 	if (abi_ver <= 2)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1773
 		return ibv_create_comp_channel_v2(context);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1774
@@ -269,13 +292,32 @@
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1775
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1776
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1777
 	IBV_INIT_CMD_RESP(&cmd, sizeof cmd, CREATE_COMP_CHANNEL, &resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1778
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1779
+	event_fd = open("/dev/infiniband/ofs/uverbs:event", O_RDWR);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1780
+	if (event_fd < 0) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1781
+		free(channel);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1782
+		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1783
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1784
+
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1785
+	if (fstat(event_fd, &fstat_buf)) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1786
+		free(channel);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1787
+		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1788
+	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1789
+	resp.fd = minor(fstat_buf.st_rdev);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1790
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1791
 	if (write(context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd) {
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1792
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1793
+		close(event_fd);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1794
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1795
 		free(channel);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1796
 		return NULL;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1797
 	}
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1798
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1799
 	(void) VALGRIND_MAKE_MEM_DEFINED(&resp, sizeof resp);
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1800
 
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1801
+#if defined(__SVR4) && defined(__sun)
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1802
+	resp.fd = event_fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1803
+#endif
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1804
 	channel->context = context;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1805
 	channel->fd      = resp.fd;
49b43e37ce26 PSARC/2016/109 Solaris OFED (OFUV) Version 3.18 and other updates
boris.chiu@oracle.com
parents: 4835
diff changeset
  1806
 	channel->refcnt  = 0;