diff options
Diffstat (limited to 'fs/hugetlbfs/inode.c')
| -rw-r--r-- | fs/hugetlbfs/inode.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 870a721b8bd2..7d479ce3aceb 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs/hugetlbfs/inode.c | |||
| @@ -951,6 +951,7 @@ struct file *hugetlb_file_setup(const char *name, size_t size) | |||
| 951 | struct inode *inode; | 951 | struct inode *inode; |
| 952 | struct dentry *dentry, *root; | 952 | struct dentry *dentry, *root; |
| 953 | struct qstr quick_string; | 953 | struct qstr quick_string; |
| 954 | struct user_struct *user = current_user(); | ||
| 954 | 955 | ||
| 955 | if (!hugetlbfs_vfsmount) | 956 | if (!hugetlbfs_vfsmount) |
| 956 | return ERR_PTR(-ENOENT); | 957 | return ERR_PTR(-ENOENT); |
| @@ -958,7 +959,7 @@ struct file *hugetlb_file_setup(const char *name, size_t size) | |||
| 958 | if (!can_do_hugetlb_shm()) | 959 | if (!can_do_hugetlb_shm()) |
| 959 | return ERR_PTR(-EPERM); | 960 | return ERR_PTR(-EPERM); |
| 960 | 961 | ||
| 961 | if (!user_shm_lock(size, current->cred->user)) | 962 | if (!user_shm_lock(size, user)) |
| 962 | return ERR_PTR(-ENOMEM); | 963 | return ERR_PTR(-ENOMEM); |
| 963 | 964 | ||
| 964 | root = hugetlbfs_vfsmount->mnt_root; | 965 | root = hugetlbfs_vfsmount->mnt_root; |
| @@ -998,7 +999,7 @@ out_inode: | |||
| 998 | out_dentry: | 999 | out_dentry: |
| 999 | dput(dentry); | 1000 | dput(dentry); |
| 1000 | out_shm_unlock: | 1001 | out_shm_unlock: |
| 1001 | user_shm_unlock(size, current->cred->user); | 1002 | user_shm_unlock(size, user); |
| 1002 | return ERR_PTR(error); | 1003 | return ERR_PTR(error); |
| 1003 | } | 1004 | } |
| 1004 | 1005 | ||
