OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [uclinux/] [uC-libc/] [include/] [linux/] [nfsiod.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 199 simons
/*
2
 * linux/include/linux/nfsiod.h
3
 *
4
 * Declarations for asynchronous NFS RPC calls.
5
 *
6
 */
7
 
8
#ifndef _LINUX_NFSIOD_H
9
#define _LINUX_NFSIOD_H
10
 
11
#include <linux/rpcsock.h>
12
#include <linux/nfs_fs.h>
13
 
14
#ifdef __KERNEL__
15
 
16
/*
17
 * This is the callback handler for nfsiod requests.
18
 * Note that the callback procedure must NOT sleep.
19
 */
20
struct nfsiod_req;
21
typedef int     (*nfsiod_callback_t)(int result, struct nfsiod_req *);
22
 
23
/*
24
 * This is the nfsiod request struct.
25
 */
26
struct nfsiod_req {
27
        struct nfsiod_req *     rq_next;
28
        struct nfsiod_req *     rq_prev;
29
        struct wait_queue *     rq_wait;
30
        struct rpc_ioreq        rq_rpcreq;
31
        nfsiod_callback_t       rq_callback;
32
        struct nfs_server *     rq_server;
33
        struct inode *          rq_inode;
34
        struct page *           rq_page;
35
 
36
        /* user creds */
37
        uid_t                   rq_fsuid;
38
        gid_t                   rq_fsgid;
39
        int                     rq_groups[NGROUPS];
40
 
41
        /* retry handling */
42
        int                     rq_retries;
43
};
44
 
45
struct nfsiod_req *     nfsiod_reserve(struct nfs_server *);
46
void                    nfsiod_release(struct nfsiod_req *);
47
void                    nfsiod_enqueue(struct nfsiod_req *);
48
int                     nfsiod(void);
49
 
50
 
51
#endif /* __KERNEL__ */
52
#endif /* _LINUX_NFSIOD_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.