switch fadvise(2) to fget_light()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
diff --git a/mm/fadvise.c b/mm/fadvise.c
index 9b75a04..a832457 100644
--- a/mm/fadvise.c
+++ b/mm/fadvise.c
@@ -26,7 +26,8 @@
  */
 SYSCALL_DEFINE(fadvise64_64)(int fd, loff_t offset, loff_t len, int advice)
 {
-	struct file *file = fget(fd);
+	int fput_needed;
+	struct file *file = fget_light(fd, &fput_needed);
 	struct address_space *mapping;
 	struct backing_dev_info *bdi;
 	loff_t endbyte;			/* inclusive */
@@ -128,7 +129,7 @@
 		ret = -EINVAL;
 	}
 out:
-	fput(file);
+	fput_light(file, fput_needed);
 	return ret;
 }
 #ifdef CONFIG_HAVE_SYSCALL_WRAPPERS