diff options
author | Amir Goldstein <amir73il@gmail.com> | 2017-05-11 15:42:26 +0200 |
---|---|---|
committer | Miklos Szeredi <mszeredi@redhat.com> | 2017-05-19 09:33:49 +0200 |
commit | ee1d6d37b6b884383b501089be93ce94f2153028 (patch) | |
tree | fd490f8a866c66e17883c240e1caffff1896c2c8 /fs/overlayfs/ovl_entry.h | |
parent | ovl: remove unused arg from ovl_lookup_temp() (diff) | |
download | linux-ee1d6d37b6b884383b501089be93ce94f2153028.tar.xz linux-ee1d6d37b6b884383b501089be93ce94f2153028.zip |
ovl: mark upper dir with type origin entries "impure"
When moving a merge dir or non-dir with copy up origin into a non-merge
upper dir (a.k.a pure upper dir), we are marking the target parent dir
"impure". ovl_iterate() iterates pure upper dirs directly, because there is
no need to filter out whiteouts and merge dir content with lower dir. But
for the case of an "impure" upper dir, ovl_iterate() will not be able to
iterate the real upper dir directly, because it will need to lookup the
origin inode and use it to fill d_ino.
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/overlayfs/ovl_entry.h')
-rw-r--r-- | fs/overlayfs/ovl_entry.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/overlayfs/ovl_entry.h b/fs/overlayfs/ovl_entry.h index ad86c0a302eb..34bc4a9f5c61 100644 --- a/fs/overlayfs/ovl_entry.h +++ b/fs/overlayfs/ovl_entry.h @@ -43,6 +43,7 @@ struct ovl_entry { u64 version; const char *redirect; bool opaque; + bool impure; bool copying; }; struct rcu_head rcu; |