diff --git a/[refs] b/[refs] index 318388064517..a39d9b97cd90 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3f9f0aa687d45cbc8e7bb3cfd3aab555dcc8872e +refs/heads/master: e994defb7b6813ba6fa7a2a36e86d2455ad1dc35 diff --git a/trunk/fs/stat.c b/trunk/fs/stat.c index c733dc5753ae..88b36c770762 100644 --- a/trunk/fs/stat.c +++ b/trunk/fs/stat.c @@ -57,12 +57,13 @@ EXPORT_SYMBOL(vfs_getattr); int vfs_fstat(unsigned int fd, struct kstat *stat) { - struct file *f = fget(fd); + int fput_needed; + struct file *f = fget_light(fd, &fput_needed); int error = -EBADF; if (f) { error = vfs_getattr(f->f_path.mnt, f->f_path.dentry, stat); - fput(f); + fput_light(f, fput_needed); } return error; }