提交 d6483b7a 编写于 作者: A Al Viro

switch fchmod(2) to fget_light()

Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 6b48c5b2
...@@ -582,23 +582,21 @@ SYSCALL_DEFINE3(lchown, const char __user *, filename, uid_t, user, gid_t, group ...@@ -582,23 +582,21 @@ SYSCALL_DEFINE3(lchown, const char __user *, filename, uid_t, user, gid_t, group
SYSCALL_DEFINE3(fchown, unsigned int, fd, uid_t, user, gid_t, group) SYSCALL_DEFINE3(fchown, unsigned int, fd, uid_t, user, gid_t, group)
{ {
struct file * file; struct file *file;
int error = -EBADF; int error = -EBADF, fput_needed;
struct dentry * dentry;
file = fget(fd); file = fget_light(fd, &fput_needed);
if (!file) if (!file)
goto out; goto out;
error = mnt_want_write_file(file); error = mnt_want_write_file(file);
if (error) if (error)
goto out_fput; goto out_fput;
dentry = file->f_path.dentry; audit_inode(NULL, file->f_path.dentry);
audit_inode(NULL, dentry);
error = chown_common(&file->f_path, user, group); error = chown_common(&file->f_path, user, group);
mnt_drop_write_file(file); mnt_drop_write_file(file);
out_fput: out_fput:
fput(file); fput_light(file, fput_needed);
out: out:
return error; return error;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册