Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e6ba76e1 authored by Christoph Hellwig's avatar Christoph Hellwig
Browse files

nfsd: make find/get/put file available outside nfs4state.c



Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
parent cd61c522
Loading
Loading
Loading
Loading
+2 −8
Original line number Diff line number Diff line
@@ -272,7 +272,7 @@ static void nfsd4_free_file_rcu(struct rcu_head *rcu)
	kmem_cache_free(file_slab, fp);
}

static inline void
void
put_nfs4_file(struct nfs4_file *fi)
{
	might_lock(&state_lock);
@@ -285,12 +285,6 @@ put_nfs4_file(struct nfs4_file *fi)
	}
}

static inline void
get_nfs4_file(struct nfs4_file *fi)
{
	atomic_inc(&fi->fi_ref);
}

static struct file *
__nfs4_get_fd(struct nfs4_file *f, int oflag)
{
@@ -3295,7 +3289,7 @@ find_file_locked(struct knfsd_fh *fh, unsigned int hashval)
	return NULL;
}

static struct nfs4_file *
struct nfs4_file *
find_file(struct knfsd_fh *fh)
{
	struct nfs4_file *fp;
+7 −0
Original line number Diff line number Diff line
@@ -573,6 +573,13 @@ extern struct nfs4_client_reclaim *nfs4_client_to_reclaim(const char *name,
							struct nfsd_net *nn);
extern bool nfs4_has_reclaimed_state(const char *name, struct nfsd_net *nn);

struct nfs4_file *find_file(struct knfsd_fh *fh);
void put_nfs4_file(struct nfs4_file *fi);
static inline void get_nfs4_file(struct nfs4_file *fi)
{
	atomic_inc(&fi->fi_ref);
}

/* grace period management */
void nfsd4_end_grace(struct nfsd_net *nn);