Here is a patch against the published DAT 2.0 headers to align with the OFA
build. There are a few
changes required for extension support query so please review the changes.
Signed-off by: Arlin Davis ardavis@...
diff -Naur ./dat/include/dat/dat.h ../openfabrics/dapl/dat/include/dat/dat.h
--- ./dat/include/dat/dat.h 2006-11-10 18:37:09.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/dat.h 2007-05-16 12:51:44.372347952
-0700
@@ -401,16 +401,13 @@
/* To support backwards compatibility for DAPL-1.0 & DAPL-1.1 */
#define max_mtu_size max_message_size
-#ifdef DAT_EXTENSIONS
-/* DAPL 2.0 addition */
-/* Defines extensions */
+/* Query for provider IA extension support */
typedef enum dat_extension
{
+ DAT_EXTENSION_NONE,/* no extension supported. */
DAT_EXTENSION_IB, /* IB extension. */
- DAT_EXTENSION_IW, /* iWARP extension. */
- DAT_EXTENSION_NONE /* no extension supported. */
+ DAT_EXTENSION_IW /* iWARP extension. */
} DAT_EXTENSION;
-#endif /* DAT_EXTENSIONS */
typedef struct dat_ia_attr DAT_IA_ATTR;
@@ -451,6 +448,7 @@
#define DAT_IA_FIELD_IA_MAX_RDMA_READ_PER_EP_IN_GUARANTEED
UINT64_C(0x020000000)
#define DAT_IA_FIELD_IA_MAX_RDMA_READ_PER_EP_OUT_GUARANTEED
UINT64_C(0x040000000)
#define DAT_IA_FIELD_IA_ZB_SUPPORTED UINT64_C(0x080000000)
+#define DAT_IA_FIELD_IA_EXTENSIONS_SUPPORTED UINT64_C(0x100000000)
/* To support backwards compatibility for DAPL-1.0 & DAPL-1.1 */
#define DAT_IA_ALL DAT_IA_FIELD_ALL
diff -Naur ./dat/include/dat/dat_ib_extensions.h
../openfabrics/dapl/dat/include/dat/dat_ib_extensions.h
--- ./dat/include/dat/dat_ib_extensions.h 2006-11-10 16:26:12.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/dat_ib_extensions.h 2007-05-16
12:51:44.374347648 -0700
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2002-2005, Network Appliance, Inc. All rights reserved.
- *
+ * Copyright (c) 2007 Intel Corporation. All rights reserved.
+ *
* This Software is licensed under one of the following licenses:
*
* 1) under the terms of the "Common Public License 1.0" a copy of which is
@@ -27,6 +27,7 @@
* notice, one of the license notices in the documentation
* and/or other materials provided with the distribution.
*/
+
/**********************************************************************
*
* HEADER: dat_ib_extensions.h
@@ -57,12 +58,10 @@
* DAT_NAMED_ATTR name == extended operations and version,
* version_value = version number of extension API
*/
-#define DAT_EXTENSION_ATTR "DAT_EXTENSION_INTERFACE"
-#define DAT_EXTENSION_ATTR_VERSION "DAT_EXTENSION_VERSION"
-#define DAT_EXTENSION_ATTR_VERSION_VALUE "2.0.1"
-#define DAT_IB_ATTR_FETCH_AND_ADD "DAT_IB_FETCH_AND_ADD"
-#define DAT_IB_ATTR_CMP_AND_SWAP "DAT_IB_CMP_AND_SWAP"
-#define DAT_IB_ATTR_IMMED_DATA "DAT_IB_IMMED_DATA"
+#define DAT_IB_EXTENSION_VERSION 201 /* 2.0.1 */
+#define DAT_IB_ATTR_FETCH_AND_ADD "DAT_IB_FETCH_AND_ADD"
+#define DAT_IB_ATTR_CMP_AND_SWAP "DAT_IB_CMP_AND_SWAP"
+#define DAT_IB_ATTR_IMMED_DATA "DAT_IB_IMMED_DATA"
/*
* Definition for extended EVENT numbers, DAT_IB_EXTENSION_BASE_RANGE
diff -Naur ./dat/include/dat/dat_redirection.h
../openfabrics/dapl/dat/include/dat/dat_redirection.h
--- ./dat/include/dat/dat_redirection.h 2006-11-10 18:30:19.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/dat_redirection.h 2007-05-16
12:51:44.379346888 -0700
@@ -467,12 +467,11 @@
(answer))
#ifdef DAT_EXTENSIONS
- /* generic extended op */
-#define DAT_HANDLE_EXTENDEDOP (handle,op,args) \
- (*DAT_HANDLE_TO_PROVIDER(handle)->extendedop_func) (\
- (handle), \
- (op), \
- (args))
+#define DAT_HANDLE_EXTENDEDOP(handle, op, args) \
+ (*DAT_HANDLE_TO_PROVIDER (handle)->handle_extendedop_func) (\
+ (handle), \
+ (op), \
+ (args))
#endif
/***************************************************************
@@ -848,12 +847,12 @@
IN const DAT_NAME_PTR, /* provider */
OUT DAT_BOOLEAN *); /* answer */
-#ifdef DAT_EXTENSIONS
+#ifdef DAT_EXTENSIONS
#include <stdarg.h>
-typedef DAT_RETURN (*DAT_HANDLE_EXTENDEDOP_FUNC) (
- IN DAT_HANDLE, /* handle */
- IN DAT_EXTENDED_OP, /* extended op */
- IN va_list ); /* arguments list */
+typedef DAT_RETURN (*DAT_HANDLE_EXTENDEDOP_FUNC)(
+ IN DAT_HANDLE, /* handle */
+ IN DAT_EXTENDED_OP, /* extended op */
+ IN va_list); /* argument list */
#endif /* DAT_EXTENSIONS */
#endif /* _DAT_REDIRECTION_H_ */
diff -Naur ./dat/include/dat/udat_config.h
../openfabrics/dapl/dat/include/dat/udat_config.h
--- ./dat/include/dat/udat_config.h 2006-11-09 15:10:02.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/udat_config.h 2007-05-16
12:51:44.388345520 -0700
@@ -50,8 +50,8 @@
#ifndef _UDAT_CONFIG_H_
#define _UDAT_CONFIG_H_
-#define DAT_VERSION_MAJOR 1
-#define DAT_VERSION_MINOR 2
+#define DAT_VERSION_MAJOR 2
+#define DAT_VERSION_MINOR 0
/*
* The official header files will default DAT_THREADSAFE to DAT_TRUE. If
diff -Naur ./dat/include/dat/udat.h ../openfabrics/dapl/dat/include/dat/udat.h
--- ./dat/include/dat/udat.h 2006-11-10 18:39:16.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/udat.h 2007-05-16 12:51:44.392344912
-0700
@@ -292,20 +292,17 @@
DAT_BOOLEAN max_rdma_read_per_ep_in_guaranteed;
DAT_BOOLEAN max_rdma_read_per_ep_out_guaranteed;
DAT_BOOLEAN zb_supported;
-#ifdef DAT_EXTENSIONS
DAT_EXTENSION extension_supported;
DAT_COUNT extension_version;
-#endif /* DAT_EXTENSIONS */
DAT_COUNT num_transport_attr;
DAT_NAMED_ATTR *transport_attr;
DAT_COUNT num_vendor_attr;
DAT_NAMED_ATTR *vendor_attr;
};
-#ifdef DAT_EXTENSIONS
+
#define DAT_IA_FIELD_IA_EXTENSION UINT64_C(0x100000000)
#define DAT_IA_FIELD_IA_EXTENSION_VERSION UINT64_C(0x200000000)
-#endif /* DAT_EXTENSIONS */
#define DAT_IA_FIELD_IA_NUM_TRANSPORT_ATTR UINT64_C(0x400000000)
#define DAT_IA_FIELD_IA_TRANSPORT_ATTR UINT64_C(0x800000000)
diff -Naur ./dat/include/dat/udat_redirection.h
../openfabrics/dapl/dat/include/dat/udat_redirection.h
--- ./dat/include/dat/udat_redirection.h 2006-11-10 18:30:26.000000000 -0800
+++ ../openfabrics/dapl/dat/include/dat/udat_redirection.h 2007-05-16
12:51:44.394344608 -0700
@@ -349,8 +349,8 @@
DAT_IA_HA_RELATED_FUNC ia_ha_related_func;
#ifdef DAT_EXTENSIONS
- DAT_HANDLE_EXTENDEDOP_FUNC handle_extendedop_func;
-#endif
+ DAT_HANDLE_EXTENDEDOP_FUNC handle_extendedop_func;
+#endif /* DAT_EXTENSIONS */
};
#endif /* _UDAT_REDIRECTION_H_ */