commit | e72b9dd6a5f17d0fb51f16f8685f3004361e83d0 | [log] [tgz] |
---|---|---|
author | Al Viro <viro@zeniv.linux.org.uk> | Sun Nov 03 13:45:04 2019 -0500 |
committer | Al Viro <viro@zeniv.linux.org.uk> | Sun Nov 10 11:57:44 2019 -0500 |
tree | 19a562a037fad18df276c5847f43b57b646da2dc | |
parent | bcf0d9d4b76976f892154efdfc509b256fd898e8 [diff] |
ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable lower_dentry can't go from positive to negative (we have it pinned), but it *can* go from negative to positive. So fetching ->d_inode into a local variable, doing a blocking allocation, checking that now ->d_inode is non-NULL and feeding the value we'd fetched earlier to a function that won't accept NULL is not a good idea. Cc: stable@vger.kernel.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>