In some cases, lower_dentry may goes to NULL. Return 0 here to mark it
as invalid dentry.
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
Signed-off-by: Mengyang Li <li.mengyang@stonybrook.edu>
parent = unionfs_lock_parent(dentry, UNIONFS_DMUTEX_PARENT);
unionfs_lock_dentry(dentry, UNIONFS_DMUTEX_CHILD);
+ if (!unionfs_lower_dentry(dentry)) {
+ err = 0;
+ goto out;
+ }
+
valid = __unionfs_d_revalidate(dentry, parent, false);
if (valid) {
unionfs_postcopyup_setmnt(dentry);
d_drop(dentry);
err = valid;
}
+out:
unionfs_unlock_dentry(dentry);
unionfs_unlock_parent(dentry, parent);
unionfs_read_unlock(dentry->d_sb);