@@ -303,6 +303,10 @@ static inline struct dentry *ovl_lookup_real(struct dentry *dir,
} else if (!dentry->d_inode) {
dput(dentry);
dentry = NULL;
+ } else if (dentry->d_flags & DCACHE_MANAGED_DENTRY) {
+ dput(dentry);
+ /* Don't support traversing automounts */
+ dentry = ERR_PTR(-EREMOTE);
}
return dentry;
}
@@ -700,12 +704,12 @@ static bool ovl_is_allowed_fs_type(struct dentry *root)
/*
* We don't support:
- * - automount filesystems
+ * - autofs
* - filesystems with revalidate (FIXME for lower layer)
* - filesystems with case insensitive names
*/
if (dop &&
- (dop->d_manage || dop->d_automount ||
+ (dop->d_manage ||
dop->d_revalidate || dop->d_weak_revalidate ||
dop->d_compare || dop->d_hash)) {
return false;