]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/sunrpc/clnt.h
Merge branch 'tracing-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-omap-h63xx.git] / include / linux / sunrpc / clnt.h
index d9d5c5ad826c759c4c0853b5a53e1b8bbcb46366..6f0ee1b84a4f5f64903f4c74af1004381c3d9dd1 100644 (file)
@@ -41,11 +41,12 @@ struct rpc_clnt {
        struct rpc_iostats *    cl_metrics;     /* per-client statistics */
 
        unsigned int            cl_softrtry : 1,/* soft timeouts */
-                               cl_intr     : 1,/* interruptible */
                                cl_discrtry : 1,/* disconnect before retry */
-                               cl_autobind : 1;/* use getport() */
+                               cl_autobind : 1,/* use getport() */
+                               cl_chatty   : 1;/* be verbose */
 
        struct rpc_rtt *        cl_rtt;         /* RTO estimator data */
+       const struct rpc_timeout *cl_timeout;   /* Timeout strategy */
 
        int                     cl_nodelen;     /* nodename length */
        char                    cl_nodename[UNX_MAXNODENAME];
@@ -54,6 +55,7 @@ struct rpc_clnt {
        struct dentry *         cl_dentry;      /* inode */
        struct rpc_clnt *       cl_parent;      /* Points to parent of clones */
        struct rpc_rtt          cl_rtt_default;
+       struct rpc_timeout      cl_timeout_default;
        struct rpc_program *    cl_program;
        char                    cl_inline_name[32];
 };
@@ -99,9 +101,10 @@ struct rpc_create_args {
        struct sockaddr         *address;
        size_t                  addrsize;
        struct sockaddr         *saddress;
-       struct rpc_timeout      *timeout;
+       const struct rpc_timeout *timeout;
        char                    *servername;
        struct rpc_program      *program;
+       u32                     prognumber;     /* overrides program->number */
        u32                     version;
        rpc_authflavor_t        authflavor;
        unsigned long           flags;
@@ -109,11 +112,11 @@ struct rpc_create_args {
 
 /* Values for "flags" field */
 #define RPC_CLNT_CREATE_HARDRTRY       (1UL << 0)
-#define RPC_CLNT_CREATE_INTR           (1UL << 1)
 #define RPC_CLNT_CREATE_AUTOBIND       (1UL << 2)
 #define RPC_CLNT_CREATE_NONPRIVPORT    (1UL << 3)
 #define RPC_CLNT_CREATE_NOPING         (1UL << 4)
 #define RPC_CLNT_CREATE_DISCRTRY       (1UL << 5)
+#define RPC_CLNT_CREATE_QUIET          (1UL << 6)
 
 struct rpc_clnt *rpc_create(struct rpc_create_args *args);
 struct rpc_clnt        *rpc_bind_new_program(struct rpc_clnt *,
@@ -122,27 +125,28 @@ struct rpc_clnt *rpc_clone_client(struct rpc_clnt *);
 void           rpc_shutdown_client(struct rpc_clnt *);
 void           rpc_release_client(struct rpc_clnt *);
 
-int            rpcb_register(u32, u32, int, unsigned short, int *);
-int            rpcb_getport_sync(struct sockaddr_in *, __u32, __u32, int);
+int            rpcb_register(u32, u32, int, unsigned short);
+int            rpcb_v4_register(const u32 program, const u32 version,
+                                const struct sockaddr *address,
+                                const char *netid);
+int            rpcb_getport_sync(struct sockaddr_in *, u32, u32, int);
 void           rpcb_getport_async(struct rpc_task *);
 
-void           rpc_call_setup(struct rpc_task *, struct rpc_message *, int);
-
-int            rpc_call_async(struct rpc_clnt *clnt, struct rpc_message *msg,
-                              int flags, const struct rpc_call_ops *tk_ops,
+void           rpc_call_start(struct rpc_task *);
+int            rpc_call_async(struct rpc_clnt *clnt,
+                              const struct rpc_message *msg, int flags,
+                              const struct rpc_call_ops *tk_ops,
                               void *calldata);
-int            rpc_call_sync(struct rpc_clnt *clnt, struct rpc_message *msg,
-                             int flags);
+int            rpc_call_sync(struct rpc_clnt *clnt,
+                             const struct rpc_message *msg, int flags);
 struct rpc_task *rpc_call_null(struct rpc_clnt *clnt, struct rpc_cred *cred,
                               int flags);
 void           rpc_restart_call(struct rpc_task *);
-void           rpc_clnt_sigmask(struct rpc_clnt *clnt, sigset_t *oldset);
-void           rpc_clnt_sigunmask(struct rpc_clnt *clnt, sigset_t *oldset);
 void           rpc_setbufsize(struct rpc_clnt *, unsigned int, unsigned int);
 size_t         rpc_max_payload(struct rpc_clnt *);
 void           rpc_force_rebind(struct rpc_clnt *);
 size_t         rpc_peeraddr(struct rpc_clnt *, struct sockaddr *, size_t);
-char *         rpc_peeraddr2str(struct rpc_clnt *, enum rpc_display_format_t);
+const char     *rpc_peeraddr2str(struct rpc_clnt *, enum rpc_display_format_t);
 
 #endif /* __KERNEL__ */
 #endif /* _LINUX_SUNRPC_CLNT_H */