Udiff nfs_client.c
--- /webrev/webrev/usr/src/uts/common/fs/nfs/nfs_client.c-      Mon Aug 14 13:12:13 2006
+++ nfs_client.c        Sun Jul 23 00:43:22 2006
@@ -25,12 +25,25 @@
  *
  *     Copyright (c) 1983,1984,1985,1986,1987,1988,1989  AT&T.
  *     All rights reserved.
  */
 
-#pragma ident  "@(#)nfs_client.c       1.194   05/12/08 SMI"
+ /* Copyright (c) 2006, The Ohio State University. All rights reserved.
+  *
+  * Portions of this source code is developed by the team members of
+  * The Ohio State University's Network-Based Computing Laboratory (NBCL),
+  * headed by Professor Dhabaleswar K. (DK) Panda.
+  *
+  * Acknowledgements to contributions from developors:
+  *   Ranjit Noronha: noronha@cse.ohio-state.edu
+  *   Lei Chai      : chail@cse.ohio-state.edu
+  *   Weikuan Yu    : yuw@cse.ohio-state.edu
+  *
+  */
 
+#pragma ident  "@(#)nfs_client.c       1.193   05/10/11 SMI"
+
 #include <sys/param.h>
 #include <sys/types.h>
 #include <sys/systm.h>
 #include <sys/thread.h>
 #include <sys/t_lock.h>
@@ -92,10 +105,20 @@
 
 /* Debugging flag for PC file shares. */
 extern int     share_debug;
 
 /*
+ * used by RDMA transport to easily recognize READ3 call/reply
+ * (FTDO -- for the demo only.  Better design needed for NFS4 or ON10 putback)
+ */
+
+extern xdrproc_t x_READ3args;
+extern xdrproc_t x_READ3res;
+extern xdrproc_t x_READ3uiores;
+extern xdrproc_t x_READ3vres;
+
+/*
  * Attributes caching:
  *
  * Attributes are cached in the rnode in struct vattr form.
  * There is a time associated with the cached attributes (r_attrtime)
  * which tells whether the attributes are valid. The time is initialized
@@ -2666,10 +2689,15 @@
                return (error);
        }
        zone_key_create(&mi_list_key, nfs_mi_init, nfs_mi_shutdown,
            nfs_mi_destroy);
 
+        x_READ3args = xdr_READ3args;
+        x_READ3res = xdr_READ3res;
+        x_READ3vres = xdr_READ3vres;
+        x_READ3uiores = xdr_READ3uiores;
+
        nfs4_clnt_init();
 
 #ifdef DEBUG
        nfs_clntup = B_TRUE;
 #endif