linux/fs/nfs/cache_lib.h
<<
>>
Prefs
   1/*
   2 * Helper routines for the NFS client caches
   3 *
   4 * Copyright (c) 2009 Trond Myklebust <Trond.Myklebust@netapp.com>
   5 */
   6
   7#include <linux/completion.h>
   8#include <linux/sunrpc/cache.h>
   9#include <linux/atomic.h>
  10
  11/*
  12 * Deferred request handling
  13 */
  14struct nfs_cache_defer_req {
  15        struct cache_req req;
  16        struct cache_deferred_req deferred_req;
  17        struct completion completion;
  18        atomic_t count;
  19};
  20
  21extern int nfs_cache_upcall(struct cache_detail *cd, char *entry_name);
  22extern struct nfs_cache_defer_req *nfs_cache_defer_req_alloc(void);
  23extern void nfs_cache_defer_req_put(struct nfs_cache_defer_req *dreq);
  24extern int nfs_cache_wait_for_upcall(struct nfs_cache_defer_req *dreq);
  25
  26extern int nfs_cache_register_net(struct net *net, struct cache_detail *cd);
  27extern void nfs_cache_unregister_net(struct net *net, struct cache_detail *cd);
  28extern int nfs_cache_register_sb(struct super_block *sb,
  29                                 struct cache_detail *cd);
  30extern void nfs_cache_unregister_sb(struct super_block *sb,
  31                                    struct cache_detail *cd);
  32