From 6a25c8875e4e1a5710d4c7551091527c1d630c50 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Sun, 26 Aug 2012 20:27:09 -0400 Subject: [PATCH] --- yaml --- r: 328991 b: refs/heads/master c: 611443783ada3464c44e9168f6b7de2cb3fed39a h: refs/heads/master i: 328989: 94b643663fc3f4a306dd5ca27fcf3fc01ca74fc4 328987: 351c2ce3656d0be50235f213cfc3c6a9a544be38 328983: 00516986758e93669ba300159056598577b8a22b 328975: 9f77a8dcfb1fcd6e0511fbcdac1c9641a51e25e4 328959: 90a8d97bcfd1a0f5c20e38a86d7d245d4e225523 v: v3 --- [refs] | 2 +- trunk/mm/fadvise.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ebc2103e0a56..7f16399c7d12 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d6483b7a78438bc333560d11b69e6a6a6cf55940 +refs/heads/master: 611443783ada3464c44e9168f6b7de2cb3fed39a diff --git a/trunk/mm/fadvise.c b/trunk/mm/fadvise.c index 9b75a045dbf4..a83245763cf8 100644 --- a/trunk/mm/fadvise.c +++ b/trunk/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 @@ SYSCALL_DEFINE(fadvise64_64)(int fd, loff_t offset, loff_t len, int advice) ret = -EINVAL; } out: - fput(file); + fput_light(file, fput_needed); return ret; } #ifdef CONFIG_HAVE_SYSCALL_WRAPPERS