]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
vfs: read file_handle only once in handle_to_path
authorSasha Levin <sasha.levin@oracle.com>
Wed, 28 Jan 2015 20:30:43 +0000 (15:30 -0500)
committerSasha Levin <sasha.levin@oracle.com>
Wed, 10 Jun 2015 17:42:44 +0000 (13:42 -0400)
commit444a3e132498a80ddd48296897e3ffe1ff53eb76
tree5656276a3db4bfb85ba5028f11229a0948a06f1d
parent59357f02e283dcdb51605301e2c9a5010881c6a6
vfs: read file_handle only once in handle_to_path

[ Upstream commit 161f873b89136eb1e69477c847d5a5033239d9ba ]

We used to read file_handle twice.  Once to get the amount of extra
bytes, and once to fetch the entire structure.

This may be problematic since we do size verifications only after the
first read, so if the number of extra bytes changes in userspace between
the first and second calls, we'll have an incoherent view of
file_handle.

Instead, read the constant size once, and copy that over to the final
structure without having to re-read it again.

Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
fs/fhandle.c