2 * Helper routines for the NFS client caches
4 * Copyright (c) 2009 Trond Myklebust <Trond.Myklebust@netapp.com>
7 #include <linux/completion.h>
8 #include <linux/sunrpc/cache.h>
9 #include <linux/atomic.h>
12 * Deferred request handling
14 struct nfs_cache_defer_req
{
16 struct cache_deferred_req deferred_req
;
17 struct completion completion
;
21 extern int nfs_cache_upcall(struct cache_detail
*cd
, char *entry_name
);
22 extern struct nfs_cache_defer_req
*nfs_cache_defer_req_alloc(void);
23 extern void nfs_cache_defer_req_put(struct nfs_cache_defer_req
*dreq
);
24 extern int nfs_cache_wait_for_upcall(struct nfs_cache_defer_req
*dreq
);
26 extern void nfs_cache_init(struct cache_detail
*cd
);
27 extern void nfs_cache_destroy(struct cache_detail
*cd
);
28 extern int nfs_cache_register_net(struct net
*net
, struct cache_detail
*cd
);
29 extern void nfs_cache_unregister_net(struct net
*net
, struct cache_detail
*cd
);
30 extern int nfs_cache_register_sb(struct super_block
*sb
,
31 struct cache_detail
*cd
);
32 extern void nfs_cache_unregister_sb(struct super_block
*sb
,
33 struct cache_detail
*cd
);