From 2495d2d42534db3b8634f1f907874f04cdb86d66 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Sat, 7 Jul 2012 10:17:00 -0700 Subject: [PATCH] --- yaml --- r: 311727 b: refs/heads/master c: 332a2e1244bd08b9e3ecd378028513396a004a24 h: refs/heads/master i: 311725: 34d0ed0c4a6ecbb1271a570aa60d20f1bdd0f58f 311723: b739b778b25c96b4d170b325da12d871baf40b50 311719: 81045a66619fb4caaa7793db13be3c6f918ec185 311711: 4272c0aa917b5ea36f6224c9ef6f304a6ca23867 v: v3 --- [refs] | 2 +- trunk/fs/open.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index de7aa460e546..5416814ae3c1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cd6407fe220c5cf26c117457f5bcdfd6a81fbef8 +refs/heads/master: 332a2e1244bd08b9e3ecd378028513396a004a24 diff --git a/trunk/fs/open.c b/trunk/fs/open.c index d6c79a0dffc7..1540632d8387 100644 --- a/trunk/fs/open.c +++ b/trunk/fs/open.c @@ -397,10 +397,10 @@ SYSCALL_DEFINE1(fchdir, unsigned int, fd) { struct file *file; struct inode *inode; - int error; + int error, fput_needed; error = -EBADF; - file = fget(fd); + file = fget_raw_light(fd, &fput_needed); if (!file) goto out; @@ -414,7 +414,7 @@ SYSCALL_DEFINE1(fchdir, unsigned int, fd) if (!error) set_fs_pwd(current->fs, &file->f_path); out_putf: - fput(file); + fput_light(file, fput_needed); out: return error; }