1. 09 Mar, 2019 3 commits
    • J. R. Okajima's avatar
      aufs: users' direct branch access · 27c33497
      J. R. Okajima authored
      
      
      Aufs allows users' direct branch access (UDBA), ie. by-passing aufs.
      Of course it will make aufs inode/dentry-caches obsolete. In order to
      detect such change by the several tests, "udba=" option is introduced.
      
      For details, see lookup.txt in later commit.
      Signed-off-by: default avatarJ. R. Okajima <hooanon05g@gmail.com>
      27c33497
    • J. R. Okajima's avatar
      aufs: copy-up 2/7, internal lookup for the target · 3be12838
      J. R. Okajima authored
      
      
      Basically copy-up is done by these steps using au_pin (in another
      commit).
      - lock the target parent mutex
      - lookup a negative dentry with a whiteout-ed temporary unique name
      - create it
      - unlock the target parent mutex
      - copy filedata
      - copy metadata (inode attributes)
      - lock the target parent mutex
      - rename the temporary name to the target name
      - unlock the target parent mutex
      
      This commit contains step2 mainly.
      I hope someday aufs uses O_TMPFILE for this.
      Signed-off-by: default avatarJ. R. Okajima <hooanon05g@gmail.com>
      3be12838
    • J. R. Okajima's avatar
      aufs: pin or lock the parent dir and the child on a branch · 9f923257
      J. R. Okajima authored
      
      
      To create/delete/rename files including copy-up, aufs acquires several
      locks on the branch fs internally. These lock/unlock operations are
      consolidated into struct au_pin in this commit.
      au_pin handles
      - LOCKDEP class
      - re-validate/verify
      - suspend/resume HNOTIFY
      
      See also lookup.txt in later commit.
      Signed-off-by: default avatarJ. R. Okajima <hooanon05g@gmail.com>
      9f923257