diff options
authorLinus Torvalds <>2012-09-14 14:48:21 -0700
committerMarcel Ziswiler <>2017-12-21 02:07:29 +0100
commitd7ac775674f2c302992311c92af50dee229faa5f (patch)
parent091f708e28ebfc999395fa6d3137871d573ed623 (diff)
vfs: make O_PATH file descriptors usable for 'fstat()'
We already use them for openat() and friends, but fstat() also wants to be able to use O_PATH file descriptors. This should make it more directly comparable to the O_SEARCH of Solaris. Note that you could already do the same thing with "fstatat()" and an empty path, but just doing "fstat()" directly is simpler and faster, so there is no reason not to just allow it directly. See also commit 332a2e1244bd, which did the same thing for fchdir, for the same reasons. Reported-by: ольга крыжановская <> Cc: Al Viro <> Cc: # O_PATH introduced in 3.0+ Signed-off-by: Linus Torvalds <> (cherry picked from commit 55815f70147dcfa3ead5738fd56d3574e2e3c1c2) Signed-off-by: Dominik Sliwa <> Acked-by: Marcel Ziswiler <>
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/stat.c b/fs/stat.c
index 55ceb06f5cf4..7b21801e284a 100644
--- a/fs/stat.c
+++ b/fs/stat.c
@@ -58,7 +58,7 @@ EXPORT_SYMBOL(vfs_getattr);
int vfs_fstat(unsigned int fd, struct kstat *stat)
int fput_needed;
- struct file *f = fget_light(fd, &fput_needed);
+ struct file *f = fget_raw_light(fd, &fput_needed);
int error = -EBADF;
if (f) {