Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /*
  2  * Copyright (c) 2003-2007 Network Appliance, Inc. All rights reserved.
  3  *
  4  * This software is available to you under a choice of one of two
  5  * licenses.  You may choose to be licensed under the terms of the GNU
  6  * General Public License (GPL) Version 2, available from the file
  7  * COPYING in the main directory of this source tree, or the BSD-type
  8  * license below:
  9  *
 10  * Redistribution and use in source and binary forms, with or without
 11  * modification, are permitted provided that the following conditions
 12  * are met:
 13  *
 14  *      Redistributions of source code must retain the above copyright
 15  *      notice, this list of conditions and the following disclaimer.
 16  *
 17  *      Redistributions in binary form must reproduce the above
 18  *      copyright notice, this list of conditions and the following
 19  *      disclaimer in the documentation and/or other materials provided
 20  *      with the distribution.
 21  *
 22  *      Neither the name of the Network Appliance, Inc. nor the names of
 23  *      its contributors may be used to endorse or promote products
 24  *      derived from this software without specific prior written
 25  *      permission.
 26  *
 27  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 28  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 29  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 30  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 31  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 32  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 33  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 34  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 35  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 36  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 37  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 38  */
 39 
 40 #ifndef _LINUX_SUNRPC_XPRTRDMA_H
 41 #define _LINUX_SUNRPC_XPRTRDMA_H
 42 
 43 /*
 44  * RPC transport identifier for RDMA
 45  */
 46 #define XPRT_TRANSPORT_RDMA     256
 47 
 48 /*
 49  * rpcbind (v3+) RDMA netid.
 50  */
 51 #define RPCBIND_NETID_RDMA      "rdma"
 52 
 53 /*
 54  * Constants. Max RPC/NFS header is big enough to account for
 55  * additional marshaling buffers passed down by Linux client.
 56  *
 57  * RDMA header is currently fixed max size, and is big enough for a
 58  * fully-chunked NFS message (read chunks are the largest). Note only
 59  * a single chunk type per message is supported currently.
 60  */
 61 #define RPCRDMA_MIN_SLOT_TABLE  (2U)
 62 #define RPCRDMA_DEF_SLOT_TABLE  (32U)
 63 #define RPCRDMA_MAX_SLOT_TABLE  (256U)
 64 
 65 #define RPCRDMA_DEF_INLINE  (1024)      /* default inline max */
 66 
 67 #define RPCRDMA_INLINE_PAD_THRESH  (512)/* payload threshold to pad (bytes) */
 68 
 69 #define RDMA_RESOLVE_TIMEOUT    (5*HZ)  /* TBD 5 seconds */
 70 #define RDMA_CONNECT_RETRY_MAX  (2)     /* retries if no listener backlog */
 71 
 72 /* memory registration strategies */
 73 #define RPCRDMA_PERSISTENT_REGISTRATION (1)
 74 
 75 enum rpcrdma_memreg {
 76         RPCRDMA_BOUNCEBUFFERS = 0,
 77         RPCRDMA_REGISTER,
 78         RPCRDMA_MEMWINDOWS,
 79         RPCRDMA_MEMWINDOWS_ASYNC,
 80         RPCRDMA_MTHCAFMR,
 81         RPCRDMA_ALLPHYSICAL,
 82         RPCRDMA_LAST
 83 };
 84 
 85 #endif /* _LINUX_SUNRPC_XPRTRDMA_H */
 86 
  This page was automatically generated by the LXR engine.