Skip to contentSkip to conversation

Patch "ovl: fix open in stacked overlay" has been added to the 4.2-stable tree

PATCH [email protected] 1 participant 1 message Nov 6, 2015

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ovl: fix open in stacked overlay

to the 4.2-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
ovl-fix-open-in-stacked-overlay.patch
and it can be found in the queue-4.2 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 1c8a47df36d72ace8cf78eb6c228aa0f8027d3c2 Mon Sep 17 00:00:00 2001

From: Miklos Szeredi <[email protected]>
Date: Mon, 12 Oct 2015 15:56:20 +0200
Subject: ovl: fix open in stacked overlay

From: Miklos Szeredi <[email protected]>

commit 1c8a47df36d72ace8cf78eb6c228aa0f8027d3c2 upstream.

If two overlayfs filesystems are stacked on top of each other, then we need recursion in ovl_d_select_inode().

I guess d_backing_inode() is supposed to do that. But currently it doesn't and that functionality is open coded in vfs_open(). This is now copied into ovl_d_select_inode() to fix this regression.

Fixes 4bacc9c9234c ("overlayfs: Make f_path always point to the overlay...")
Cc David Howells <[email protected]>
---
 fs/overlayfs/inode.c |    3 +++
 1 file changed, 3 insertions(+)
fs/overlayfs/inode.c +3 -0
@@ -363,6 +363,9 @@ struct inode *ovl_d_select_inode(struct
 		ovl_path_upper(dentry, &realpath);
 	}
 
+	if (realpath.dentry->d_flags & DCACHE_OP_SELECT_INODE)
+		return realpath.dentry->d_op->d_select_inode(realpath.dentry, file_flags);
+
 	return d_backing_inode(realpath.dentry);
 }
 

Patches currently in stable-queue which might be from [email protected] are

queue-4.2/ovl-free-stack-of-paths-in-ovl_fill_super.patch queue-4.2/ovl-fix-dentry-reference-leak.patch queue-4.2/ovl-use-o_largefile-in-ovl_copy_up.patch queue-4.2/ovl-free-lower_mnt-array-in-ovl_put_super.patch queue-4.2/ovl-fix-open-in-stacked-overlay.patch