Loading fs/nfsd/nfscache.c +10 −12 Original line number Diff line number Diff line Loading @@ -84,12 +84,6 @@ nfsd_hashsize(unsigned int limit) return roundup_pow_of_two(limit / TARGET_BUCKET_SIZE); } static u32 nfsd_cache_hash(__be32 xid, struct nfsd_net *nn) { return hash_32((__force u32)xid, nn->maskbits); } static struct svc_cacherep * nfsd_reply_cache_alloc(struct svc_rqst *rqstp, __wsum csum, struct nfsd_net *nn) Loading Loading @@ -241,6 +235,14 @@ lru_put_end(struct nfsd_drc_bucket *b, struct svc_cacherep *rp) list_move_tail(&rp->c_lru, &b->lru_head); } static noinline struct nfsd_drc_bucket * nfsd_cache_bucket_find(__be32 xid, struct nfsd_net *nn) { unsigned int hash = hash_32((__force u32)xid, nn->maskbits); return &nn->drc_hashtbl[hash]; } static long prune_bucket(struct nfsd_drc_bucket *b, struct nfsd_net *nn, unsigned int max) { Loading Loading @@ -421,10 +423,8 @@ int nfsd_cache_lookup(struct svc_rqst *rqstp) { struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id); struct svc_cacherep *rp, *found; __be32 xid = rqstp->rq_xid; __wsum csum; u32 hash = nfsd_cache_hash(xid, nn); struct nfsd_drc_bucket *b = &nn->drc_hashtbl[hash]; struct nfsd_drc_bucket *b = nfsd_cache_bucket_find(rqstp->rq_xid, nn); int type = rqstp->rq_cachetype; int rtn = RC_DOIT; Loading Loading @@ -528,7 +528,6 @@ void nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id); struct svc_cacherep *rp = rqstp->rq_cacherep; struct kvec *resv = &rqstp->rq_res.head[0], *cachv; u32 hash; struct nfsd_drc_bucket *b; int len; size_t bufsize = 0; Loading @@ -536,8 +535,7 @@ void nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) if (!rp) return; hash = nfsd_cache_hash(rp->c_key.k_xid, nn); b = &nn->drc_hashtbl[hash]; b = nfsd_cache_bucket_find(rp->c_key.k_xid, nn); len = resv->iov_len - ((char*)statp - (char*)resv->iov_base); len >>= 2; Loading Loading
fs/nfsd/nfscache.c +10 −12 Original line number Diff line number Diff line Loading @@ -84,12 +84,6 @@ nfsd_hashsize(unsigned int limit) return roundup_pow_of_two(limit / TARGET_BUCKET_SIZE); } static u32 nfsd_cache_hash(__be32 xid, struct nfsd_net *nn) { return hash_32((__force u32)xid, nn->maskbits); } static struct svc_cacherep * nfsd_reply_cache_alloc(struct svc_rqst *rqstp, __wsum csum, struct nfsd_net *nn) Loading Loading @@ -241,6 +235,14 @@ lru_put_end(struct nfsd_drc_bucket *b, struct svc_cacherep *rp) list_move_tail(&rp->c_lru, &b->lru_head); } static noinline struct nfsd_drc_bucket * nfsd_cache_bucket_find(__be32 xid, struct nfsd_net *nn) { unsigned int hash = hash_32((__force u32)xid, nn->maskbits); return &nn->drc_hashtbl[hash]; } static long prune_bucket(struct nfsd_drc_bucket *b, struct nfsd_net *nn, unsigned int max) { Loading Loading @@ -421,10 +423,8 @@ int nfsd_cache_lookup(struct svc_rqst *rqstp) { struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id); struct svc_cacherep *rp, *found; __be32 xid = rqstp->rq_xid; __wsum csum; u32 hash = nfsd_cache_hash(xid, nn); struct nfsd_drc_bucket *b = &nn->drc_hashtbl[hash]; struct nfsd_drc_bucket *b = nfsd_cache_bucket_find(rqstp->rq_xid, nn); int type = rqstp->rq_cachetype; int rtn = RC_DOIT; Loading Loading @@ -528,7 +528,6 @@ void nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id); struct svc_cacherep *rp = rqstp->rq_cacherep; struct kvec *resv = &rqstp->rq_res.head[0], *cachv; u32 hash; struct nfsd_drc_bucket *b; int len; size_t bufsize = 0; Loading @@ -536,8 +535,7 @@ void nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) if (!rp) return; hash = nfsd_cache_hash(rp->c_key.k_xid, nn); b = &nn->drc_hashtbl[hash]; b = nfsd_cache_bucket_find(rp->c_key.k_xid, nn); len = resv->iov_len - ((char*)statp - (char*)resv->iov_base); len >>= 2; Loading