X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=fs%2Futimes.c;h=fa4dbe451e278eab0f52bbacc110b157a300cdad;hb=987751719bd38a72dfd29f398dea1a7f3cd5b224;hp=ba653f3dc1bc9c66010290e53e0bb2a5b8fd94b1;hpb=94bd217e2d683719ab21a4ac117d8a1b91cbedc9;p=~andy%2Flinux diff --git a/fs/utimes.c b/fs/utimes.c index ba653f3dc1b..fa4dbe451e2 100644 --- a/fs/utimes.c +++ b/fs/utimes.c @@ -140,18 +140,19 @@ long do_utimes(int dfd, const char __user *filename, struct timespec *times, goto out; if (filename == NULL && dfd != AT_FDCWD) { + int fput_needed; struct file *file; if (flags & AT_SYMLINK_NOFOLLOW) goto out; - file = fget(dfd); + file = fget_light(dfd, &fput_needed); error = -EBADF; if (!file) goto out; error = utimes_common(&file->f_path, times); - fput(file); + fput_light(file, fput_needed); } else { struct path path; int lookup_flags = 0;