aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/sunrpc/svcsock.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/sunrpc/svcsock.h')
-rw-r--r--include/linux/sunrpc/svcsock.h24
1 files changed, 12 insertions, 12 deletions
diff --git a/include/linux/sunrpc/svcsock.h b/include/linux/sunrpc/svcsock.h
index b7ac7fe68306..963bbe251e52 100644
--- a/include/linux/sunrpc/svcsock.h
+++ b/include/linux/sunrpc/svcsock.h
@@ -36,7 +36,13 @@ struct svc_sock {
* received so far in the fragments making up this rpc: */
u32 sk_datalen;
- struct page * sk_pages[RPCSVC_MAXPAGES]; /* received data */
+ struct page_frag_cache sk_frag_cache;
+
+ struct completion sk_handshake_done;
+
+ /* received data */
+ unsigned long sk_maxpages;
+ struct page * sk_pages[] __counted_by(sk_maxpages);
};
static inline u32 svc_sock_reclen(struct svc_sock *svsk)
@@ -52,19 +58,13 @@ static inline u32 svc_sock_final_rec(struct svc_sock *svsk)
/*
* Function prototypes.
*/
-void svc_close_net(struct svc_serv *, struct net *);
-int svc_recv(struct svc_rqst *, long);
-int svc_send(struct svc_rqst *);
-void svc_drop(struct svc_rqst *);
-void svc_sock_update_bufs(struct svc_serv *serv);
-bool svc_alien_sock(struct net *net, int fd);
-int svc_addsock(struct svc_serv *serv, const int fd,
- char *name_return, const size_t len,
- const struct cred *cred);
+void svc_recv(struct svc_rqst *rqstp);
+void svc_send(struct svc_rqst *rqstp);
+int svc_addsock(struct svc_serv *serv, struct net *net,
+ const int fd, char *name_return, const size_t len,
+ const struct cred *cred);
void svc_init_xprt_sock(void);
void svc_cleanup_xprt_sock(void);
-struct svc_xprt *svc_sock_create(struct svc_serv *serv, int prot);
-void svc_sock_destroy(struct svc_xprt *);
/*
* svc_makesock socket characteristics