ovl: allow distributed fs as lower layer
authorMiklos Szeredi <mszeredi@suse.cz>
Mon, 22 Jun 2015 11:53:48 +0000 (13:53 +0200)
committerMiklos Szeredi <mszeredi@suse.cz>
Mon, 22 Jun 2015 11:53:48 +0000 (13:53 +0200)
commit7c03b5d45b8eebf0111125053d8fe887cc262ba6
treead8008cde20dea6cae41dd0613d1d72833d15a0b
parenta6f15d9a756571babbb2b2cd4fdd1b64a5de232b
ovl: allow distributed fs as lower layer

Allow filesystems with .d_revalidate as lower layer(s), but not as upper
layer.

For local filesystems the rule was that modifications on the layers
directly while being part of the overlay results in undefined behavior.

This can easily be extended to distributed filesystems: we assume the tree
used as lower layer is static, which means ->d_revalidate() should always
return "1".  If that is not the case, return -ESTALE, don't try to work
around the modification.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/overlayfs/super.c