diff options
author | Roland McGrath <roland@gnu.org> | 2000-02-04 03:21:18 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2000-02-04 03:21:18 +0000 |
commit | 9fd51e9b0ad33a89a83fdbbb66bd20d85f7893fb (patch) | |
tree | 8845b79f170028cb4380045c50277bbf075b5b7d /pfinet/linux-src/include/linux/nfsiod.h | |
download | hurd-9fd51e9b0ad33a89a83fdbbb66bd20d85f7893fb.tar.gz hurd-9fd51e9b0ad33a89a83fdbbb66bd20d85f7893fb.tar.bz2 hurd-9fd51e9b0ad33a89a83fdbbb66bd20d85f7893fb.zip |
Import of Linux 2.2.12 subset (ipv4 stack and related)
Diffstat (limited to 'pfinet/linux-src/include/linux/nfsiod.h')
-rw-r--r-- | pfinet/linux-src/include/linux/nfsiod.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pfinet/linux-src/include/linux/nfsiod.h b/pfinet/linux-src/include/linux/nfsiod.h new file mode 100644 index 00000000..fdd07a2d --- /dev/null +++ b/pfinet/linux-src/include/linux/nfsiod.h @@ -0,0 +1,52 @@ +/* + * linux/include/linux/nfsiod.h + * + * Declarations for asynchronous NFS RPC calls. + * + */ + +#ifndef _LINUX_NFSIOD_H +#define _LINUX_NFSIOD_H + +#include <linux/rpcsock.h> +#include <linux/nfs_fs.h> + +#ifdef __KERNEL__ + +/* + * This is the callback handler for nfsiod requests. + * Note that the callback procedure must NOT sleep. + */ +struct nfsiod_req; +typedef int (*nfsiod_callback_t)(int result, struct nfsiod_req *); + +/* + * This is the nfsiod request struct. + */ +struct nfsiod_req { + struct nfsiod_req * rq_next; + struct nfsiod_req * rq_prev; + struct wait_queue * rq_wait; + struct rpc_ioreq rq_rpcreq; + nfsiod_callback_t rq_callback; + struct nfs_server * rq_server; + struct inode * rq_inode; + struct page * rq_page; + + /* user creds */ + uid_t rq_fsuid; + gid_t rq_fsgid; + int rq_groups[NGROUPS]; + + /* retry handling */ + int rq_retries; +}; + +struct nfsiod_req * nfsiod_reserve(struct nfs_server *); +void nfsiod_release(struct nfsiod_req *); +void nfsiod_enqueue(struct nfsiod_req *); +int nfsiod(void); + + +#endif /* __KERNEL__ */ +#endif /* _LINUX_NFSIOD_H */ |