aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Rosenberg <drosen@google.com>2017-06-07 12:44:50 -0700
committerMoyster <oysterized@gmail.com>2017-06-08 11:59:57 +0200
commit9b3759e81930b3222c18a1575aed5bcf81f6c55c (patch)
tree70f06189c016b1135355c081395dbf62c37ce1f2
parente5141469bf3130a2f309e57e93fec46e210b1353 (diff)
downloadandroid_kernel_m2note-9b3759e81930b3222c18a1575aed5bcf81f6c55c.tar.gz
ANDROID: sdcardfs: d_splice_alias can return error values
We must check that d_splice_alias was successful before using its output. Signed-off-by: Daniel Rosenberg <drosen@google.com> Bug: 62390017 Change-Id: Ifda0a052fb3f67e35c635a4e5e907876c5400978
-rwxr-xr-xfs/sdcardfs/lookup.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/sdcardfs/lookup.c b/fs/sdcardfs/lookup.c
index 8cf3709b0..d92b2bebb 100755
--- a/fs/sdcardfs/lookup.c
+++ b/fs/sdcardfs/lookup.c
@@ -204,7 +204,8 @@ static struct dentry *__sdcardfs_interpose(struct dentry *dentry,
ret_dentry = d_splice_alias(inode, dentry);
dentry = ret_dentry ?: dentry;
- update_derived_permission_lock(dentry);
+ if (!IS_ERR(dentry))
+ update_derived_permission_lock(dentry);
out:
return ret_dentry;
}