ANDROID: sdcardfs: Check for NULL in revalidate

If the inode is in the process of being evicted,
the top value may be NULL.

Signed-off-by: Daniel Rosenberg <drosen@google.com>
Bug: 38502532
Change-Id: I0b9d04aab621e0398d44d1c5dc53293106aa5f89
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
This commit is contained in:
Daniel Rosenberg
2019-08-06 10:45:23 +02:00
committed by Francescodario Cuzzocrea
parent 1c6fdd8223
commit d511e47b6b
+5 -3
View File
@@ -109,14 +109,16 @@ static int sdcardfs_d_revalidate(struct dentry *dentry, struct nameidata *nd)
goto out;
/* If our top's inode is gone, we may be out of date */
inode = dentry->d_inode;
inode = igrab(dentry->d_inode);
if (inode) {
data = top_data_get(SDCARDFS_I(inode));
if (data->abandoned) {
if (!data || data->abandoned) {
d_drop(dentry);
err = 0;
}
data_put(data);
if (data)
data_put(data);
iput(inode);
}
out: