diff options
Diffstat (limited to 'drivers/staging/lustre/lustre/llite/remote_perm.c')
-rw-r--r-- | drivers/staging/lustre/lustre/llite/remote_perm.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/drivers/staging/lustre/lustre/llite/remote_perm.c b/drivers/staging/lustre/lustre/llite/remote_perm.c index 39022ea88b5f..fe4a72268e3a 100644 --- a/drivers/staging/lustre/lustre/llite/remote_perm.c +++ b/drivers/staging/lustre/lustre/llite/remote_perm.c @@ -61,7 +61,7 @@ static inline struct ll_remote_perm *alloc_ll_remote_perm(void) { struct ll_remote_perm *lrp; - OBD_SLAB_ALLOC_PTR_GFP(lrp, ll_remote_perm_cachep, GFP_KERNEL); + lrp = kmem_cache_alloc(ll_remote_perm_cachep, GFP_KERNEL | __GFP_ZERO); if (lrp) INIT_HLIST_NODE(&lrp->lrp_list); return lrp; @@ -74,7 +74,7 @@ static inline void free_ll_remote_perm(struct ll_remote_perm *lrp) if (!hlist_unhashed(&lrp->lrp_list)) hlist_del(&lrp->lrp_list); - OBD_SLAB_FREE(lrp, ll_remote_perm_cachep, sizeof(*lrp)); + kmem_cache_free(ll_remote_perm_cachep, lrp); } static struct hlist_head *alloc_rmtperm_hash(void) @@ -82,9 +82,7 @@ static struct hlist_head *alloc_rmtperm_hash(void) struct hlist_head *hash; int i; - OBD_SLAB_ALLOC_GFP(hash, ll_rmtperm_hash_cachep, - REMOTE_PERM_HASHSIZE * sizeof(*hash), - GFP_IOFS); + hash = kmem_cache_alloc(ll_rmtperm_hash_cachep, GFP_NOFS | __GFP_ZERO); if (!hash) return NULL; @@ -106,8 +104,7 @@ void free_rmtperm_hash(struct hlist_head *hash) for (i = 0; i < REMOTE_PERM_HASHSIZE; i++) hlist_for_each_entry_safe(lrp, next, hash + i, lrp_list) free_ll_remote_perm(lrp); - OBD_SLAB_FREE(hash, ll_rmtperm_hash_cachep, - REMOTE_PERM_HASHSIZE * sizeof(*hash)); + kmem_cache_free(ll_rmtperm_hash_cachep, hash); } static inline int remote_perm_hashfunc(uid_t uid) @@ -249,7 +246,6 @@ int lustre_check_remote_perm(struct inode *inode, int mask) struct ll_sb_info *sbi = ll_i2sbi(inode); struct ptlrpc_request *req = NULL; struct mdt_remote_perm *perm; - struct obd_capa *oc; unsigned long save; int i = 0, rc; @@ -276,10 +272,8 @@ int lustre_check_remote_perm(struct inode *inode, int mask) LBUG(); } - oc = ll_mdscapa_get(inode); - rc = md_get_remote_perm(sbi->ll_md_exp, ll_inode2fid(inode), oc, + rc = md_get_remote_perm(sbi->ll_md_exp, ll_inode2fid(inode), ll_i2suppgid(inode), &req); - capa_put(oc); if (rc) { mutex_unlock(&lli->lli_rmtperm_mutex); break; |