commit c6b76974311efc5bf3eddf921cd015b6aae46935
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 15 18:14:01 2011 +0900

    aufs: for .38, replace dcache_lock by i_lock
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 02687391b4084d24af377a774ae25911df49b9e3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 14 10:47:58 2011 +0900

    aufs: possible bugfix, aufs_link supports for a flushed plink
    
    In aufs_link(), the given dentry may be a psuedo-link. In this case,
    aufs should detect it and call vfs_link() for the real inode on the
    highest branch.
    A new function au_h_d_alias() is introduced.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a74d7008d25093b5d1fecb7f33df98570fddbf7e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 13 23:10:40 2011 +0900

    aufs: debug, new debug print au_dpri_dalias
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ad8f42b1ece790644d3a050907009a48153de71c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 12 23:38:58 2011 +0900

    aufs: possible bugfix, decode_by_ino support for obsolete dentry
    
    In decoding the NFS file handle, the cached dentry may be obsoleted by
    aufs branch mgmt. To support this case, decode_by_ino() returns NULL to
    force falling to the next level of decoding, eg decode_by_dir_ino.
    In decode_by_dir_ino(), a new lookup is issued and the dentry will be
    refreshed.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1f2bca01f562d4247494bbf20bcd8860b341d30c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 7 22:07:34 2011 +0900

    aufs: tiny, note about ./include/linux/Kbuild
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 27e557259bad6ebc48d4a811d5ef9db94070aa8b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 4 02:35:07 2011 +0900

    aufs: tiny, delete an unnecessary space
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5ec0835848ad10501993a1ef21ab69c9a6a6b01c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 29 16:26:35 2011 +0900

    aufs: tiny, support for new fmode macros
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eef0b4de3c91b95cb48d33286500a486ea3f4424
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 23 02:13:27 2011 +0900

    aufs: version string for aufs2.1-38
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b7f6b930cc0671ccbd7ba4cc0f3aff35ee995834
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 22 23:43:56 2011 +0900

    aufs: update donators
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1c0c29f20a09d1767bfb97348f28b23a056ca5c7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 2 13:36:35 2011 +0900

    aufs: refine a mutex for mmap 3/3, add a condition
    
    Acquire fi_mmap mutex lock only when necessary, ie. the file is not
    mmapped yet.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6c4dbe7a9a28134e0246bafbcbdfac1614539fbd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 2 13:34:55 2011 +0900

    aufs: refine a mutex for mmap 2/3, replace lockdep_off by dep_map
    
    Since it can hide an important debug message, calling lockdep_off/on is
    a bad approach. But aufs_mmap() does it in switching the owner of
    fi_mmap mutex lock. Delegating a top-half of aufs_mmap() and switching
    the owner of fi_mmap is still an ugly approach, but I don't find another
    way.
    Without lockdep_off, the kernel debugging feature produces a false
    message.
    Stop calling lockdep_off/on, use lockdep_acquire/release instead thus we
    can get benefit from the debugging feature.
    This is slightly tricky and a feature for debugging only.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dcdfe3b9d0e67b2a9636813d452159495d205e92
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 2 13:26:14 2011 +0900

    aufs: refine a mutex for mmap 1/3, move functions and make them static
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dcb6ad5eba7d9ef18909068285eefbb1cfe5e589
Author: John Johansen <john.johansen@canonical.com>
Date:   Mon Feb 28 22:19:38 2011 -0800

    Fix aufs call of security_path_mknod
    
    The security_path_mknod hook requires an encoded 'dev' for its 'dev' paramet
    but aufs is calling security_path_mknod with a 'dev' that was already
    converted by 'new_decode_dev(dev)'.  However security_path_mknod and its
    consumer TOMOYO is expecting 'dev' rather than 'new_decode_dev(dev)'.
    
    This will result in TOMOYO doing new_decode_dev(new_decode_dev(dev))
    (which is wrong) when security_path_mknod() is called from aufs' vfsub_mknod
    
    Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
    Signed-off-by: John Johansen <john.johansen@canonical.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 36d328cd7d0a68b79b4cbc9dad0af7653b403d36
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 23 01:25:05 2011 +0900

    aufs: update the donators list
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f4f4f752d0e83a59b8b36cc6870ca8635ff6f8af
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 14 20:57:35 2011 +0900

    aufs: tiny, support verbose by au_br_mod()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6c2bad0b72d2299476a6fa8f6a6da0b4a2e115eb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 14 15:32:24 2011 +0900

    aufs: new ioctl AUFS_CTL_IBUSY
    
    This new ioctl interface receives an inode number and a branch index.
    When the actual (hidden) ino on that branch is in use and makes the
    branch busy (un-removable), returns the h_ino.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5c0aa28ddfc1510834a5eac418e71f242d6061c9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 14 14:22:18 2011 +0900

    aufs: new functions to test EBUSY
    
    Extract parts from test_dentry_busy() and test_inode_busy() and create
    new helper functions au_test_dbusy() and au_test_ibusy().
    These functions will be used by a new ioctl to test EBUSY in the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 65835da20b77c98fb538c9114fc31f5de1328230
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 3 04:46:48 2011 +0900

    aufs: possible bugfix, exclude the freeing file
    
    There is a small window from VFS:file_kill() and au_farray_cb(), and
    the freeing file may remain in s_files list when au_farray_cb()
    traverses it.
    Test the file count and exclude the files whose count is zero in
    au_farray_cb().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1b2e182ba7e6e6d88b22ec25ef059bf932fe6e5b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 3 04:41:12 2011 +0900

    aufs: tiny, remove an unused variable
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 845a9e8515ce06e90145724eaab7b725f0a4f5ae
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 3 04:40:54 2011 +0900

    aufs: test bad inode in d_revalidate
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 14602769d431dd07aaadca403f7eecb5fa58f1cf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 31 15:23:54 2011 +0900

    aufs: for 2.6.38-rcN, protect d_count
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5caa6667bc16649365f79b441cddfd80109eb60c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 28 23:18:59 2011 +0900

    aufs: force the hardest test for remote branch
    
    When the branch fs is remote, for the hardest (udba=notify) test even if
    udba=notify is not specified.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2175d65a31af1c415606d7f45aeae363cf399de2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 28 23:17:37 2011 +0900

    aufs: bugfix, test in rename
    
    Force the test for the case when dst is a decendant of src regardless
    its existence.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b1cee06249dfa0ab30951e7f06490a75c155b620
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Jan 23 23:06:51 2011 +0900

    aufs: for 2.6.38-rcN, testing, revert stop_sillyrename
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fb742969486f39f4a7a6f0859758a42189bd38d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:13:16 2011 +0900

    aufs: for 2.6.38-rcN, use a new member s_d_op
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6e91ff14940eeaf587dd0386a31e1f0c718ded1d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:14:03 2011 +0900

    aufs: for 2.6.38-rcN, tiny, just a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0cbbdfb0411cc28445761990079c929946f0b3b2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:02:21 2011 +0900

    aufs: for 2.6.38-rcN, force write lock for rename_lock
    
    Because au_dcsub_pages() cannot discard the intermediate result and
    restart the traversal, always write_lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 742f879080f69bd1c5bf428f74fefb1b6e38565e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:12:01 2011 +0900

    aufs: for 2.6.38-rcN, protect d_unhashed() by d_lock
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 90ea0a0815b44e919737de424bce249c817ebbd6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 22 16:17:28 2011 +0900

    aufs: possible bugfix, protect d_unhashed() by di_write_lock
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7489e85817cc5154c35664c794041c2582590616
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 15:58:59 2011 +0900

    aufs: tiny, replace au_d_removed() by d_unlinked()
    
    These two small functions are identical.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 97bf43fd682b2c9aaa74eba39a405f669b4c3b31
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:15:12 2011 +0900

    aufs: testing, stop unhashing in hnotify
    
    In aufs, all hash/unhash for dentries should follow VFS.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f1fdfd580181ae75af84d347aa13c7b3f632a7e5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 21 16:00:14 2011 +0900

    aufs: tiny, modify a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 806051bcbeec27748aae2b7957726a4e63ff308e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 14 16:05:18 2011 +0900

    aufs: follow the changes in 2.6.38-rcN, testing
    
    This work is not done yet.
    - review is required for aufs code.
    - there are several known problems in mainline which are being fixed
      now.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f996d6b1adcd2c677c818fdf453ba257660f74c0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 10 17:32:50 2011 +0900

    aufs: bugfix, valid ptr in radix tree instead of dummy 1
    
    When a process whose pid is larger than 32768 (default),
    si_pid_set_slow() crashes due to a dummy value.
    Replace the value by a valid pointer.
    
    Reported-by: P.L.H.Bloom@tudelft.nl
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fb2bbc5fddc96fe90ae86f29dbcb104c224f1831
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 10 13:11:51 2011 +0900

    aufs: tiny, version string for aufs2.1-38-rcN
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1cbb90f7fc05ea86e872191bc4bc3422d7ef6401
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 10 11:07:29 2011 +0900

    aufs: tiny, version string for aufs2.1-37
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 795be8aa5ea8ac132e4ad4a0e9f1a0e33b9cd692
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 8 02:07:07 2011 +0900

    aufs: tiny, describe installing in aufs2-standalone.git
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3714bfd727bb7afbfe9a1e8eee8f6aefcc0f4e58
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 7 12:25:06 2011 +0900

    aufs: tiny, new year in copyright
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6a9bf4a4ebf0c4a5e694de2952d36e576b051692
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 7 12:21:14 2011 +0900

    aufs: tiny, new year in copyright
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7c771c6f660d9e0f17def9550e396418589e4340
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 7 12:03:19 2011 +0900

    aufs: tiny, describe union-mount and dm-snapshot
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 05a6d7153c58c13bca10ef7eb19ef3e3832d1c40
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 7 10:44:44 2011 +0900

    aufs: bugfix, O_CLOEXEC for the plink maintenance mode
    
    /sbin/mount.aufs (and others) puts aufs into the plink maintenance mode
    via /proc/fs/aufs/plink_maint which make many other operations to return
    error or block.
    During in this mode, /sbin/mount.aufs exec(2) the original mount(8).
    If mount(8) is not statically linked, it may mmap(2) ld.so (and
    others). And if ld.so is inside of the target aufs, then aufs mmap(2)
    blocks, ie. deadlock.
    To address this problem, specify O_CLOEXEC for /proc/fs/aufs/plink_maint
    which makes aufs to exit the plink maintenance mode, and ->release()
    doesn't care about pid.
    
    Reported-by: Marco Clocchiatti <ziapannocchia@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 24b389a51f85350d6fa465d22006cdd0a421ee30
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 3 10:16:17 2011 +0900

    aufs: tiny, describe installing in aufs2-standalone.git
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 58276fb0ea7dbfa57498fc96f87ecad91606fcd6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 21 21:25:11 2010 +0900

    aufs: new make target 'install' for stdalone
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c1cf055abebe4e25d67aeb32208c60ae49da37ac
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 20 16:00:01 2010 +0900

    aufs: follow the changes in 2.6.37-rcN, aop->freepage
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c5021514085a5d96364e096dbd34cadb2251abfd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 16 01:29:04 2010 +0900

    aufs: bugfix, missign test for branch management
    
    In aufs_lookup(), the parent dir MAY be removed logically by branch
    management.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5df24d5e0dc992ab991d0113703b9c90416ce527
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 15 22:55:09 2010 +0900

    aufs: debugging, stop dcsub in sysrq handler
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3f141020200c0e39c41c039eb261f65db0b3f18e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 15 22:50:15 2010 +0900

    aufs: tiny, revised simply
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8f46271b6cd7521da44a087dcbf3d783f4af24c7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 15 22:18:33 2010 +0900

    aufs: debugging, false positive around NOPLMW
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 788f93f121fcafecaca33dafb824495db02edfe7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 15 21:19:26 2010 +0900

    aufs: tiny, just an indentation
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9a8dc61df4b4b722f9a9ef8a568cfcb78a4eb0aa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 15 21:19:09 2010 +0900

    aufs: minor optimization, skip file-refresh for root
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9784a821611537ad9d0d4593ba775bb816ace3e9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 13 17:13:59 2010 +0900

    aufs: possible bugfix, protect branch from deleting in nfsd fh_to_dentry()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8c017b90207d3e0914f53f7e15ff9fb30d33ffac
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 13 17:00:20 2010 +0900

    aufs: possible bugfix, br_count in async rmdir
    
    There is a missing decrement br_count for 'br' member in struct
    au_whtmp_rmdir in an error path. Introduce a larger and bigger but more
    generic and simple solution.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 29c19e545f53894ca89a9525685572b9c99f34c3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Dec 12 10:25:26 2010 +0900

    aufs: move missing declaration
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0de8fbc346a9bc5cf314ea82063a65c08ca9e41b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 10 13:25:09 2010 +0900

    aufs: possible bugfix, walk in dcache limited to aufs
    
    In some cases, au_dcsub_pages_rev() should not handle out of aufs or
    broken (but still cached) aufs dentry.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 52f9727243bf644db05168e6c77d2f063bcc01ba
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 10 13:20:06 2010 +0900

    aufs: d_instantiate in link(2)
    
    Historically there was(were?) filesystem which calls d_drop() after the
    success of link(2). In order to support such filesystem, old aufs1
    follows it if h_dentry is dropped without d_instantiate().
    Recently I looked whether there still exists such filesystem or not, and
    could not find. So aufs_link() uncondionally calls d_instantiate() after
    success of vfs_link() for branch fs.
    But, as a fallback, d_drop() call with a d_unhashed() test are left.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6b0be66a68b95ca0bab3068133c8730882a38385
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 10 02:29:50 2010 +0900

    aufs: bugfix, lock subclass in copying-up a dir hierarchy
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e1d13b721d930c72217df0a9b6e8a87e51ed1810
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 10 02:27:55 2010 +0900

    aufs: bugfix, restore the internal array after special copyup
    
    When copyup a file which exists on the lower readonly branch and already
    removed logically, au_do_cpup_wh() operates the internal array in dinfo
    before copyup. After that, regardless an error happened in copyup,
    restore the internal array.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d539fca6887a013c6fbd1b579898aa78ba7c65c9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 9 02:19:42 2010 +0900

    aufs: minor, make inode bad before unlock
    
    If an error happens in settting a new inode, we call iget_failed() and
    make it "bad inode." Since someone else is wating for the inode is
    unlocked, call iget_failed() before unlock it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b69574acb527171af24eddb51ac414664d70ddc4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 9 02:17:00 2010 +0900

    aufs: bugfix, assign inode number for hardlink
    
    If the cached inode doesn't match the dentry in operation, never combine
    them (instatiate). Find another inode number.
    Basically the known inode number is stored in XINO file. But UDBA or
    branch management easily break it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit efa578c51e3132442f8cd65e6efe4e344969449f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:28:32 2010 +0900

    aufs: tiny, a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ff7babf5257fa57b341eb7230817a9ec0b45767c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:28:16 2010 +0900

    aufs: debug by lockdep_depth()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f44393848b3d0ab046de672752d4c23cf14c6b62
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:27:04 2010 +0900

    aufs: minor, sysrq+A prints all
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8fa5bfe552fdab2c900309f73f8a4174f705282d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:26:03 2010 +0900

    aufs: limit of rdcache
    
    MAX_SEC_IN_JIFFIES is less meaningful and hard to handle.
    Introduce a new reasonable upper limit AUFS_RDCACHE_MAX.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f85351d0360f40a2595c99f1182ddf1de0eed8a1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:24:40 2010 +0900

    aufs: limit of MFS seconds
    
    MAX_SEC_IN_JIFFIES is less meaningful and hard to handle.
    Introduce a new reasonable upper limit AUFS_MFS_MAX_SEC.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b64f629ab85e8d0641704fea2f2787d53713afd9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:21:00 2010 +0900

    aufs: tiny, revise error messages
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3e17bf45f4ab40d6516c9de073417942661cd31f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 7 01:19:32 2010 +0900

    aufs: bugfix, hfsnotify for multiple aufs 2/2
    
    Implement new operations, ->fin_br(), ->init_br() and ->reset_br().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fec63cfd00c69fe89ecc60fdf22e610b836e0785
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 7 01:18:47 2010 +0900

    aufs: bugfix, hfsnotify for multiple aufs 1/2
    
    Since fsnotify doesn't allow registering a same fsnotify_ops to the same
    fsnotify_group, aufs should make them per branch.
    Theoritically it is enough to make them per aufs super_block, but users
    MAY move branch into the same filesystem where other branch exists. To
    support such case, make them per branch.
    Introduce new operations, ->fin_br(), ->init_br() and ->reset_br().
    
    Reported-by: Joonwoo Park <joonwpark81@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3da80541bb8d42a8f3cd2e2caf04b3037a0040bf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 6 23:53:49 2010 +0900

    aufs: tiny, revise the parameter for hinotify
    
    - convert au_hnotify to au_hinode, remove h_inode from au_hn_alloc() and
      ->alloc().
    - convert au_hnotify to au_hinode, ->free().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b632f916658d019669d393975bdc66644b333269
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 10 13:29:13 2010 +0900

    aufs: debugging dinfo
    
    New debug function to verify the correctness of dinfo.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1341643c5de13471e781f9c0bcd8d987023494b6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 6 23:41:42 2010 +0900

    aufs: bugfix, return value of au_do_refresh_d()
    
    Intialize it as success (0).
    Add some debug messgages.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a4935871b43ea40fa73a67f228da6ef8c3dd0b14
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 8 02:27:39 2010 +0900

    aufs stdalone: export debug_locks
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 09853aaa34cca5eeedb9277591668258de081813
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 7 21:53:59 2010 +0900

    aufs: support for 2.6.34, protect f_mode
    
    By introducing FMODE_RANDOM, file->f_mode may be modified out of aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f1617ce6112b85ed5a686be5e0cb8f48794ea2c4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 2 03:48:57 2010 +0900

    aufs: revise how to build
    
    Reported-by: wanyanqing <udknight@gmail.com>
    Reported-by: Alex Vogt <elias@linexa.de>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 543820e74625523e263faad047928266dc672cfd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 30 15:39:35 2010 +0900

    aufs: tiny, remove unnecesary var
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 38fe8516196e35e6fab39a49f650dd5dd24deb63
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 30 06:27:32 2010 +0900

    aufs: refreshing, replace functions for remount time
    
    (This is a part of a patch series "new strategy for refreshing")
    
    In remounting (branch management), refresh all dentries and inodes
    regardless their status (unhashed, unlinked, etc).
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f822af6506e20cd2bd328dfc678ffbcf31c6f910
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 30 06:25:27 2010 +0900

    aufs: refreshing, new functions for remount time
    
    (This is a part of a patch series "new strategy for refreshing")
    
    Introduce new functions do_refresh, au_do_refresh_d, au_refresh_d, and
    au_refresh_i which will replace current functions.
    Since they are large and to keep single commit simple, this commit just
    define these functions. The behaviour won't change.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 85a3a786f9fb483aea021caf66d71a930a327974
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 27 14:32:52 2010 +0900

    aufs: refreshing, replace old function by new one
    
    (This is a part of a patch series "new strategy for refreshing")
    
    Replace au_refresh_hinode() by au_refresh_dentry() which was committed
    previously.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 872472221dc4771c29010fb89609ffc4ec31d9f9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 27 03:32:18 2010 +0900

    aufs: refreshing, new functions to refresh dentry
    
    (This is a part of a patch series "new strategy for refreshing")
    
    Introduce new functions au_do_hide, au_hide_children, au_hide,
    au_refresh_by_dinfo, and au_refresh_dentry which will replace current
    au_refresh_hdentry.
    Since they are large and to keep single commit simple, this commit just
    define these functions. The behaviour won't change.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 92dcda8894818f43b7a627d4a3062996552306b3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 22:10:47 2010 +0900

    aufs: refreshing, refine au_do_refresh_hdentry
    
    (This is a part of a patch series "new strategy for refreshing")
    
    Now dinfo sets -1 to dbstart and dbend to represent invalid.
    Currently its return value is ignored. It will be used in later commits.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit db0c0d602004fe2884225624af19e9ac97d8b19c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 16:59:17 2010 +0900

    aufs: refreshing, stop updating iigen in test_inode_busy()
    
    (This is a part of a patch series "new strategy for refreshing")
    
    In order to force refreshing in the later au_remount_refresh().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 48c759bfc43e795092bf0c0f31c6a8047cc6c9b1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 03:19:02 2010 +0900

    aufs: refreshing, consolidate REFRESH macros
    
    (This is a part of a patch series "new strategy for refreshing")
    
    At remounting (branch management), aufs refreshes some internal arrays.
    In this refreshing, objects for a dir and non-dir are separatedly
    handled for performance. This commit forces always refreshing both.
    And rename a macro AuSi_FAILED_REFRESH_DIRS to AuSiFAILED_REFRESH_DIR.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 40058d7c0ee7d8f449f5eef9ed178335303924a5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 02:40:13 2010 +0900

    aufs: new strategy for refreshing, refresh negative dentries
    
    (This is a part of a patch series "new strategy for refreshing")
    
    In branch management at remount, refresh negative dentries too, since
    they may hold a refrence to an object in the deleting branch.
    Also they may be in freeing, so call dget_locked() instead of simple
    dget().
    The permission of the branch who has the negative dentry may be changed
    to readonly, so confirm it in au_pin_and_icpup().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 97f1369508bf1e71935363adc85c5fd52695a915
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 28 11:24:12 2010 +0900

    aufs: keep dinfo valid by temp dinfo
    
    To decide creating a new whiteout is necessary or not, aufs tries
    finding whiteout on the lower branches. In this lookup, use another
    dinfo temporary to keep the original dinfo.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 381ba01af8e781512742858854a510ebb7667b1f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 00:52:57 2010 +0900

    aufs: temporary dinfo
    
    Introduce some functions to handle dinfo which will be used to make a
    temporary dinfo. The existing interfaces (di_init() and di_fin()) are
    not changed.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ca7dc2240a3b787761d31dc096fe95f3beb9a18a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 21:59:45 2010 +0900

    aufs: store br_id in dinfo
    
    In order to identify the index of branch at refreshing, store br_id in
    dinfo.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 447344925adad5f89950e409d3de501e7431468e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 28 22:47:25 2010 +0900

    aufs: bugfix, write to a removed file more than once
    
    In file write, the file may be already removed and au_ready_to_write()
    supports such case. But the write to the removed file, eg, the file
    had been already handled by au_ready_to_write(), then the function
    doesn't detect it and a bug appear.
    - when the file is removed, au_cpup_dirs() is unnecessary.
    - when the file is removevd and already handled by au_ready_to_write(),
      just re-open without copyup.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 24dddc56d3cab8671e30ad2213436b405ca715bc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 16:55:26 2010 +0900

    aufs: split au_refresh_hinode_self()
    
    Extract a part of au_refresh_hinode_self() and create a new function
    au_ii_refresh(). The 'do_attr' parameter of au_refresh_hinode_self()
    becomes unnecessary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d954281d7bd5f2523804290b120fd8a8bc7bb7fe
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 15:46:32 2010 +0900

    aufs: refine au_update_ibrange()
    
    Now iinfo sets -1 to ibstart and ibend to represent invalid.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bbc392af26ace27fc5e41e68f9437ad57ec2b85e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 01:45:43 2010 +0900

    aufs: keep dinfo valid
    
    Keep dinfo valid even if an error happened.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 49b3e86c8b8337fc7db9093ec98906de4cd4acb3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 17:00:04 2010 +0900

    aufs: use a generic warpper dbrange_test()
    
    Call au_dbrange_test() near au_digen_test() call.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e3d0c8ea457f3192caacaaeb83a01e9befb5176c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 16:59:11 2010 +0900

    aufs: use a generic warpper [di]i_gen_test()
    
    Replace some direct test codes by au_[di]igen_test().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6680a2cc71b37511097df27149ae072034e89491
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 30 13:35:07 2010 +0900

    aufs: bugfix, missing unlock in an error path
    
    File revalidating in au_reval_and_lock_fdi().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f1abf5b5d55ffeae0d3850a62853c99c02286228
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Nov 29 03:22:07 2010 +0900

    aufs: possible bugfix, the generation of dentry 3/3
    
    Test the generation of a dentry in the beginning of many operations.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 69e55ee7c6f87380df71b37dca94f6023407e1c2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Nov 29 03:21:36 2010 +0900

    aufs: possible bugfix, the generation of dentry 2/3
    
    Introduce AuLock_GEN flag to test the generation of a dentry in the
    beginning of many operations.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8755a096f8cc12a00b5f4826ac6cf8a3f5014535
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 01:25:57 2010 +0900

    aufs: possible bugfix, the generation of dentry 1/3
    
    Introduce new functions au_[di]igen_test() and au_dbrange_test().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 49bfb76c10c75603561fcd6e9d79d5ccf000e7ce
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 28 23:33:50 2010 +0900

    aufs: possible bugfix, test valid dentry 2/2
    
    Test the validity of a dentry in the beginning of many operations.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2ecf50571003219f9d7ab257420c570764332469
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 28 23:05:57 2010 +0900

    aufs: possible bugfix, test valid dentry 1/2
    
    Introduce some functions to test the validity of a dentry.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 952cec591bffdb1d470286eeea4ae27ed196bf94
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 28 22:51:06 2010 +0900

    aufs: tiny, debug code for i_mode
    
    To detect setting type unmatching h_inode to iinfo, initialize i_mode.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c00655e4c8f66871decf0d79a2d3b4c1fb6207d7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 00:00:44 2010 +0900

    aufs: tiny, comment around d_drop
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 426ed6061a419cb1c7a5e1504052a50c5198d3a7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 24 23:59:08 2010 +0900

    aufs: possible bugfix, keep dentry of renamed target valid
    
    Basically the renamed target is removed, but it may be still referenced
    and alive. Call d_drop in aufs and keep its dinfo valid.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6f00617abf56f74429ab06751df6519b957fc325
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 27 22:06:48 2010 +0900

    aufs: possible bugfix, decrement the link count of non-dir rename target
    
    Fix a missing drop_nlink() for the non-dir rename target.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b8ee2bd5b62c5dece464571a83f4142181a67a72
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 26 17:28:15 2010 +0900

    aufs: set S_DEAD to i_flags in aufs
    
    The S_DEAD flag is set in VFS, but we need to do it by ourselves because
    a race condition may happen with aufs remount/branch-mgmt operation.
    Set the flag within the aufs lock region.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 68fd4a243e4b9bbf397040c68ccc0f11da12c304
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 24 23:58:35 2010 +0900

    aufs: minor optimization, d_drop after failure of adding an entry
    
    After the failure of creating an entry, the aufs dentry private data may
    still refer the dentry in the branch fs's or may have invalid info.
    Discard it by d_drop() in error case.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6f7ebf0d44bacda459a8ae6235c59f47c9715808
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 24 15:57:22 2010 +0900

    aufs: possible bugfix, d_drop() job for hnotify
    
    Current d_drop() calls may have unexpected side effects.
    In order to force re-lookup, aufs should use di_gen instead of testing
    unhashed. When the test (in d_revalidate) fails, make it obsoleted.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ade2eb21fc942caa1c48bd931b5b8e2411eaadde
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 25 02:52:39 2010 +0900

    aufs: tiny, remove an empty line
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 16514eeea2d4b3ddcdd01b6cf54c8ae60cdc9bdf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 24 15:09:23 2010 +0900

    aufs: tiny, use a wrapper for fs private data
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8823675f5fd00ef30d6fea5f6779b45b3eb3bfd1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 27 04:05:07 2010 +0900

    aufs: possible bugfix, test d_fsdata in revalidating
    
    The passed dentry may not be created correctly, error case in previous
    lookup.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 33d73de5ae0c44312ce6fbce59819cf04b9de9fa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 24 13:22:02 2010 +0900

    aufs: possible bugfix, release all before au_nwt_done()
    
    In racing unmount process, iput() after au_nwt_done() MAY cause a problem.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 097bf62d6f49619359d34bf17f242df38562489a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 20 03:53:46 2010 +0900

    aufs: for 2.6.37, convert get_sb into mount
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 790de652f1cb83fbf6570209b96726445a2b5467
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 20 03:53:25 2010 +0900

    aufs: for 2.6.37, llseek dir too
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9e02a87b93b452ccff5003c3b5d086b44dd03ffd
Author: Andy Whitcroft <apw@canonical.com>
Date:   Mon Nov 8 19:51:06 2010 +0000

    AUFS -- track changes to llseek in v2.6.37-rc1
    
    The commit below changed the default llseek function to no_llseek,
    reinstate the previous default for aufs2:
    
      commit 776c163b1b93c8dfa5edba885bc2bfbc2d228a5f
      Author: Arnd Bergmann <arnd@arndb.de>
      Date:   Wed Jul 7 23:10:11 2010 +0200
    
        vfs: make no_llseek the default
    
    Signed-off-by: Andy Whitcroft <apw@canonical.com>

commit ec0cdbd350ddcd220fd3c1e0082e13435c73c9b9
Author: Andy Whitcroft <apw@canonical.com>
Date:   Mon Nov 8 19:51:05 2010 +0000

    AUFS -- track changes to work queue initialisation
    
    The commit below modified the static initialisers for work queues, track
    those changes in aufs2:
    
      commit ca1cab37d91cbe8a8333732540d43cabb54cfa85
      Author: Andrew Morton <akpm@linux-foundation.org>
      Date:   Tue Oct 26 14:22:34 2010 -0700
    
        workqueues: s/ON_STACK/ONSTACK/
    
    Signed-off-by: Andy Whitcroft <apw@canonical.com>

commit 83b979887788312197d63ade9f3ca09f1d66c6ff
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 20 02:24:41 2010 +0900

    aufs: for 2.6.37, ihold
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bfb074e1feabb7348f7dfb332928a2b48cbc67eb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 20 01:54:19 2010 +0900

    aufs: version string for aufs2.1-37
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5dc527205e7581b41a4fa2f0d5ae4e741439a75c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Nov 20 00:48:26 2010 +0900

    aufs: version string for aufs2.1-36
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0a504fac95958f00c1737ff3de75163fad1df573
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 23:09:38 2010 +0900

    aufs stdalone: for 2.6.36, export file_sb_list_del
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6d6c06ea2102f0bba39272340104b780b3a43729
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 23:06:55 2010 +0900

    aufs: for 2.6.36, trying FMODE_NONOTIFY
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5db3ff4f186d2ce58c3079a6af5e1a44c06c5c37
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 23:05:52 2010 +0900

    aufs: for 2.6.36, vfsmount_lock
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 830b34ac1f53b8bb160bf93af7af0ec17e009e81
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 23:05:29 2010 +0900

    aufs: for 2.6.36, sysrq handler
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fe4d2cad1dfedea6b6898ea9416c41dd20be9cff
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 23:04:01 2010 +0900

    aufs: for 2.6.36, file_list
    
    I don't like this "copy" approach.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e2e21ce7f80d5b3d99661aa98386bb6854c3751e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 00:18:45 2010 +0900

    aufs: tiny, braces for macro
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6badb1ed1fe179b544c25aaf22c2ea572c3b3894
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 00:18:02 2010 +0900

    aufs: tiny, rename a parameter
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 18d5ed7fa331024a64f63487d53b76c1e3e5fe4e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 00:17:17 2010 +0900

    aufs: tiny, remove spaces from a macro
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 870bf721a61b42701bb014068c2f8537cc436bad
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Nov 19 00:14:15 2010 +0900

    aufs: minor optimization, xib_next_bit
    
    Try the next bit of previously free.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 47dce097ac07764af41703379f11973ba93d53bb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 23:34:55 2010 +0900

    aufs: bugfix, reverting bwh after a failure of unlink/rmdir
    
    The branch index of removing the just created whiteout differs from the
    old branch index of whiteout.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 152e87e5cc6a8c7850bcbf8021e755dc68fbd305
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 23:29:58 2010 +0900

    aufs: tiny, debugging drop_nlink
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit daf58169a1b2241cb0a3d39d51f95c6a4765bb66
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 23:19:47 2010 +0900

    aufs: possible bugfix, prevent unmounting for no wait wkq
    
    Use si_kobj instead of super_block object.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1c16d762868b72747895b204dfa901400a469344
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 22:14:54 2010 +0900

    aufs: tiny, remove unnecessary test for O_TRUNC
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit af65dba02af73c4624b7702699c022347eea400e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 22:00:41 2010 +0900

    aufs: possible bugfix, missing iput() in lookup error
    
    While I don't think d_splice_alias() easily return an error, if it
    happens, aufs should call iput().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5d1aaf10a8fa2184783d776d4516be3acd604a18
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 21:58:32 2010 +0900

    aufs: possible bugfix, keep br_id positive
    
    When si_last_br_id wraps around, current code may not handle it well.
    By shrinking its bit width, keep br_id positive.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 31b66581cfd3afe26c9df901554e6255376760b9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 21:24:53 2010 +0900

    aufs: bugfix, missing supports for the pseudo-link maintenance mode
    
    ->lookup and ->getattr MAY also touch the pseudo-link. They should
    return an error in the pseudo-link maintenance mode at once.
    Since introducing a pseudo-link maintenance mode, all unnecessary
    au_plink_test() should be avoided.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5f69f48727369ed2aa81af041193720f066047d4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 21:07:52 2010 +0900

    aufs: bugfix, protect sb->sb_file from remount by file array
    
    In chaging a branch attribute, aufs verifies whether the branch is
    chagable by testing all opened files. During this file object traveral,
    file object may be reclamed outside of aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0b721b0f59dfaf18599e983a0c2bfa330c2cef57
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 21:05:38 2010 +0900

    aufs: a new counter si_nfiles
    
    Count the number of opened files and the tests at remounting will use
    it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e793e0835fc4cc0a468678fe861bec63bc0ba97c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 20:19:06 2010 +0900

    aufs: bugfix, protect sb->sb_inodes from remount by inode array
    
    In deleting a branch, aufs verifies whether the branch is unused by
    testing all cached inodes. During this inode traveral, inode may be
    reclamed outside of aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9ae1dfbcc9a53cc8b9d734032c9949ed9482863a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 20:17:44 2010 +0900

    aufs: a new counter si_ninodes
    
    Count the number of cached inodes and the tests at remounting will use
    it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit da5f6d12ed4b683f518e03490c3540a7a601db0f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 16:48:30 2010 +0900

    aufs: possible bugfix, replace some d_unhashed() by au_d_removed()
    
    The root dir may be unhashed, but it is obviously alive.
    The simple test by just d_unhashed() may misunderstand as if it was removed.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 96524002220bc3a551c4b4e5aa5ff77ef015d42c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 16:47:13 2010 +0900

    aufs: bugfix, introduce a new wrapper au_d_removed()
    
    The root dentry is unhashed but is not unlinked obviously.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7142b9ba7a087bc9cc910aba696c3aa43f7a85f7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 16:46:26 2010 +0900

    aufs: bugfix, deadlock around au_plink_lkup()
    
    au_plink_lkup() can be called from both of normal and wkq context via
    au_cpup_single(). It may cause a deadlock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e249247d36d2af19d67ec594d0cc7029e1249e31
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Nov 18 16:42:46 2010 +0900

    aufs: bugfix, reverse loop in au_update_dbend()
    
    I am afraid there never have happend, but it is obviously a bug.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fd1917e1f1900b8a130c79f83ccc5dd5591263ae
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 21 14:01:10 2010 +0900

    aufs: tiny, meaningless bit op
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2028ad2fdff9241c7f3f00988c4673aabd2769bb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 20 21:06:41 2010 +0900

    aufs: acquire vfsmount_lock
    
    By the commits,
    
    306c22a 2010-03-09 aufs stdalone: begin supporting linux-2.6.24-rcN,
    	stop exporting vfsmount_lock
    6433436 2010-03-09 aufs: begin supporting linux-2.6.24-rcN, call
    	iterate_mounts()
    
    exporting vfsmount_lock was removed and replaced by iterate_mounts()
    call.
    But vfsmount_lock is still necessary for aufs.
    Inserting an "extern" delcaration is not so smart, but I wonder why
    iterate_mounts() doen't provide anoter version which acquire
    vfsmount_lock internally.
    
    By the way, the linux version in these old commits were wrong.
    They should be 34 instead of 24.
    Don't make fun of me.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0669d87f6aa78908290cddef2770bdf70ac52a02
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 20 21:04:42 2010 +0900

    aufs stdalone: re-export vfsmount_lock
    
    By the commits,
    
    306c22a 2010-03-09 aufs stdalone: begin supporting linux-2.6.24-rcN,
    	stop exporting vfsmount_lock
    6433436 2010-03-09 aufs: begin supporting linux-2.6.24-rcN, call
    	iterate_mounts()
    
    exporting vfsmount_lock was removed and replaced by iterate_mounts()
    call.
    But vfsmount_lock is still necessary.
    
    By the way, the linux version in these old commits were wrong.
    They should be 34 instead of 24.
    Don't make fun of me.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 22343eb479940bd550aa15ba0a13130e10483991
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 20 06:18:09 2010 +0900

    aufs: possible bugfix, deadlock around remount
    
    When one remount process uses /sbin/mount.aufs expectedly, but the other
    remount process doesn't, a deadlock may happen.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 47c851312601076f077217e221db7f48e660481c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 17 18:57:47 2010 +0900

    aufs: plm mode, follow the changes
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7b4207ff802db466c4f4015c806b977b8bd38ca4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 17 10:21:23 2010 +0900

    aufs: tiny, update simply
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4d1785f36fd1ac5593ccc45ac69f8c339c023a75
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 17 09:50:09 2010 +0900

    aufs: tiny, use a var instead of calling a func twice
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5c45016dc812b8feed80d6542fb1c48715ebb2d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 16 11:12:01 2010 +0900

    aufs: bugfix, unset the return value in an error path
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6eab56fb7cf1bd41b70e25356d130d088211c60e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 16:18:12 2010 +0900

    aufs: plm mode, debugging feature
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    - add a verbose flag to au_plink_put() in order to produce a warning
      when the pseudo-link is not flushed.
    - test the process has a right to access to plink by AuDebugOn().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d0be3d45e4ebc92a3919862a5281ea5ab20021d4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 16:04:19 2010 +0900

    aufs: plm mode, flags for si_read_lock()
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    Handle the new flags AuLock_NOPLM/NOPLMW for most si_read_lock() call.
    New si_read_lock() waits the pseudo-link maintenance mode to exit, or
    return an error at once.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ee2f73c05bfec715b1eb0687e2b590d934860c11
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 14:22:24 2010 +0900

    aufs: plm mode, flags for si_write_lock()
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    Replace some si_noflush_write_lock() calls by a new si_write_lock() which
    is added flags argument.
    New si_write_lock() waits the pseudo-link maintenance mode to exit.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a5cb0dc275e36411710a62ec46f80e19ea347d5d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 18:05:07 2010 +0900

    aufs: plm mode, move sbi lock funcs
    
    Move si_(read|write)_lock() from super.h to sbinfo.c.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 67580fa2a03212c7516b6225125d554dd3fcdf5a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 04:55:44 2010 +0900

    aufs: plm mode, a new interface under proc_fs
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    Intorudce a new interface under procfs.
    Users have to update and install aufs2-util.git which handles the procfs
    entry.
    
    Now the pseudo-link feature totally depends upon CONFIG_PROC_FS.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 19fd2f6b872b51d920aee24ed2794174eaa891d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 02:37:49 2010 +0900

    aufs: plm mode, remove plink ioctl, new au_plink_maint()
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    Replace the current pseudo-link maintenance mode via ioctl by a new
    scheme using procfs interface. This patch doesn't contain the new
    interface. You will see it in later commits.
    
    Removing au_plink_ioctl(), AUFS_CTL_PLINK_MAINT and AUFS_CTL_PLINK_CLEAN
    means that users have to update and install aufs2-util.git too.
    
    - rewrite au_plink_maint_enter() and au_plink_maint_leave().
    - remove au_plink_maint_block().
    - remove au_plink_maint_leave() from aufs_release_dir().
    - extract a part of au_plink_ioctl() and create a new func
      au_plink_clean().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d29dfef499b9a579afc143ea8d6b6a5d97703bb7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 14 02:08:15 2010 +0900

    aufs: intorudce the pseudo-link maintenance mode, definition
    
    (This commit is just a part of "intorudce the pseudo-link maintenance
    mode" series)
    
    New flags AuLock_NOPLM and AuLock_NOPLMW, and a new function
    au_plink_maint() which will replace au_plink_maint_block() later.
    They behave as like F_SETLK and F_SETLKW for all over aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e327326f094b7ac0cef381cb2c2dfdd1c3a080f3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 18:04:28 2010 +0900

    aufs: intorudce the pseudo-link maintenance mode, doc
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c5a615bad4cfd48f1bca344c7494d43aa571e75c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 03:04:32 2010 +0900

    aufs: bugfix, race around Magic SysRq, s_inodes and s_files
    
    Protect sb->s_inodes and ->s_files from aufs Magic SysRq handler.
    For allocating inodes, VFS calls s_op->alloc_inode() and then adds it to
    s_inodes. Also for destroying, VFS removes it from s_inodes first and
    then calls s_op->destory_inode().
    With this sequence, it is guranteed that the inode in s_inodes is always
    correct and we can refer struct au_iinfo.
    
    But for files, VFS adds the file object to s_files before calling
    f_op->open(), and calls ->release() before removing it from s_files.
    It means the file in s_files MAY be incorrect and we may not refer
    struct au_finfo.
    To support the file which is not initialized yet, aufs tests
    file->private_data. And to address the file which is released but still
    in s_files, aufs removes it from s_files first in file release operation.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3816652bca1aa498f19482dc6c7b89c4b9a0556a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:58:04 2010 +0900

    aufs stdalone: export to access inodes and files
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 96138ab2b4ec9de86ff66430c593a68371acf466
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:56:00 2010 +0900

    aufs stdlone: new auto-config CONFIG_AUFS_SBILIST
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e71e072386b5aff7109ded6563bd3d35e08dd834
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:53:40 2010 +0900

    aufs: introduce au_sbinfo list
    
    Make a new list of all au_sbinfo objects.
    This is important for next commit which fixes a bug around Magic SysRq
    and others.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ebba50d69a7ce5ba1f5ab7184151e5eedb45b70a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:45:30 2010 +0900

    aufs: possible bugfix, nwt may be queued just before unmounting
    
    Just before unmounting, UDBA hnotify might be fired (or other "no wait
    task").
    Make sure all events are flushed in aufs_kill_sb().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e4a9bd53629be12e368a67292427df65343459fd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:40:19 2010 +0900

    aufs: possible bugfix, sb may be destroyed before au_si_free()
    
    The lifetime of super_block is maintained by VFS, while au_sbinfo is
    maintained by aufs via kobject.
    In au_si_free(), sb might be already destroyed.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e69d64436220c1a7708bc420ac759a71fd7ff971
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:33:14 2010 +0900

    aufs: tiny, convert s_op->umount_begin() to ->kill_sb()
    
    Current ->umount_begin() already became less meaningful.
    Implement newly ->kill_sb() and convert umount_begin() into it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5ab35c5dc0a541f25948ec68ff4d330229d32303
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 13 02:17:58 2010 +0900

    aufs: bugfix, branch management before au_call_rmdir_whtmp()
    
    Between au_whtmp_kick_rmdir() and au_call_rmdir_whtmp() (which is a "no
    wait task"), users may execute branch management, and the target branch
    "bindex" may be broken.
    Pass the branch instead of its index.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9c86f2ea994fd4936e6cbc8e525d0c8fb4ca7011
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Sep 15 13:57:53 2010 +0900

    Revert "aufs: more verbose at deleting a branch"
    
    This reverts commit 6c34a3c246941b965f14a1638c11683c202b72d2.
    
    Some "no wait task"s makes a branch busy.
    We should not continue when it is found.

commit 2484f972e57f7c3be76bb0e9deeab098d704c41e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 26 11:29:53 2010 +0900

    Revert "ifdef __KERNEL__ for kernel.h"
    
    This reverts commit ba8f448c3c5da969b4b51503a7ac0015785bac6c.
    
    "make headers_install" is essentially necessary.

commit 0d1c50fe861b27db7e401bf372e4fa513fc42967
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 10 01:42:14 2010 +0900

    aufs: begin of aufs2.1
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 77e008addb63ba96f7e8163e83c264903e8fc17a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 10 00:58:26 2010 +0900

    aufs: end of aufs2 and doubling donations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9d80cf726157b9a5e24fb45553f7753622c4fa4c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 18:17:52 2010 +0900

    aufs: tiny, convert sec <--> jiffies
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit edeaf060bb5acbb46fee915319ed0423a3e8ffd1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:30:08 2010 +0900

    aufs: bugfix, test h_mnt before reference in au_unpin()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0a625f79b6ff4f666e470c7c387e53adf4bb9c35
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:28:40 2010 +0900

    aufs: bugfix, unnecessary finfo_fin() in an error path in do_open_sp()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3b258d73ecbf9d05466444e54f6d8e40af123b71
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:26:17 2010 +0900

    aufs: tiny, refine debug print for file object
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3fd3605306d3d6e3fd6958f481a877e9c7119d70
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:24:15 2010 +0900

    aufs: bugfix, unnecessary iput in an error path in alloc_root()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c55326e652a55cd92b602cb011e79b5c719bc910
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:21:50 2010 +0900

    aufs: bugfix, wakeup in an error path in au_wkq_nowait()
    
    Wake up other processes who are waiting for completion of the task.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 72e9d220041ecc8d9a9f15c9734274c61906e498
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 17:18:15 2010 +0900

    aufs: bugfix, use br_id instead of bindex in au_br_mod_files_ro()
    
    The file objects may not be refreshed yet, and its branch index is
    unreliable here.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c8c330e9d032f047e5871995158dbc28fc111d7a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 13:43:57 2010 +0900

    aufs: tiny, warn once about ima
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e602a3ad860d34034ae8d98ef663d5d2954d70c0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 16:53:56 2010 +0900

    aufs: tiny, replace pr_warn in sysrq by printk
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aa66464222a900644ef7b73956f7c8ca9656f9f7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 12:47:44 2010 +0900

    aufs: tiny, include vt_kern.h from fs/aufs/debug.h
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8c35854e8b2a7a92015f5d763b4e71f9cec124be
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 12:44:27 2010 +0900

    aufs: tiny, printing in sysrq
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c41ae7e6249e4c11660904a2ccce6462030a3d87
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 12:38:09 2010 +0900

    aufs: tiny, reuse a variable in aufs_open_dir()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 21c612ca43e499b0f6461286f32a038bd30c7e1e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 12:37:06 2010 +0900

    aufs: tiny, set lock class for debugging
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e8dad573843d47a421ebaf913dc958a9db1c108b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 5 12:22:37 2010 +0900

    aufs: unnecessary atomic *_return funcs
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b0eb67fb8a6ed66964d679294f4cdd60f5159b25
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 26 11:27:37 2010 +0900

    aufs: describe about make headers_install
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 630defc8f3ab3f10848a7b8b1f14c7c53814da1e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 23 22:24:06 2010 +0900

    aufs: tiny, rename sysaufs_ket to ..._kset
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c656be344b5080b5a88cfc44977da2072c6b6f80
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 22 19:34:35 2010 +0900

    aufs: tiny, suppress harmless warnings
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 07beb7d1b8c969a38d79fc2239bf7b5937c63ef1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 22 17:28:30 2010 +0900

    aufs: tiny, suppress warning about indenting labels
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d986953aba429f6bab8285a66474d918d856f262
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 22 16:17:26 2010 +0900

    aufs: tiny, suppress harmless warnings
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 85fd019dea9e02d3afa4cc014ac6e08160abc6dc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 19:32:05 2010 +0900

    aufs stdalone: for 2.6.36, export fsnotify functions and remove inotify
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fbd5d097dc308631e8a9f5bdef8a17e9dade0a86
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 22:33:11 2010 +0900

    aufs: for 2.6.36, remove inotify
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f03c943921eb1ba0ed403bc6bf8c39f966b74cbd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 19:21:04 2010 +0900

    aufs: for 2.6.36, refined fsnotify
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4841757d905015161a26b3b7fdd89b32014afb64
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 19:15:08 2010 +0900

    aufs: for 2.6.36, vc_cons
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f5a2468f4366886420124adadaa34601adc7bd21
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 19:14:13 2010 +0900

    aufs: for 2.6.36, truncate_setsize()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3cafe1c2890f4b2af32862d56285f41573d07efc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 20 19:12:54 2010 +0900

    aufs: for 2.6.36, the parameter of vfs_statfs()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 156e24817a3997f8c9948e2a149fcf7eca2fdef6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 14 10:31:28 2010 +0900

    aufs: support for linux-2.6.36-rcN, kworker
    
    The workqueue thread is used by other works. If they change some
    attrbiutes of the thread, it may be harmful to aufs.
    Detect it in case of CONFIG_AUFS_DEBUG.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 84d9887aa24d67f81c024cce71c52227e1440e6f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 14 09:40:18 2010 +0900

    aufs: simplify the usage of "current" for aufs2-29 and later
    
    See
    1c53087 2010-08-12 aufs: simplify the usage of "current"
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dbfaa66eb454ae6570d150afeb2da6eed4cd7aec
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 14 01:16:41 2010 +0900

    aufs: simplify the usage of "current" for aufs2-28 and later
    
    See
    1c53087 2010-08-12 aufs: simplify the usage of "current"
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cb6c65e9cf9b5c52fb94b478fb9e6c9ea3c86122
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 18:16:25 2010 +0900

    aufs: follow the changes in linux-2.6.36
    
    - parameter of security_inode_permission() and security_path_truncate().
    - struct attribute.owner
    - generic workqueue
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6c1c99c2828715f1f64f1e21e34b4d2077627cdc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 12 03:45:59 2010 +0900

    aufs: bugfix, after an error in adding a branch
    
    At adding a new branch, initializing the xino file for that branch may
    fail due to ENOSPC or something. Close the file in the error path and
    re-initialize br->br_mnt.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dcc1cf348158f212db47554aea5a96433565c403
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 17:41:33 2010 +0900

    aufs: follow the changes in linux-2.6.33, rlimit()
    
    Replace the access to the members by a new function rlimit().
    Also current_fsuid() in au_dbg_do_verify_wkq() too.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1c53087eec392d2ecd6005b6cef9c180ae04c29f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 16:40:50 2010 +0900

    aufs: simplify the usage of "current"
    
    Replace "current" by generic macros, and remove the paramter of
    au_test_nfsd().
    Also with hoping a small optimization, reduce the number of "current" by
    storing a variable.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b785271cb7631fa4a3961e77e0f8189cfe2ca165
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 16:37:59 2010 +0900

    aufs: simplify and remove au_test_wkq()
    
    In whplink() and xino_fwrite(), au_test_wkq() is called to make sure
    that we have super user privilege. Essentially whplink() needs the
    privilege to lookup/link the hidden pseudo-link dir, and xino_fwrite()
    needs to break RLIMIT_FSIZE (in order to suppress SIGXFSZ).
    
    This commit splits (make the granularity lower) the tests.
    Also in the debug build, make sure the workqueue has the expected fsid
    and RLIMIT_FSIZE.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9944ffeb972e8de0cf730d6a323c5ccd0efe1ab9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 11 13:14:40 2010 +0900

    aufs: bugfix, test h_parent in au_do_pin()
    
    Under heavy I/O load, particularly rename(2) and others, the parent
    dentry of the passed dentry to au_do_pin() may be changed, and the
    corresponding h_parent can be NULL.
    
    Reported-by: Roopesh <k.roopesh@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cdbfd50d7e8733a8400e8f76cd9f9253747941d8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 7 00:56:12 2010 +0900

    aufs: tiny, make au_dy_irefresh un-inline
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3e5a357194016095c701e1198bb545ca68b84c87
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 5 22:41:26 2010 +0900

    aufs stdalone: set all configs to a make variable
    
    This var is used to verify configs by another separated makefile, and
    mainly for myself.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1ab626c25f1c5521f4728f8435c618a7acec160a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 2 21:37:20 2010 +0900

    aufs: version string for aufs2-36(-rcN)
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c292daecb4b74912cbe6f772eb8c3cd37f9b4cca
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 2 21:08:46 2010 +0900

    aufs: version string for aufs2-35
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 801f76f4ce7f4e94f23d5f513a95c73e7e43730e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 2 21:05:35 2010 +0900

    aufs: version string for aufs2-35
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5675361e2aaf8c49e95f9cdc4804c18add26a2c1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 1 12:52:57 2010 +0900

    aufs: tiny, note about the vdir cache
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6c34a3c246941b965f14a1638c11683c202b72d2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 1 12:27:40 2010 +0900

    aufs: more verbose at deleting a branch
    
    In deleting a branch, aufs searches the files in-use on that branch. If
    any of them are found, aufs rejects deleting immediately due to the
    branch is busy. It is basically equivalent to unmounting.
    But users may want to know the path of the opened file.
    This commit stops aufs to abondon the deleting process in verbose mode
    when it finds that there are file(s) opened on that branch. After
    printing the paths, aufs returns the error as usual. While the result is
    unchanged, aufs has to do for some unnecessary works just to show the
    paths.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 94a88523d6f702e67a74dfbdc5917b6aea7ceb36
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 21 11:32:24 2010 +0900

    aufs: allow a loopback-mounted branch
    
    It is rejected to add a branch which is a loopback-mount in another
    branch. For example,
    - /au = /br0 + /br1 ... + /brN
    - /brX/fs.img exists
    loopback mount /brX/fs.img at /out/dirB,
    append:/out/dirB
    
    This commit allows such case.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4946ca0d7c61d3875ec7c633100843f9249b1a2c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 21 11:00:41 2010 +0900

    aufs: bugfix, buffer overrun in au_whtmp_lkup()
    
    Removing or renaming a dir in aufs causes an internal renaming to a
    temporary unique name. To gurantee its uniquness, aufs uses a static
    internal counter and put it into the unique name. Historically it is
    printed in hexdecimal, but I had changed it decimal. By this change, the
    generating unique name will be longer, and when the counter exceeds 4
    digtis AND the target dir name has AUFS_MAX_NAMELEN characterns, then
    the buffer overrun will happen.
    
    Reported-by: Thayumanavar Sachithanantham <thayumj@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 068b8febe0b8e869c87b6b9c89b12b69b834a488
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 20 03:34:52 2010 +0900

    aufs: bugfix, un-static a local var in dy_get()
    
    The local var 'p' in dy_get() should not be static.
    
    Reported-by: Roopesh <k.roopesh@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4de8d40f631cc57f569eca460b87688cab216c23
Author: thayumj@gmail.com <thayumj@gmail.com>
Date:   Mon Jul 19 11:49:36 2010 -0400

    aufs: Fix null pointer dereference on branch deletion
    
    In au_br_del, we free up br in au_br_do_del and later on access br.
    Avoid deference on br to prevent crash.
    
    Signed-off-by: Thayumanavar Sachithanantham <thayumj@gmail.com>

commit b37c575759dc4535ccc03241c584ad5fe69e3b25
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Jul 4 21:06:02 2010 +0900

    aufs: minor update abput the doubling donations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 799db4b1d59ea0ffc999889bc6985397333e9a13
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 2 00:37:56 2010 +0900

    aufs: compat_ioctl, implement the operations
    
    (A commit in a series of supporting 32bit emulation under 64bit kernel.
    While every commit is git-bisect-able, you shoule read all commits in
    the series since a single commit may have less meaning.)
    
    Implement f_op->compat_ioctl().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 765378b55abcabfe3344e5fcf2eabd6a1d52abc0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 2 00:35:17 2010 +0900

    aufs: compat_ioctl, make a room for a pointer
    
    (A commit in a series of supporting 32bit emulation under 64bit kernel.
    While every commit is git-bisect-able, you shoule read all commits in
    the series since a single commit may have less meaning.)
    
    In order to make it compatible, make a room for a pointer and always
    handle it as 64bit size.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit abd339c757ea095f1affdd648d0e9e598213a790
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 2 00:29:00 2010 +0900

    aufs: compat_ioctl, remove verifying the size of ptr
    
    (A commit in a series of supporting 32bit emulation under 64bit kernel.
    While every commit is git-bisect-able, you shoule read all commits in
    the series since a single commit may have less meaning.)
    
    Remove verifying the size of ptr which is meaningless.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3c979528184058b184608e6e3086c4c59b0a6c86
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 2 00:04:33 2010 +0900

    aufs: follow 2.6.28, new flag LOOKUP_EXCL
    
    NFS replaces the internal test for LOOKUP_CREATE by a new flag
    LOOKUP_EXCL.
    Aufs has to prohibit this internal test in order to know whether the
    file exists or not.
    
    Reported-by: "Ian Stakenvicius, Aerobiology Research" <ian@aerobiology.ca>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 396a2f097a6b278fc2a9e9da83b87255f60075fb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jun 29 14:32:26 2010 +0900

    aufs: bugfix, separate the workqueue for preprocessing mmap
    
    variation of common AB-BA deadlock problem.
    
    ProcessA:
    - aufs_mmap
      + pre-process with using a workqueue
      + wait until return from the workqueue
    
    Workqueue task for ProcessA:
    - acquire aufs rwsem
    
    Processb
    - lookup or readdir in aufs
      + acquire aufs rwsem
      + assign a new inode number
      + write the value to the XINO file using a workqueue
      + wait until return from the workqueue
    
    Since the workqueue handles the request one by one, both of processA and
    B waits forever.
    
    This bug was introduced by the commit
    d986fa5 2010-03-08
    	aufs: bugfix, another approach to keep the lock order of mmap_sem
    which is the last added workqueue task.
    And this is the only one task which acquires such lock in workqueue.
    To fix it, introduce another workqueue which is for preprocessing mmap only.
    This commit will make the approach more ugly, I don't have another option.
    
    Reported-by: Oliver Welter <mail@oliwel.de>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7c7f493d58745e45160ccebfbfb5e6244dbd0b52
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 25 10:52:59 2010 +0900

    aufs: tiny, debug print [if]_version
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ade8662cb1184703ebdd7c7d07cb42d2056a605b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jun 19 16:38:15 2010 +0900

    aufs: follow the changes in 2.6.35, lockdep for sb->s_vfs_rename_mutex
    
    lockdep_set_class() is applied to sb->s_vfs_rename_mutex, and
    lockdep_off/on() in aufs become unnecessary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d405a78a328658600f1928309bfbd2ded6136c59
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jun 19 03:36:21 2010 +0900

    aufs: tiny, remove unused lockdep_off/on()
    
    In linux-2.6.31, lockdep_set_class() was applited to them.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a4862273fc684dd24a9e0b4c29f89aaf53723afc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jun 17 23:39:13 2010 +0900

    aufs: several GIT servers
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 135ac88ed89e4780dc71bef119b803d4c594ea07
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 16 18:11:40 2010 +0900

    aufs: possible bugfix, sbinfo lock in deleting inode, lockdep
    
    (A commit in a series of introducing pid map/tree and making sure to
    acquire sbinfo lock in deleting inode. While every commit is
    git-bisect-able, you shoule read all commits in the series since a
    single commit may have less meaning.)
    
    A debugging feature in linux kernel, lockdep, warns
    "inconsistent {RECLAIM_FS-ON-W} -> {IN-RECLAIM_FS-R} usage."
    about sb->s_umount and aufs sbinfo lock.
    This is bogus or "false positive" since {RECLAIM_FS-ON-W} state was
    registered at allcating the root inode at mounting. This is definitly no
    RECLAIM state. It may be a limitation of s_umount in lockdep.
    Let's simply make it quiet.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6ef8250091897e1cf7e8b77a7cfc61c7ffe58b58
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 16 18:03:48 2010 +0900

    aufs: possible bugfix, sbinfo lock in deleting inode, core
    
    (A commit in a series of introducing pid map/tree and making sure to
    acquire sbinfo lock in deleting inode. While every commit is
    git-bisect-able, you shoule read all commits in the series since a
    single commit may have less meaning.)
    
    s_umount rwsem in struct super_block prevents a race condition among
    umount, remount and kswapd. It is good.
    But if an inode is going to be deleted by other than kswapd, aufs may be
    doing another operation which requires a lock for sbinfo. In this case,
    si_noflush_read_trylock() in au_iinfo_fin() will not acquire the
    lock. Before au_iinfo_fin() completes or during its operations, another
    operation may release the lock and remount or a branch management
    process may start. Here if the branch management process changes the
    union members, then xino management in au_iinfo_fin() will not work
    correctly.
    
    In order to fix this potential problem, there another bad approch is
    introduced which uses a bitmap to mark the pid which acquired the sbinfo
    lock. In au_iinfo_fin(), if the bit is set, then the function will not
    try acquiring the lock.
    To support the pid larger than PID_MAX_DEFAULT, sbinfo prepares a radix
    tree too.
    
    With this commit, we can remove si_noflush_read_trylock(). But it will
    be necessary in aufs2-31 branch, so leave it now.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eb6254f4b0080f01b3356a40bdd62d7130bf1951
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 16 17:51:00 2010 +0900

    aufs: possible bugfix, sbinfo lock in deleting inode, use si_pid
    
    (A commit in a series of introducing pid map/tree and making sure to
    acquire sbinfo lock in deleting inode. While every commit is
    git-bisect-able, you shoule read all commits in the series since a
    single commit may have less meaning.)
    
    Use si_pid which was declared and implmented by last commit.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 89d59298f045a8a7e2c5a667dfc3ee3b3fe8745a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 16 17:43:12 2010 +0900

    aufs: possible bugfix, sbinfo lock in deleting inode, si_pid functions
    
    (A commit in a series of introducing pid map/tree and making sure to
    acquire sbinfo lock in deleting inode. While every commit is
    git-bisect-able, you shoule read all commits in the series since a
    single commit may have less meaning.)
    
    Declare and implement si_pid functions which are not used yet.
    The pid from 1 to PID_MAX_DEFAULT are marked in a new bitmap in
    sbinfo. The larger pids will go to a new radix tree in sbinfo.
    These marks will be referenced by au_iinfo_fin() in succeeding commit.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 40d554b0f6a6bc588fd88235f39b59f30ec27114
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 16 17:30:03 2010 +0900

    aufs: possible bugfix, sbinfo lock in deleting inode, __si_ lock
    
    (A commit in a series of introducing pid map/tree and making sure to
    acquire sbinfo lock in deleting inode. While every commit is
    git-bisect-able, you shoule read all commits in the series since a
    single commit may have less meaning.)
    
    Rename si_noflush_... lock macros to __si_..., and create new inlined
    functions si_noflush_....
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f2f51daf576fa90ad7209288ed8b19c8151ff92a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 9 17:03:00 2010 +0900

    aufs: tiny, simplify the locks in au_do_flush()
    
    The read-lock for dinfo is unnecessary.
    Also the write-lock for iinfo should be a read-lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bdc941c464fd4181f7ab76fbb992b6ab150ac188
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jun 8 23:28:03 2010 +0900

    aufs: minor optimization au_iinfo_fin()
    
    - extract a part of au_iinfo_fin(), create a new function
      au_xino_delete_inode(), and remove au_iinfo_write0().
    - simplify au_xino_write0() and rename to au_xib_clear_bit().
    - convert the type of au_xigen_inc() into void.
    - stop testing 'xino' option in au_xigen_inc().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7e7b86c68cf5d3638ceb19a0a1d7a254d8501bde
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jun 8 00:08:00 2010 +0900

    aufs: tiny, remove an unnecessary variable
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ea824b7a71cd905fdadcb0998ab2005fcb3786e9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jun 8 00:06:55 2010 +0900

    aufs: minor optimization, pass the 'verbose' flag
    
    Stop testing the 'verbose' flag in all test_dentry_busy(),
    test_inode_busy() and au_br_del() functions. Instead pass the tested
    result from au_br_del() to test_dentry_busy() and test_inode_busy().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cabc97fe740d2c7664988e76f218318aecd5ec18
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jun 7 14:45:15 2010 +0900

    aufs: tiny, test task flags instead of mm
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 575bf8c6484fd12a0719a7ebcf6c0d2fd0af31f3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 4 14:55:42 2010 +0900

    aufs: follow linux-2.6.35, simple_setsize()
    
    Replace vmtruncate() by a new function simple_setsize().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c503a51d10c9c7767f1eba8e47de545d31ab7858
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 4 02:54:13 2010 +0900

    aufs: bugfix, the dentry paramter for security funcs
    
    Pass the correct parameter.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 92172f59e363f630ab44217e78135cdeff90ba0d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 4 02:09:23 2010 +0900

    aufs: tiny, fake type-cast by union
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9f8ad8ca00cf7677e9d982c9e98d4b7586e759f6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 2 23:38:37 2010 +0900

    aufs: possible bugfix, revalidate inode race between readdir and lookup
    
    Both of readdir and lookup operation need to assign the aufs inode
    number, but it requires other aufs locks including xi_nondir_mtx which
    prevents hard-linked inode number from race condition. There can happen
    a violation of the order of these locks.
    
    They acquire these locks.
    aufs_readdir("./dirA")
    + si_read_lock
    + fi_write_lock
    + di_write_lock
    + ii_write_lock for dirA
    + xi_nondir_mtx for non-dir
    
    aufs_lookup("./dirA/fileB")
    + si_read_lock
    + di_write_lock
    + xi_nondir_mtx for non-dir
    + ii_write_lock_nested for fileB
    
    Here the fileB may be in copy-up operation which acquires the parent's
    dentry-info and inode->info lock. So aufs_lookup() waits for the
    completion of copy-up, aufs_readdir() waits for xi_nondir_mtx, and the
    copy-up waits for the parent, but it is held by readdir.
    This is very complicated situation and I am afraid the design of aufs
    inode assignment is not godd. But I don't have other idea.
    
    This commit refines xi_nondir_mtx and releases it before
    "ii_write_lock_nested for fileB."
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 907f03a11f5a681de402d733b6e80532adece324
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jun 1 01:41:43 2010 +0900

    aufs: tiny, follow the changes in linux-2.6.35-rcN
    
    The dentry parameter is removed from ->fsync().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a9be01e5e9688018ebe9ef46ec5414bb356bc556
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 30 04:40:49 2010 +0900

    aufs: fi_hdir, rename au_do_refresh_file() to au_do_refresh_dir()
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    It is for dir only.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ace9ed5d338f19f49994304616d03cc5f9f74f11
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 30 04:39:22 2010 +0900

    aufs: fi_hdir, remove an obsoleted au_dbg_verify_hf()
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    It is unused now.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a5988585b6f01f2447a728a8edb5de319aa0afaf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 30 04:36:50 2010 +0900

    aufs: fi_hdir, append the prefix '_dir' to au_fbend() and au_set_fbend()
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    Now these functions are for dir only. Simply append the prefix '_dir.'
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2270b95d476dac8479f01de308fc1353d961fec1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 30 04:06:34 2010 +0900

    aufs: fi_hdir, replace au_h_fptr() by au_hf_top() and au_hf_dir()
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    A new function au_hf_top() is for non-dir, and au_hf_dir() is for dir.
    They replace the generic au_h_fptr().
    On the other hand, au_set_h_fptr() will not be replaced.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 79befa0033f795d4fcef440a680aed3369fdbb4c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 30 03:38:16 2010 +0900

    aufs: fi_hdir, split struct au_file into two parts
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    Extract a part of struct au_file and create a new struct au_fidir which
    represents aufs dir. Non-dir entries are represented by au_finfo as they
    were. The internal struct file pointer array was allocated by au_fidir
    only. It will reduce the memory comsumption in opening non-dir. This is
    the main purpose of this series.
    struct au_file for non-dir doesn't allocate the internal array. Instead
    it contains singe struct au_hfile to hold the lower file object. And
    fi_bbot (fi_bend previously) is unnecessary.
    
    - aufs_open_dir() allocates the new member fi_hdir and opens the target
      dir as it was, and aufs_release_dir() frees the fi_hdir.
    - refresh_file() refreshes struct au_finfo for non-dir by itself.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a564c74c6fc87a03abf47e6dea06098f1756f9ee
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 29 23:06:04 2010 +0900

    aufs: fi_hdir, simply rename fi_bstart/fi_bend to fi_btop/fi_bbot
    
    (A commit in a series of splittng struct au_file into two parts, one for
    dir and the other for non-dir. You shoule read all commits in the series
    since one commit itself may have less meaning.)
    
    Simply rename the member "branch start/end" to "branch top/bottom"
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c3438ca97f51467fc9478c1e490d2924d85a6e9a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 29 23:51:42 2010 +0900

    aufs: generalize aufs_flush()
    
    Split aufs_flush into two parts, one for dir/non-dir specific part and
    the other for common part.
    Replace aufs_flush() by some new functions,
    - au_do_flush_dir(), aufs_flush_dir()
    - au_do_flush_nondir(), aufs_flush_nondir()
    - au_do_flush()
    - vfsub_flush()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 538e47a04a83fe2fd17d2881c7148362679017e5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 29 21:19:48 2010 +0900

    aufs: tiny, update atime in splice_to
    
    Updating atime in splice_to is unnecessary generally and doesn't in VFS
    either. But sendfile(2) updates it, and sendfile is implemented by
    splice internally. Finally aufs always updates atime in splice_to,
    otherwise it won't be updated by sendfile(2).
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e1baf2d37fb074b1a663be1f950780d7ba659b69
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 25 01:26:44 2010 +0900

    aufs: simply follow the changes in mainline 2.6.35
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3f629591da38fbe5d21b06cecc5bc2a81d5eeffa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 22 06:33:05 2010 +0900

    aufs: version string for 2.6.35
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ed8b8d568abd9f96fd539d25015358893eb5cbd4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 22 06:17:09 2010 +0900

    aufs: fill the prompt string for choice block
    
    I don't know why, but on some systems it doesn't work.
    
    Reported-by: Wilhelm <wilhelm.meier@fh-kl.de>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f4a7943493421f2ae86fe755cfcc57b6002a155d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 20 00:12:38 2010 +0900

    aufs: bugfix, check the file handle strictly
    
    The passed file handle may be altered unexpectedly.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0b2c5d95c90be7053ce731c994fe1c892e361b75
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 18 16:35:46 2010 +0900

    aufs: simplify au_set_ibstart()
    
    Calling au_cpup_igen() in au_set_ibstart() is unnecessary, since the
    later au_set_h_iptr() calls it too.
    Move au_set_ibstart() from iinfo.c to inode.h, and make it inlined.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b87743a1f2ba1c57ac1f1a82f48ebda6b242cef8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 17 10:27:24 2010 +0900

    aufs: version string for aufs2-34
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 46fd1517d630bff5c199ded02e459e3d2481cf55
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 12 23:45:23 2010 +0900

    aufs: stop dynamic operation for i_fop/f_op
    
    Aufs has to set file write operations even if the file is really
    readonly (for instance, squashfs). It means that the dynamic operations
    for f_op was a bad approach.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 96284fb6c49fc8789afdeac60a26979a2a851845
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 12 22:15:40 2010 +0900

    aufs: bugfix, force setting file write operations for future copyup
    
    Aufs has to set file write operations even if the file is really
    readonly (for instance, squashfs). It means that the dynamic operations
    for f_op was a bad approach. While this commit forces setting file write
    operations, next commit will remove f_op from dynamic operation.
    
    Reported-by: Jordi Pujol <jordipujolp@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 51f93aa7daea8cfe6d8b61f3a29de130af374efc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 12 15:06:20 2010 +0900

    aufs: tiny, rename au_update_ibrange()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f450ccc1b5b029a3252dcdf3c8f8d01fcf67307c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 10 07:36:37 2010 +0900

    aufs: tiny, simplify au_wr_dir()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 688a2a611b7628151408562f0ec4f1a9da6309f7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 10 07:35:08 2010 +0900

    aufs: tiny, revise CONFIG_AUFS_RDU description
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e502af47c396cd4631b1b1fffcfc60a3c8501a9b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 8 22:33:21 2010 +0900

    aufs: acknowledgements donations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cb21dc17f831f717596fdea5d69234975d641ebb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri May 7 12:32:41 2010 +0900

    aufs: tiny, fix the merge conflict
    
    aop->error_remove_page() is added in linux-2.6.32.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4097e89f396887b6642b136fce511344da2e9073
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 6 11:14:43 2010 +0900

    aufs: tiny, fix the merge conflict
    
    aop->prepare_write() and ->commit_write() were removed in linux-2.6.28.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2653cd5031e3b8b7817ed75c6ff97a9b0cc284d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 6 02:35:08 2010 +0900

    aufs: dynop supports aop with dio/nodio
    
    Add the address_space_operation into dynamic operations scheme, in order
    to switch ->direct_IO and ->get_xip_mem dynamically following the mount
    options dio/nodio.
    
    - new functions dy_aop(), dy_adx(), dy_aget() and au_dy_arefresh().
    - rename ay_dy_ifop() to au_dy_ifaop().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 96e2ba81fdf9476131b2ebeb519b80cca1cab9fc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 6 02:27:57 2010 +0900

    aufs: dio/nodio, always define aop->get_xip_mem
    
    madvise and fadvies behaves diffently according to the definition of
    aop->get_xip_mem. This aufs_get_xip_mem() will be set by dynamic
    operations (dynop) later.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4a0c27a0e3d1f68ef155c3226d6b70e59d30fbf6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 6 02:00:19 2010 +0900

    aufs: introduce the new mount options dio and nodio
    
    Direct I/O is a filesystem specific feature and the branches in aufs may
    behave differently. It means that open(O_DIRECT) succeeds but the
    succeeding write(2) may file since the upper writable branch may not
    support Direct I/O. While I am afraid this is not a big problem since
    all applications should check the failure of write(2), but applications
    may expect the error from the first open(O_DIRECT) instead of the later
    write(2).
    
    In order to make open() to return an error, aufs introduces the new
    mount options dio and nodio. By nodio, open(O_DIRECT) always fails even
    if the branch fs support Direct I/O. See the aufs manual in detail.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aa6a9cac353e11d1ee513494363e5dae7bc6aaa3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 6 01:49:24 2010 +0900

    aufs: bugfix, always REFRESH_NONDIR at adding a branch
    
    In order to refresh the dynamic operations ->i_fop and vm_ops.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7849fc8d61537ee06985fc2a0da11acdaf7d028a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 3 19:44:26 2010 +0900

    aufs: RCUnize the pseudo-link list
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b27d90f0743d6408c0482b1f61a2d4d7d0eb4d6e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 3 16:34:18 2010 +0900

    aufs: minor optimization, make rcu_head union-ed
    
    Also introduce a new function au_spl_list_del_rcu().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 611087d8b00b7bbed4628f54f2cc0b2905cfa403
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 30 23:59:59 2010 +0900

    aufs: dynop, RCUnize
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 325f70dceac211ee67cc24126678b3fa8e0c51cc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 30 22:35:27 2010 +0900

    aufs: minor optimization, lock-free search for br_dykey
    
    br_key is a simple array to hold dynop reference. And the elements are
    never be modified (add only) as long as the branch is alive.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ab66924160e65ec419a2fba26bdfec4a21e3a9e3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 30 22:31:11 2010 +0900

    aufs: tiny, new macro AuInfoSym
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a55f31827946059a409c3cb831ec774c540e95f7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 30 21:46:51 2010 +0900

    aufs: tiny, move some functions in a file
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cad4138125dde8e85269d984ccf9d76f2a96006a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 29 20:53:10 2010 +0900

    aufs: fix the merge conflicts
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 525dce0cba190e6c21b7f0ed9f1fc9b85736d6ea
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 29 16:47:27 2010 +0900

    aufs: tiny, revise Documentation/ABI
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3c6d4639f5f1ca5deca9f5e9bfbe40bb30c928aa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 29 00:26:11 2010 +0900

    aufs: bugfix, ref-count for dynop
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3951fc111b700111d0f1472a6da1f81dba3d5f70
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 19:23:13 2010 +0900

    aufs: minor optimization to maintain br_dykey
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 58eee2161c3e12a2e874f1bce69d52b1b7182ad7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 19:11:14 2010 +0900

    aufs: tiny, f_op->dir_notify is removed in linux-2.6.29
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e21f9d79e882b59242291ade0396284f1072a5be
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:27:06 2010 +0900

    aufs: dynop, support AIO, Direct I/O and XIP
    
    Refine f_op->aio_read() and aio_write().
    Implement dummy a_ops->direct_IO() which should never be called, but is
    checked its existence.
    There is no special handling for XIP except dynop.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7329380b5788cfdb0d408e4d8f6d14ed4f2f93c2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:25:48 2010 +0900

    aufs: dynop, set and refresh i_fop, f_op and vm_ops
    
    In lookup, i_fop is set.
    In copyup and refresh inode, i_fop is refreshed.
    In mmap, sets the cached or newly generated vm_ops to vma->vm_ops.
    In reopen, f_ops is refreshed.
    
    By this commit, fi_vm_ops is obsoleted and totally discarded.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0090fd1b0ceb5d468371999b2362ff243bd5973b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:24:53 2010 +0900

    aufs: dynop, lifetime is maintained by branch object
    
    The dynop objects are referenced and used by inode or file objects.
    But they are kept in a module global list. Getting the operation object
    from the branch fs and generating the operation of for aufs starts the
    life of dynop object. Its referece count is incremented by branch
    object. Only the branch object increments and decrements the
    counter. When a branch is removed from aufs, it decrements the counter.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ad5cbe45278b0fd8ba10eda66c66314a59ac630b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:23:00 2010 +0900

    aufs: dynop, build new files
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bfb50e2d25a0c1441586339fbadcaed97fda3292
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:22:29 2010 +0900

    aufs: new files for dynop, dynamically customizable fs operations
    
    In order to support direct i/o, aio, and xip, introduce a new
    approach. I named it dynop. See the
    Documentation/filesystems/aufs/design/10dynop.txt in this commit in
    detail.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 955def3d9a4c7deafd94d97d2e6b0b258a13f611
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 11:21:05 2010 +0900

    aufs: tiny, new debug print macro AuDbgSym()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5ec819d77811bda5e2f22c44e8db0187413ada5b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 10:05:39 2010 +0900

    aufs: tiny, set owner to file_operations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5ff9c93d30c7c2d8f680a9a659a689170b63fd07
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 03:17:20 2010 +0900

    aufs: tiny, rename simply
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bef5c93a2917b3d4ccb8125aa0cc247eb06fd9d4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 28 00:36:15 2010 +0900

    aufs: tiny, rename fi_h_vm_ops to fi_hvmop
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 013a9e7f01c2744e83121efe08390e4995442772
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Apr 25 01:19:19 2010 +0900

    aufs stdalone: tiny, year for copyright
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 768b2c640dfa84da3e5473f9cb467455fb1f16a9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 22 14:30:32 2010 +0900

    aufs bugfix: opaque ancestors
    
    In MFS mode (create=mfs option), aufs should check all ancestors about
    its opaque-ness.
    - introduce a new function au_wbr_nonopq(), which return the non-opaque
      branch index from all ancestors.
    - in every mode other than default, verify the chosen branch is not
      opaque by calling au_wbr_nonopq().
    
    Reported-by: Oleg <lego12239@yandex.ru>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 539a3ab0cfe5128368f22477edc45ccf33f051b3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 21 22:43:57 2010 +0900

    aufs stdalone: tiny, extract an ugly inclusion
    
    The inclusion of ../kernel/mutex.h from f_op.c is ugly.
    Extract it and create a new file mtx.h.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f18325d780ae660e57fabe9017c01eab7d142c5d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 21 00:16:25 2010 +0900

    aufs: tiny, remove unnecessary header files.
    
    Since vfsub_dentry_open() was moved to vfsub.c.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 54989da94127061348c1807b09059f0f5b978c28
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 20 23:29:53 2010 +0900

    aufs: tiny, missing header files
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 558daea48a10218ce16e94457111a7c14f22964b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 20 23:07:43 2010 +0900

    aufs stdalone: stop including ../kernel/mutex.h
    
    Follow the changes in linux-2.6.30.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d93f39effaef6760b399b7afb9aa97e7f9a63b8e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 20 22:29:15 2010 +0900

    aufs: stop including ../kernel/mutex.h
    
    Copy the necessary part, and make the header file unnecessary.
    I am afraid that the un-polite inclusion makes users confused very much.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3567528b787eb5719edbcfd64cbad6f46ef59fc0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 19 01:52:16 2010 +0900

    Revert "aufs stdalone: bugfix, include path for an ugly trick in f_op.c"
    
    This reverts commit 15a6abcb614296cf2b4bb0f614b3cc8b80d1f84a.

commit f118b15b829edd642d98de97cf0f89e3711cd3a0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 8 08:49:06 2010 +0900

    aufs: tiny, suppress checkpatch warning
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 705b4a369fba968a2feaa90c76cc1a9507655a5d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 19:17:24 2010 +0900

    aufs: simplify au_show_brs/xino()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d69c9554619c8c78019f9262699daef79b0088a6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 19:17:00 2010 +0900

    aufs: simplify au_reopen_wh()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c9b3353bf5144425d3babbcb1493004296c6c392
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 19:07:55 2010 +0900

    aufs: simplify au_update_dbrange()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8eaae14c674f431303fa2f7c3d3d51847d856e5b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 19:01:31 2010 +0900

    aufs: tiny, remove less important debug test
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 13b7b36c330522512eafec8d4d833757feb86f8e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 18:58:18 2010 +0900

    aufs: simplify au_dpri_dentry()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3fa25cac03491332eecf0e4d3687da9cbaebcbb4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 18:56:53 2010 +0900

    aufs: simplify au_do_cpup_wh()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a72aac8a157504b3a09b353e2b8327b0ea42783c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 18:50:26 2010 +0900

    aufs: simplify au_br_do_del_hdp()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c3365c25ce4e0d35fc85d28d2a19ef67b9937a40
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 18:28:53 2010 +0900

    aufs: tiny, support NULL in au_hdput()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4c245f10a034bd54cf818dac9461a4d528815ba8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 17:12:53 2010 +0900

    aufs: bugfix, revalidate in setattr
    
    In aufs_setattr(), revalidate the passed ia_file and dentry.
    Only ftruncate passes ia_file but fchmod doesn't.
    
    - make au_getattr_lock_reval() generic and rename to
      au_reval_for_attr().
    - rename au_lock_and_icpup() to au_pin_and_icpup().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ca1ce0cdcf56e04aaaca60b315fc83591795e8df
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 7 07:03:36 2010 +0900

    aufs: tiny, simplify the flag for open
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 15a6abcb614296cf2b4bb0f614b3cc8b80d1f84a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 6 23:59:37 2010 +0900

    aufs stdalone: bugfix, include path for an ugly trick in f_op.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7f702452178c2f552ef3cc513fcf128a7707a45f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 6 00:58:10 2010 +0900

    aufs: tiny, remove a doc about an obsoleted design
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 56d925bb01943b99a0218929bf4eac9b2b047336
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 6 00:40:18 2010 +0900

    aufs: tiny, update the documents
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 89989ba7f69fd69bd4766dc217e4d8d327195fd1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 5 17:57:48 2010 +0900

    aufs: minor optimization, refine icntnr cache
    
    Introduce au_icntnr_init_once() as a slab constructor.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f3945375fcc8a273fd63f8f745fac8205dcbebd4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 5 17:56:23 2010 +0900

    aufs: minor optimization, refine finfo cache
    
    Introduce au_fi_init_once() as a slab constructor.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5e58aa0a369f13bb452b76821a81dff2994a3e99
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 5 17:52:19 2010 +0900

    aufs: tiny, refine dinfo life
    
    - move most part of aufs_d_release() to a new function au_di_fin().
    - rename au_alloc_dinfo() to au_di_init().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0e5761e8b0cc4f57ed86118b7955606d277e5edd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 5 17:48:36 2010 +0900

    aufs: minor optimization, refine dinfo cache
    
    Introduce au_di_init_once() as a slab constructor.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d5ea97d53afa95e90b01b00d1a5aeefaaedee70a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 5 16:31:08 2010 +0900

    aufs: tiny, ____cacheline_aligned_in_smp attr
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ba8f448c3c5da969b4b51503a7ac0015785bac6c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Apr 3 16:37:36 2010 +0900

    ifdef __KERNEL__ for kernel.h
    
    For those who doesn't run "make headers_install" and build the module
    out of kernel source tree.
    Since linux-2.6.32, include/linux/kernel.h warns about being included
    from userspace.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8d462ecd47082b966339a0620b25ada5b9800bfc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 1 22:06:18 2010 +0900

    aufs: bugfix, error from kset_create_and_add()
    
    It can be NULL.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5502e7b6925ae1c928ccc8be272bb988575c24f1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 1 14:46:11 2010 +0900

    aufs: tiny, revise including header files
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0e40748ad3c6200339212eb2626c2ab50c189585
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 31 09:09:08 2010 +0900

    aufs: bugfix, missing unlock in an error path
    
    Forgot unlocking after an error in au_lock_and_icpup().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9df16a8b1ccc7240d734ab6b50943063d67e311a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 31 09:07:37 2010 +0900

    aufs: bugfix, support updating a removed dir
    
    In au_cpup_wh(), test the target is a dir or not.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4b1eb74536a0a56f28e3dc2652153de8fab54806
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 31 03:48:24 2010 +0900

    aufs: minor optimization, remove unnecessary au_set_h_[id]ptr()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9a8dac1e0e15535ba87b788c98af51d910133695
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 22:06:04 2010 +0900

    aufs: tiny, new conf HFSNOTIFY and HINOTIFY
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 568ec06d9f85f4fb633c5626f89c7f4ae1db5f3c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 09:09:49 2010 +0900

    aufs: tiny, fix the comment style
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 48b705d5be75fa47d68a5d9502233b925e044e09
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 08:11:39 2010 +0900

    aufs: support FSNOTIFY, export functions
    
    Since FSNOTIFY is introduced in linux-2.6.31 and INOTIFY is on the list
    Documentation/feature-removal-schedule.txt, aufs's udba=inotify will be
    unavailable in the near future.
    
    Export FSNOTIFY functions for modules.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8842b479cb1afb25045554ea19f4ce24a42cd77c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 04:32:04 2010 +0900

    aufs: support FSNOTIFY
    
    Since FSNOTIFY is introduced in linux-2.6.31 and INOTIFY is on the list
    Documentation/feature-removal-schedule.txt, aufs's udba=inotify will be
    unavailable in the near future.
    
    This commit introducces a new configuration AUFS_HFSNOTIFY which behaves
    as a toggle to AUFS_HINOTIFY.
    - introduce a new file hfsnotify.c
    - the common routine hnotify.c follows the symbols of FSNOTIFY, so
      au_hin_conv_mask() is introduced in hinotify.c. this new function
      convers simbols of INOTIFY into FSNOTIFY's.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4faae8f0a041f55fb2d00d6ad82486cf0bbeb38c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 02:44:08 2010 +0900

    aufs: bugfix, stop setting the inotify watch twice for the same lower inode
    
    When the upper dir was removed by udba, but the same named dir left. In
    this case, aufs assignes a new inode number and set the monitor again.
    For the lower dir, the old monitnor is still left.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5ba60b523ebf6135bbc08f4bf1aff853e3e36807
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 02:13:28 2010 +0900

    aufs: tiny, remove the meaningles parameter
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 067f28f06291a5f62b88b59d02959d03ed995c78
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 01:37:04 2010 +0900

    aufs: tiny, abstract hnotify.c, restore inotify specific code
    
    Since FSNOTIFY is introduced in linux-2.6.31 and INOTIFY is on the list
    Documentation/feature-removal-schedule.txt, aufs's udba=inotify will be
    unavailable in the near future.
    
    This commit restores inotify specific code to hinotify.c
    - introduce struct au_hnotify_op.
      + implement au_hin_{alloc,free,ctl,init,fin} in hinotify.c.
      + make au_hn_{alloc,free,ctl,init,fin} in hnotify.c abstract.
    - extract the core of aufs_inotify() and create a new function
      au_hnotify() in hnotify.c.
    - move the temporary declarations from inode.h to hnotify.c.
    - rename au_hnotify() to au_hn_bh().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b805c550d7841700037ac4057b462ba32bce5a42
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 00:04:44 2010 +0900

    replace AUFS_HINOTIFY by AUFS_HNOTIFY
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit db1bcb4505efab21d60286f49bb7b1003b9636a3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 26 00:01:42 2010 +0900

    aufs: tiny, tmp, abstract fs/aufs/hinotify.c, rename 'hin' prefix
    
    Since FSNOTIFY is introduced in linux-2.6.31 and INOTIFY is on the list
    Documentation/feature-removal-schedule.txt, aufs's udba=inotify will be
    unavailable in the near future.
    
    This commit makes an abstraction for UDBA notification.
    - since the prefix 'hin' means hidden inotify, replace most of them by
      'hn' which means hidden (generic) notify.
    - especially CONFIG_AUFS_HINOTIFY becomes CONFIG_AUFS_HNOTIFY.
    - rename au_postproc() to au_hnotify().
    - introduce a new abstract option udba=notify. before aufs2-31, it is
      equivalent to udba=inotify.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 88373815f71abf927952e4bf7fe4defad526e412
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 25 23:01:51 2010 +0900

    aufs: tiny, tmp, abstract fs/aufs/hinotify.c
    
    Since FSNOTIFY is introduced in linux-2.6.31 and INOTIFY is on the list
    Documentation/feature-removal-schedule.txt, aufs's udba=inotify will be
    unavailable in the near future.
    
    This commit makes an abstraction for UDBA notification.
    - extract some core functions from hinotify.c, and create a new file
      hnotify.c (it is not a typo).
    - make some symbols global temporary.
    
    Actually this commit is unnecessary for aufs2-30 and earlier
    branches. But it makes easier to manage source files and does no harm.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c153fccafc974d5125fc2d32c92e3786ef6220cd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 23 22:48:10 2010 +0900

    aufs: support DEBUG_OBJECTS_WORK
    
    Most users will not be interested, I am afraid.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8c7f6e6d847b04f0daaa752e911185abff48c784
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 23 01:34:53 2010 +0900

    aufs: support i_op->check_acl()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ce8d6f394ddfd7e6bdc423f8458bb7d7e65214d3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 22 10:07:46 2010 +0900

    aufs: tiny, note about the GIT branch name
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dee24aeb124881f631dc2352395767c3f877e4d2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Mar 20 16:56:13 2010 +0900

    aufs: refine README
    
    I don't know why, but several people misunderstand the matching aufs
    branch to linux kernel version.
    Also add a guide about the shutdown script.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 98a42f576eaa1136794544e57404c492cbf8a8fe
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 18 20:04:08 2010 +0900

    aufs: support sysfs_attr_init()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dece7f0fce421044faa9ebd4428bfb8569236653
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 18 01:58:29 2010 +0900

    aufs: tiny, replace au_getname() by __getname_gfp(GFP_NOFS)
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6e5402c2c13be314963b65722e4a0bd2fd8f0bc9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 17 16:31:12 2010 +0900

    aufs: possible bugfix, replace __getname() by au_getname()
    
    GFP_KENEL in __getname() macro may cause a deadlock. Replace it by
    GFP_NOFS by a new macro au_getname().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cded842851a8a85fe02dc13278fc2bef23c243bf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 15 20:33:54 2010 +0900

    aufs: remove au_fsync_br(), uneport fsync_super()
    
    Because it is not so useful feature as expcted.
    Additionally it may introduce a lock problem in the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 79e935088d11d915ffeb4b0ff27b6ae68609f5ec
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 15 19:54:08 2010 +0900

    aufs: remove au_fsync_br()
    
    Because it is not so useful feature as expcted.
    Additionally it may introduce a lock problem in the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dacdbec082028cc66b5331b7967be2d1e31a7c4a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 15 16:49:33 2010 +0900

    aufs: tiny, make au_sbi_ops const
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 00f3b21cd43796db130da7d3cd1a2e001cf7cae8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 11 18:46:24 2010 +0900

    aufs: tiny, comment for making au_sbi_ops const
    
    Let's wait until linux/include/kobject.h declear it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7172ca48bc5c49485b16cb6f76bfa11ee56fa3d8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 11 18:17:26 2010 +0900

    aufs: tiny, make aufs_aop const
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b3d927ed71ceab0adb37d5d353e57602cc491292
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 11 18:00:35 2010 +0900

    aufs: tiny, make aufs_dop const
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e8f8f1b8d7a8b63c7132c4be1fe1d1c351d8f8f4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 11 17:41:09 2010 +0900

    aufs: tiny, remove space
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d261e9ac810a333d296ff2335d3417c1f489e07e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 10 03:44:14 2010 +0900

    aufs: tiny, add a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 86cbeae41a2ee8f591986132055295c7d29e37d9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 10 02:12:21 2010 +0900

    aufs: support s_export_op->commit_data()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8c88f7f0ef765e75dc90d2c8c85c8add84c42b0d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 10 02:11:59 2010 +0900

    aufs: convert the parameter of break_lease()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ccedf8b6a81c8a61bd1b59c889f030f32f96c864
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 9 22:20:06 2010 +0900

    aufs: simplify au_test_subdir() and call path_is_under()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8200bcab57f364bcf4f695bb59910fe921d9bd88
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 9 04:52:38 2010 +0900

    aufs: follow the changes in upstream, mutex_set_owner()
    
    debug_mutex_set_owner() was renamed to mutex_set_owner(), and becase
    static inlined function.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 306c22a57155ff5c4055908d74ff568f53fadf92
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 9 03:26:49 2010 +0900

    aufs stdalone: begin supporting linux-2.6.24-rcN, stop exporting vfsmount_lock
    
    A new function was introduced to linux/fs/namespace.c, iterate_mounts().
    Now fs/aufs/export.c can replace vfsmount_lock by iterate_mounts().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6433436bfa89498ec037462300869b42d096748c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 9 03:23:50 2010 +0900

    aufs: begin supporting linux-2.6.24-rcN, call iterate_mounts()
    
    A new function was introduced to linux/fs/namespace.c, iterate_mounts().
    Now fs/aufs/export.c can replace vfsmount_lock by iterate_mounts().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e296ecffdd1506b33515285dd03faa6a88fd5ea8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 8 23:47:52 2010 +0900

    aufs stdalone: bugfix, export to keep the lock order of mmap_sem
    
    See detail the commit
    d986fa5 aufs: bugfix, another approach to keep the lock order of mmap_sem
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d986fa5a8557f6861fcac4106b6d75301bf5d118
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 8 23:45:56 2010 +0900

    aufs: bugfix, another approach to keep the lock order of mmap_sem
    
    The previous approach
    	4b70e6f aufs: bugfix, unlock mmap_sem temporary using BKL
    was bad and already reverted.
    This approach is ugly too, but it works.
    
    - split aufs_mmap() into two parts.
    - the first part is for copy-ing up which requires rwsem and executed by
      aufsd workqueue.
    - the second part is generic_file_mmap() and customizing vm_ops, and
      executed by the original context.
    - to protect customizing vm_ops from race between two mmaps, introduce a
      new mutex in au_finfo. lock in the first phase, and release it in the
      second. this is the most ugly part of this approach. if we could use
      fi_rwsem for this use, we would use it. but there is no 'set_owner'
      method for rwsem, but mutex has.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 10f024d547f797bf356921bdcb7e63ac25440bf6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Mar 6 18:01:08 2010 +0900

    aufs: fix the failure in manual merging
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 99a3d3208f5c445134c2015166e04e1c35be6e88
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 09:07:58 2010 +0900

    aufs: tiny, fix a manual merge failure
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9dedd0a621f2e6a51615dc38139b825e56ad4547
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 04:01:54 2010 +0900

    aufs: begin supporting hfsplus, unreliable i_size and i_blocks
    
    In hfsplus, some attributes of an unlinked file are unreliable.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c54f9a65b5faacb9951698f786d536959d729ac7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 01:04:54 2010 +0900

    aufs: tiny, modify a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ed38d0769d0806deaf24c10a4a20849b81f3c152
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 00:59:58 2010 +0900

    aufs stdalone: begin supporting hfsplus, CONFIG_AUFS_BR_HFSPLUS
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e2ceff579950b2edafc79ed08c5d23f2434ffa4e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 00:55:26 2010 +0900

    aufs: begin supporting hfsplus, call au_h_open_{pre,post}()
    
    Cheat hfsplus that this is not the final closing, in order to prevent
    the inode from locking.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bcf719f0f614945c5388b46186b4579460d47955
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 00:52:21 2010 +0900

    aufs: begin supporting hfsplus, fs/aufs/hfsplus.c and CONFIG_AUFS_BR_HFSPLUS
    
    Introduce au_h_open_{pre,post}() in fs/aufs/hfsplus.c.
    The trick is very simple, just to open the file before really neceeary open
    to tell hfsplus that this is not the final closing.
    The caller should call au_h_open_pre() after acquiring the inode mutex,
    and au_h_open_post() after releasing it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 679255bdc978fe91ce4ae971ef3d77159a647339
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 5 00:40:04 2010 +0900

    aufs: begin supporting hfsplus
    
    - a magic number definition.
    - a simple test fs-type function.
    - hfsplus doesn't limit i_nlink in link(2).
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d76a9add7771d3d6abbe6c2f76f86313289d2cff
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 2 22:13:03 2010 +0900

    aufs: simply revised last patch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 56a458f57c7b9af25a6e57ea9fedd4a7f27b519d
Author: Joonwoo Park <joonwpark81@gmail.com>
Date:   Mon Mar 1 15:00:36 2010 -0800

    aufs: ubifs doesn't maintain i_blocks.
    
    Hi,
    
    According to comment of au_test_fs_bad_iattr_size() it should return 1
    if filesystem doesn't maintain i_blocks.
    It seems to me ubifs doesn't maintain i_blocks like xfs.
    Please find attached patch and review it.
    
    Thanks,
    Joonwoo

commit 639e607997502dfe7dbe140c8de5d81ba99d4240
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 1 23:13:34 2010 +0900

    Revert "aufs: bugfix, unlock mmap_sem temporary using BKL"
    
    This reverts commit 4b70e6f04d4292d8b5ce6cd7ac7371e68eab9175.
    BKL doesn't help the multi threaded application.
    Lockdep says mmap_sem is circular here. It may be correct, but I am not
    sure whether it is false positive or not in real world.
    
    Reported-by: "James ." <jazzrz86@gmail.com>

commit e62ca9737674cf9b70a961cb8d1efed4a7cff976
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 1 17:52:50 2010 +0900

    Revert "aufs: narrow down the BKL region"
    
    This reverts commit d84deeb079e09b33c2339bc7a54cf7d15c3b8a85.
    BKL doesn't help the multi threaded application.
    Lockdep says mmap_sem is circular here. It may be correct, but I am not
    sure whether it is false positive or not in real world.
    
    Reported-by: "James ." <jazzrz86@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 33c55ebed9e3e94577fcb76528d8e80a85a7c39b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 1 16:57:30 2010 +0900

    aufs: version string for aufs2-34-rcN
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 68920bede35eec3aa1df78ca69243b87b8688d25
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 1 16:50:49 2010 +0900

    aufs: version string for aufs2-33
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1f18243787e259b9805383e7750ad6ca4f02c823
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Feb 28 17:09:00 2010 +0900

    Revert "aufs: cosmetic clean-up for export.c"
    
    This reverts commit d53ad817c894a6f2cb9df18f03d0a39de09471c4.
    Because IS_ERR() macro uses 'unlikely' internally, and I am afraid such
    nested use-case may confuse someone or something (compiler).

commit ff2d2f00d33d053501bb4272a18c70c03a187a9a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 24 14:33:31 2010 +0900

    aufs: cosmetic clean-up for rdu.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d53ad817c894a6f2cb9df18f03d0a39de09471c4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 24 14:08:58 2010 +0900

    aufs: cosmetic clean-up for export.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b3010c40ace1227389cc0cd056f81a8fab7e00d1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 24 14:00:07 2010 +0900

    aufs: cosmetic clean-up for hinotify.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit de2f58458f244208048b282a795353975ce2b9f0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 24 13:48:56 2010 +0900

    aufs: cosmetic clean-up for sysfs.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 48cde7d5fdb6b78f50ba09d8386eeca05231bdd9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Feb 24 13:44:21 2010 +0900

    aufs: cosmetic clean-up for i_op_ren.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c76d24a2a70121f47678c5d79d0361a5590c5205
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 22 23:00:08 2010 +0900

    aufs: cosmetic clean-up for i_op_del.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 82a2906ff8d0ce227d56ec5cf3f615247124aa9b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 22 12:50:14 2010 +0900

    aufs: tiny, just tabify
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 96565321bb0f67d7106c3089f7bc24f98bbdc998
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Feb 21 23:47:54 2010 +0900

    aufs: minor optimization in au_conv_oflags()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1e89b3d30002ede54006d389b31ad4515c9a981a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Feb 21 22:06:09 2010 +0900

    aufs: follow the upstream changes for IMA
    
    IMA is modified again and again.
    Here I have to restore the ugly flag conversion code just to call
    ima_file_check().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8a25f7e7f34ca81f2696e1a57f8b6de6bee2c9ad
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 11 02:19:10 2010 +0900

    aufs: cosmetic clean-up for i_op_add.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9df9bb8426d1ad249e41f9918b84a6cd1406508e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 5 23:08:57 2010 +0900

    aufs: cosmetic clean-up for i_op.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit edc355ecd8b988cbe13b7fdf7310096ed10c2f5f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 5 01:54:33 2010 +0900

    aufs: begin supporting btrfs
    
    Btrfs doesn't store the correct value to i_blocks, and doesn't check the
    maximum link count.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 88a88e0d404bb602ab9fb53e48f5133c14db5bec
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 29 16:17:11 2010 +0900

    aufs: cosmetic clean-up for dentry.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f74afa3fee3d0b3ddba161c7f31e4f90511a3612
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 29 16:17:01 2010 +0900

    aufs: cosmetic clean-up for inode.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 174b9a08f7936d7eccc3c00a46195f78f1528a67
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jan 28 15:41:34 2010 +0900

    aufs: bugfix, ioctl(2) returns ENOTTY instead of EINVAL
    
    ioctl(2) should return ENOTTY instead of EINVAL when the passed cmd is
    unknown to aufs.
    
    Reported-by: Stew Benedict <stewb@linux-foundation.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eda45a1734c097b29047eaa5415957502eeb83e3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Jan 24 01:05:06 2010 +0900

    Revert "aufs: move au_iattr for verifying from dentry.c to hinotify.c"
    
    This reverts commit 11bd18d97ac12e17a86f288326daef3da46cf7aa.
    Since au_iattr will be modified in later version such as aufs2-28.

commit 66ab4afd6a6bdcb4963ded9c6a0594f742dff311
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jan 21 00:39:20 2010 +0900

    aufs: cosmetic clean-up for file.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 72dbef2653fc2b3a3fbe5c460bd1a07680295ca4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jan 21 00:30:21 2010 +0900

    aufs: tiny, restore a debug check
    
    Restore a debug test for write-lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c988d53810bd067b1b8567576dbc9f0befaff685
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jan 20 23:50:22 2010 +0900

    aufs: cosmetic clean-up for dentry.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 11a7b015fdc6c43567c03df12c44cdd9ae08f64c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jan 20 23:33:12 2010 +0900

    aufs: cosmetic clean-up for wbr_policy.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b42bc7a3fee2ff683c599bff4a40dce267f2ce32
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jan 19 00:33:40 2010 +0900

    aufs: cosmetic clean-up for whout.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 11bd18d97ac12e17a86f288326daef3da46cf7aa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jan 19 00:20:39 2010 +0900

    aufs: move au_iattr for verifying from dentry.c to hinotify.c
    
    A minor optimization.
    When AUFS_HINOTIFY is disabled, make au_h_verify_dentry() empty.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5c172885c511f1ebb8f5e9a3154405a5d392332b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 18 23:27:54 2010 +0900

    aufs: replace the multiple singlethread workqueues by a create_workqueue()
    
    Several workqueues (AUFS_WKQ_NAME) is used for the internal async works with
    load-balancing. But it may NOT pay well since the accounting and
    load-balancing is not useful. Stop creating multiple workqueues and use
    more generic (per cpu) workqueue (also named AUFS_WKQ_NAME).
    Under some heavy I/O load, the responce MAY become worse. It is not so
    important since the response is already bad under such situation, I
    guess.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 123b75f28e981c824eb507e2b845de1cc2ffab07
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 18 23:18:31 2010 +0900

    aufs: tiny, a typo in a document
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d063f7182eba24b8a0c3cee33d7af4e215fdb272
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 16 03:22:24 2010 +0900

    aufs: tiny, move some declarations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0151d47b2856de06b2cea1a3dc2563c16f8f20e1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 16 02:08:48 2010 +0900

    aufs: tiny, add a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit af72b7cfb799232ea639aee6b70761780e542a01
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 16 02:01:19 2010 +0900

    aufs: bugfix, protect f_flags by f_lock
    
    Cf. the commits
    	29774cd aufs: support linux-2.6.30-rcN, f_flags
    	4a56751 aufs: bugfix, protect f_flags by f_lock
    	0562f63 aufs: remove handling FMODE_EXEC code
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4a56751e7b80cc2195742614fb777d73f3eb9793
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 16 01:04:37 2010 +0900

    aufs: bugfix, protect f_flags by f_lock
    
    The commit
    	29774cd 10 months ago aufs: support linux-2.6.30-rcN, f_flags
    should be applied to aufs2-30 branch, but I put it aufs2-31
    accidentally.
    This fix refines the past commit by introducing a new inlined function
    vfsub_file_flags(), and call it from the recently added function
    au_do_open_sp().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 608b4abd498c8c2f170b7fa393a854308a8447f6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 15 14:25:41 2010 +0900

    aufs: cosmetic clean-up for vfsub.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 59bd04e29d67ce1301904477bbad0e16fa811feb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 15 22:41:17 2010 +0900

    aufs stdalone: export cap_file_mmap()
    
    It is required when CONFIG_SECURITY is disabled.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 253c22c5fd7be997cb13f6694e8106807357ea1a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 15 21:39:48 2010 +0900

    aufs: follow the change made in linux-2.6.33-rc1
    
    The upstream fixed a bug in fsstack_copy_inode_size() which needs
    inode->i_lock. Aufs already supports it for a long time. Now the fix in
    upstream causes a deadlock. Let's remove the workaround in aufs.
    
    Reported-by: "Mykola S. Grechukh" <gns@altlinux.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit af6a5249161ec8a549788200b516bdabc52e1b62
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jan 14 16:25:59 2010 +0900

    aufs: cosmetic clean-up for branch.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 01c03c4dc1cf68ec6d3e3c5ee8ff0520bc972a0d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jan 13 23:44:33 2010 +0900

    aufs: cosmetic clean-up for super.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 06c9c0f1ddb9a75e61d9a233d862a3a57b202b13
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jan 12 13:02:16 2010 +0900

    aufs: bugfix, permission for special files
    
    Skip the write permission test for special files.
    
    Reported-by: <wyman@bk.ru>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 052c041d059f36c3636791bc7fa70e03ed135237
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 11 23:36:10 2010 +0900

    aufs: tiny, cosmetics for sbinfo.c
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f47b28ede91434bb01529a81c5632409a3acff0b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jan 11 23:30:40 2010 +0900

    aufs: tiny, comments for destroying AuCache_HINOTIFY
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit daffa714aaebf3f80e241faa4ee6a639836129e1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 8 17:26:58 2010 +0900

    aufs: tiny, restore the debug test in au_test_mmapped()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d84deeb079e09b33c2339bc7a54cf7d15c3b8a85
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jan 8 13:28:04 2010 +0900

    aufs: narrow down the BKL region
    
    There is a debug feature which requires mmap_sem instead of BKL.
    Theoretically BKL is enough. This patch just introduces a necessary
    complexity, I am afraid.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 086ef320ff863e7733e7ae8b9eead31a67d483d5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jan 6 17:36:41 2010 +0900

    aufs: tiny, copyright 2010
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c127eb8aeeb58e8899abffe377ae230f3d4d3c9c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jan 6 17:21:08 2010 +0900

    aufs: tiny, copyright 2010
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1fdadaf30b387da28b1f80d338e84dc43aa2f672
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jan 5 20:38:39 2010 +0900

    aufs: bugfix, an error path in au_new_inode()
    
    In the success path, call unlock_new_inode(). Otherwise call
    iget_failed() without iput().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4a46d05d5cf4b04b401a3f86a5a2bb3611a7c9aa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Jan 3 02:15:28 2010 +0900

    aufs: tiny, add a forgotten configuration
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b9efefdfb1f21164029122b7b6148033d7cadad2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Jan 3 00:44:19 2010 +0900

    aufs: tiny, make dentry_open() wrapper inlined again
    
    Cf.
    5f80ac5 aufs: tiny, new abstract function vfsub_dentry_open()
    a528172 aufs: follow the changes for IMA
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5f80ac5970a39e18c00db69889ef641aef9e4f48
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 2 16:32:31 2010 +0900

    aufs: tiny, new abstract function vfsub_dentry_open()
    
    The main purpose of this small wrapper is to minimize the confilict at
    merging GIT branches in the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3d6203a320b5d212836f05124a96a165e7490426
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 2 13:09:21 2010 +0900

    aufs: recover a merge conflict, the internal file open
    
    The commit 5482ca4cb046bf399b605174327c61688d39a21c
    	"Merge branch 'aufs2-30' into aufs2-31"
    got conflict fs/aufs/file.c.
    I might fail recovering it. There left an extra internal file open.
    Remove it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4b70e6f04d4292d8b5ce6cd7ac7371e68eab9175
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jan 2 12:21:03 2010 +0900

    aufs: bugfix, unlock mmap_sem temporary using BKL
    
    The aufs rwsem should be acquired before mm->mmap_sem. But mm->mmap_sem
    is acquired before ->mmap(). aufs_mmap() has to release it temporary
    with using BKL.
    I don't think it is a good approach, but I don't know other way.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 931db95060f0747549be405b6ec49475f71bbb0e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 25 17:22:47 2009 +0900

    aufs stdalone: follow the changes for IMA
    
    Most of IMA code where hidden by generic security routines.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a528172878764dba217b3ddb310f98b5da6b732f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 25 17:22:01 2009 +0900

    aufs: follow the changes for IMA
    
    Most of IMA code where hidden by generic security routines.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e5843a8384a3d064b57bccb1d32a3cd7327121a9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 24 23:52:24 2009 +0900

    aufs: tiny, add 'unlikely' in an error path
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9244a055d21432cca2ecf264b17c675c55c5ee88
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 24 14:38:21 2009 +0900

    aufs: support security_file_mmap()
    
    Call security_file_mmap() from aufs_mmap().
    - new helper functions au_arch_prot_conv(), au_prot_conv() and
      au_flag_conv().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 935d346824fbd7fd072b16456e5a886175e374ef
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 24 14:37:00 2009 +0900

    aufs stdalone: support security_file_mmap()
    
    Export security_file_mmap() for aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3a4bbfd5b06f65def492a1c97b57dbce517bbf95
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 23 00:49:56 2009 +0900

    aufs: follow the changes around O_TRUNC
    
    Now linux/fs/namei.c:do_filp_open() was changed and O_TRUNC is handled
    after open.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2cfbc5e89e5e41d7696e27e0246a0e6844179b7d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 22 16:04:48 2009 +0900

    aufs: bugfix, mmap for the renamed destination
    
    The last bugfix was insufficient.
    After the rename target was removed but before it is reclamed, the
    dentry still contains the lower negative dentry in it.
    Wehn it is going to be copied-up, the negative dentry has to be
    discarded.
    
    Reported-by: gettinther <gettinther@unity-linux.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b15b0ba86e3aa8ae5e12cd52b16e0b80bcb86547
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 19 16:16:22 2009 +0900

    aufs: bugfix, mmap for the renamed destination
    
    Generally the destination of rename(2) is similar to the removed one.
    It is possible issue mmap(2) to such renamed (and unlinked as its
    result) file. So aufs_rename() (and its children) has to maintain its
    internal dentry array.
    
    Reported-by: gettinther <gettinther@unity-linux.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit daee56978cfd14dcd58ccb371d765b0fa9e56e48
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 19 01:40:30 2009 +0900

    aufs: allow FIFO on RO branch
    
    Operating on FIFO on the readonly branch is not an error.
    Allow the failure of copyup.
    Also support the aufs copyup policy.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6503e7cf46f04ece2b3a194df8f63af9d28cc5d2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 17 13:59:27 2009 +0900

    aufs: tiny, suppress checkpatch warnings
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 228bc43781d58f43eb11e82300d00982f4951be9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Dec 16 23:39:57 2009 +0900

    aufs: re-write supporting FIFO
    
    A new approach to support the inode attributes of FIFO.
    The previous approach was based upon the file on the first writable
    branch. ie. the actual file I/O is handled by the common(VFS) FIFO
    operating functions on the branch fs. But this scheme cannot handle
    O_NONBLOCK flag, since the flag is set/cleared in VFS and aufs cannot
    handle it (a bug).
    The new approach is based upon the virtual file/inode in aufs. ie. the
    actual file I/O is handled by the common(VFS) FIFO operating functions
    on aufs. In order to support the inode attributes (mtime/ctime mainly),
    aufs customize ->aio_read() and ->aio_write() operations which call the
    ordinary FIFO oprations and then update the inode attributes on the
    branch fs. All other FIFO operations are not customized.
    
    By this approach, the function au_do_aio() in fs/aufs/f_op.c can be
    static. This is a revert of a part of commit
    3ed60c31e9492e6859cb567a675bf11385b987a3.
    
    Additionally the new approach checks the branch attribute. When it is
    not writable, then the aufs FIFO I/O operations don't update the inode
    attributes on the branch fs. This is a revert of a part of commit
    e7d7209be912cc77a13a9eb3ce42afe1add63574.
    
    Reported-by: Stew Benedict <stewb@linux-foundation.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4ed6a2155d84506e20b179a1fdba4e8984d47538
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 12 22:45:36 2009 +0900

    aufs: support special file, f_op->dir_notify is removed (again)
    
    Simply follow the change made in upstream.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8b87aec2f10432aabbe9780bfabf26fb83284eed
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 12 21:18:42 2009 +0900

    aufs: tiny, debug print in ioctl()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 38ac3be3793e8752540c7f3633e6bf3d676bcfd9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 12 20:57:37 2009 +0900

    aufs: tiny, move au_dbg_sp_fop()
    
    Move au_dbg_sp_fop() from debug.[ch] to f_op_sp.c.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e2b0ebb55268cbf5b0b0e904a5e6cd9dacdf221a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 12 20:48:12 2009 +0900

    aufs: tiny, copy-up FIFO in open
    
    Revise simpley.
    When it exists on a writable branch, stop copying-up.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1d176b4be9b90ed2f332d12b28341bc196b4aeb1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 16:13:45 2009 +0900

    aufs: support special file, f_op->dir_notify is removed
    
    Simply follow the change made in upstream.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3b61723f03858d01f6399a9d44ca29b467dd666c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 13:00:17 2009 +0900

    aufs: tiny, suppress checkpatch msg
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f76897eb5a662eabd70e7af8d4c9b1a2f894a25a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 11:52:38 2009 +0900

    aufs: tiny, suppress checkpatch msg
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 26f5f8f92561549eb0878eff18c370b98c174e2e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 03:25:48 2009 +0900

    aufs: tiny, simply define the empty functions
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2ae9369a2acd1995807ab8d0ebfa2c6c80543398
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 02:46:34 2009 +0900

    aufs: tiny, add a comment about direcct accessing
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 40e876d5bb227f256814706f3b6a48f16317ac9e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 11 02:11:22 2009 +0900

    aufs: support special file, new configuration for FIFO
    
    simple make it selectable.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e7d7209be912cc77a13a9eb3ce42afe1add63574
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 10 12:49:43 2009 +0900

    aufs: support special file, new file f_op_sp.c for FIFO
    
    Support the special file, currently FIFO only.
    It should not be copied up since apps will not work.
    Force copying-up at opening and never revalidate/refresh it.
    
    - check the opened special files in au_br_mod_files_ro().
    - customize all file operations for FIFO, essentially they are all
      simple redirectors.
    - make sure the necessary file operations by au_dbg_sp_fop().
    - since handling FIFO can block, release all aufs locks temporary before
      handling it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3ed60c31e9492e6859cb567a675bf11385b987a3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Dec 10 12:47:52 2009 +0900

    aufs: support special file, make some functions global for FIFO
    
    - rename do_open_nondir() to au_do_open_nondir() and make it global
    - make aufs_open_nondir() global
    - extract a part of aufs_aio_read/write() and make a new global function
      au_do_aio().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5d9f06b64ba204fe3f91375986cc24fc92d1e615
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 8 01:38:26 2009 +0900

    aufs: lock-free file close
    
    Remove all locks from the file close path.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit db54b13a9cc63a0ae5f305ac71b1f8e97e116d5c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 8 00:48:50 2009 +0900

    aufs: minor, revise maintenace for plink
    
    Replace finfo->fi_maintain_plink (a member for dir only) and
    MAINTAIN_PLINK flag in si_status by new members in au_sbinfo,
    si_plink_maint_lock and si_plink_maint.
    The si_plink_maint member points a file object.
    
    - new functions au_plink_maint_enter() and au_plink_maint_leave().
    - rename au_plink_block_maintain() to au_plink_maint_block().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fc90ae1947c3a974f23d65c9a6eb37aaa7782146
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 21:35:32 2009 +0900

    aufs: tiny, strict type check for aufs caches
    
    Define internal small functions for aufs caches with its type.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 30e74a3052fa80b9da55e274f1b461a918743cbb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 21:22:32 2009 +0900

    aufs: tiny, add SPREAD flag for aufs caches
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1fb16b3a49bad5106bb063dbc1955571ce414153
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 21:08:15 2009 +0900

    aufs: linux-2.6.33-rcN, call security_path_{chown,chmod}()
    
    In linux-2.6.33-rcN, some new path-baseed security functions are
    introduced.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fc45d19de98a6600023e9532785319662de62d2e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 18:48:16 2009 +0900

    aufs: export security_path_{chown,chmod}() for standalone version
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 26104ed68359df3213ce6bba7c0f53bb50be0882
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 17:25:16 2009 +0900

    aufs: tiny, add a comment about security_file_mmap()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9ed7d96f81c95f7402b11bcf4a9047b232556bdf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 14:18:13 2009 +0900

    aufs: version string for aufs2-33-rcN
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7e878f057d2ca55a7dacc9906d9ee108598d0c7e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 14:17:17 2009 +0900

    aufs: version string for aufs2-32
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dd3473ef40c5e8560cf7c3631fa34c78b3087343
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Dec 7 13:38:52 2009 +0900

    aufs: version string for aufs2-32
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2a119c29c8bb5f9953d2866450e5fe13ea88520f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Dec 5 11:05:06 2009 +0900

    aufs: tiny, a note about pathconf(3) wrapper
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f48d7d44f4808e066a8954ed5b5a30c7fa182938
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 4 17:31:07 2009 +0900

    aufs: bugfix, branch counter in the new au_wbr_fd()
    
    au_h_open() increments the counter for the internal finfo->fi_hfile.
    Since au_wbr_fd() doesn't set the opened file to finfo->fi_hfile,
    it has to decrement the branch counter.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4a191d650a966b2750471530f3984aa4c913eaeb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Dec 4 16:57:49 2009 +0900

    aufs: new ioctl interface for pathconf(3) wrapper library
    
    A new interface for the userspace library libau.so (in aufs2-util GIT
    tree) in order to support pathconf(3)/fpathconf(3) with _PC_LINK_MAX
    parameter.
    The library intercepts the pathconf(3) call for aufs, issues the new
    ioctl interface.
    aufs_ioctl_dir() and aufs_ioctl_nondir() calls au_wbr_fd(), and returns
    a file descriptor which refers the first writable branch in aufs.
    Then the library function calls the original fpathconf(3) for the
    branch, and gets the correct maximum number of link count.
    
    This is ugly interface since au_wbr_fd() opens a dir internally and
    returns a file descriptor.
    
    Reported-by: Stew Benedict <stewb@linux-foundation.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d2e7315b282149350d54ec47dd90bd43dce88712
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 1 19:29:32 2009 +0900

    aufs: tiny, revise a constant value
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 47b6e43f9bf15d5f16cca8252db36ee5d25909fc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Dec 1 19:29:05 2009 +0900

    aufs: bugfix, max namelen
    
    - i_op->lookup() checks AUFS_MAX_NAMELEN.
    - readdir in aufs checks AUFS_MAX_NAMELEN too. when the name is longer,
      set DT_UNKNOWN.
    
    Reported-by: Stew Benedict <stewb@linux-foundation.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fe73c5d9a0519919c0dc2e0afe480da713ce9c58
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Nov 29 13:53:24 2009 +0900

    aufs: bugfix, max namelen
    
    Test the length of a name even if udba=none.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0fe8b8a19551e82531c1ba448960641e7a3ccda3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 25 17:43:07 2009 +0900

    aufs: a new donator
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 684857bf8613ed1ef7f538699f69f30761405835
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 25 17:32:50 2009 +0900

    aufs: tiny, replace AuErr macro by pr_err
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b36da07a32789c54e6b44b72410a361cc85ef090
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 25 16:59:17 2009 +0900

    aufs: bugfix, statfs(2) max namelen
    
    Generally every filesystem supports NAME_MAX (255) as its max namelen.
    Since rmdir/rename(for the existing target dir) in aufs will rename the
    dir to the format of WH + WH + <name> + "." + <4-digts hex>, the max
    name should be decreased by (4*2 + 1 + 4).
    This fix calculates the max namelen based upon NAME_MAX. If a branch fs
    limits it shorter, then aufs rejects it.
    
    Also,
    - reject creating such long name
    - statfs(2) returns correct length
    - au_whtmp_lkup() compares the namelen with NAME_MAX
    - define AUFS_WH_TMP_LEN and AUFS_MAX_NAMELEN globaly
    
    Reported-by: Stew Benedict <stewb@linux-foundation.org>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f53d734b53fdaf11f8dbdfb275ba2bd56690f34d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 25 16:56:34 2009 +0900

    aufs: tiny, use some debug macros
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a50dcd4e324fbe44aa313d5dd1d4679cc82e5f0c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 4 23:14:57 2009 +0900

    Revert "Revert "aufs: bugfix, support 64bit s390 and alpha""
    
    This reverts commit 0dd2e67cf9f256d4e98a3cb11733c28e4a5a7cd2.

commit 7a07beb481ef61bb4f3409142b56518adf40d1a2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 4 23:13:37 2009 +0900

    Revert "aufs: vdir stop 'packing' structures"
    
    This reverts commit cbfd069e1543be1cfda537195b77171a4bb63257.

commit cbfd069e1543be1cfda537195b77171a4bb63257
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Nov 4 01:31:26 2009 +0900

    aufs: vdir stop 'packing' structures
    
    Since we have RDU now, the packing for VDIR is less important.
    By stopping packing vdir structures, it may consuming more memory. But
    it doesn't matter. If you don't like it, you should use RDU.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0dd2e67cf9f256d4e98a3cb11733c28e4a5a7cd2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 3 22:11:45 2009 +0900

    Revert "aufs: bugfix, support 64bit s390 and alpha"
    
    This reverts commit 1bf031a09d6717ae7a57e634740651e190b569e0.

commit 1bf031a09d6717ae7a57e634740651e190b569e0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Nov 3 15:09:07 2009 +0900

    aufs: bugfix, support 64bit s390 and alpha
    
    Remove an unnecessary BUILD_BUG_ON().
    
    Reported-by: Ben Hutchings <ben@decadent.org.uk>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6d4fe728dbb55065fe65dcf00b1f1a1c76cc0fba
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Oct 9 17:08:50 2009 +0900

    aufs: tiny, add a simple note about GIT branch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3cd8f40faf6e5e2b2b56e56055015fb8795ec753
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Oct 1 15:04:50 2009 +0900

    aufs: tiny, make super_operations 'const'
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1a75a1975b8544a84dd8ab47c7767cf826c8bddc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Oct 1 13:17:47 2009 +0900

    aufs: debugging address_space_operations
    
    Implement new ->error_remove_page operation for debugging.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e811fc13e96b33ef01970c0ded753f842471b6ed
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Oct 1 00:55:07 2009 +0900

    aufs: debugging address_space_operations
    
    Implement ->get_xip_mem, -> migratepage, ->launder_page, and
    ->is_partially_uptodate operations for debugging.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 01a0edcb8d67f88f3fc97807e407523ec746321f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 18:02:20 2009 +0900

    aufs: tiny, suppress stderr of diff(1)
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5c6f2dd53684b43cdb9c22b16d73380922b22d1e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 17:10:49 2009 +0900

    aufs: tiny, make diff(1) quiet
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3c66df8ef2a43c8272df263e035090bf14bb1639
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 16:43:01 2009 +0900

    aufs: tiny, add noinline_for_stack for some functions
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4edce1132b866e3435fdcf7c0708d8abf64c803e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 01:37:55 2009 +0900

    aufs: /sys/fs/aufs/config for newer config
    
    For standalone version only, a new entry /sys/fs/aufs/config.
    aufs2-29 has some new configurations.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 590a4435f579068e8a5786b188f581f5a573fc71
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 01:14:10 2009 +0900

    aufs: a new entry /sys/fs/aufs/config
    
    For standalone version only, a new entry /sys/fs/aufs/config.
    I know it violates the sysfs policy which is "one line per file."
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5e5c18196fedd97f177743e270f719d32922a0dd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Sep 29 00:57:01 2009 +0900

    aufs: tiny, re-order the configurations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ddf151e6f09b7bcb29b29ed3b2b5d4d9d25148df
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 28 14:09:12 2009 +0900

    aufs: linux-2.6.32-rcN, const-antify vm_ops in struct vm_area_struct
    
    The vm_ops struct vm_area_struct becomes 'const', so aufs has to apply
    type-cast in order to stop the compiler's warning.
    But I don't think it is a good approach.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a7edfddd47f3413493fcb24642d3a8cce67f05d6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 28 14:06:52 2009 +0900

    aufs: linux-2.6.32-rcN, RAMFS_MAGIC
    
    The definition of the magic number for ramfs is moved into linux/magic.h now,
    so fs/aufs/magic.mk doesn't need to define it by itself.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0e9cb2f160ea325d5204a1ff53294fee2e1ff224
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 28 13:51:07 2009 +0900

    aufs: tiny, follow the change in linux-2.6.31
    
    The magic number for cramfs is define in linux/magic.h now,
    so fs/aufs/fstype.h doesn't need to include cramfs_fs.h anymore.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c60af1c74c015cdb2813c601e04180729ecb9d96
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 28 13:49:17 2009 +0900

    aufs: tiny, missing replacement in last commit
    
    Forgot replacing one AuWarn macro.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 99cc47b8cbcc31fe5f8e0b6faa8308f96ee42fa9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 24 01:01:06 2009 +0900

    aufs: tiny, replace AuDpri macro by pr_fmt
    
    More common way to customize the messages.
    Define pr_fmt macro in fs/aufs/Makefile.
    All Au{Info,Warn,Err} macros are replaced by generic
    pr_{info,warning,err} macros.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ac01261c533224c558c0d4b288afe43f1f33ee6f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 24 00:31:14 2009 +0900

    aufs: tiny, convert the variadic macros into C99 style
    
    Convert "args..." into "...", and "##args" into "##__VA_ARGS__",
    as linux-2.6.28 did.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fe98ed1c205eff4bb5b7f623885f8f7827ab3e8c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Sep 23 09:06:07 2009 +0900

    aufs: lockdep_off/on() became useless
    
    Remove most of lockdep_off/on() call from aufs, due to the change made
    in mainline.
    It looks strange for me.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7b1dbf620961e476c7ebd802db92da3e35dac0dd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 21 13:05:45 2009 +0900

    aufs: tiny, failure in last commit
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aae5520ee1f62f52e2d4cfb4d253f7e90f68453e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Sep 20 01:26:17 2009 +0900

    aufs: temp ci for lockdep
    
    As previous commit, Disable most of lockdep_off/on().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2e975b2d80914f18f3df0f1525d56189a43384fa
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 18 15:00:26 2009 +0900

    aufs: possible bugfix, sysfs and aufs
    
    The previous fix with Big Kernel Lock did not work expectedly.
    Instead, sysaufs_si_show() gives up its operation when it failed to
    acquire read lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a15a48bea836d80b8aa9c19f769b26f3f81acbf4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Sep 19 15:43:32 2009 +0900

    aufs: temp ci for lockdep
    
    I don't know why but some lockdep_off/on() caused a warning about
    scheduling. Disable some of them temporary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7ec220639eefe7b8c6cfc9b799bbbef6c79e68b0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Sep 19 15:46:16 2009 +0900

    aufs: add some debug prints
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8752713c3c5b4c1a802d7979bcca9cebc9dde6df
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 17 16:30:02 2009 +0900

    aufs: bugfix, EIO from stat/fstat(2) after branch management
    
    au_refresh_hdentry() in au_getattr_lock_reval(), which is called by
    aufs_getattr(), may return 0 as a number of positive lower dentries
    especially after the failure of branch management (add, del, and
    others).
    Zero is not a problem in this case.
    Removing setting EIO in the case.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 101732b0b818bb2de45e52dcb2d2847e6f0bed15
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 17 00:36:47 2009 +0900

    aufs: bugfix, a test for the generation in debug mode
    
    aufs_getattr() tests the internal generation for the file other than
    root, but I put '!' by mistake.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ec4358102c68ff97b838950cf8d7cea5993f4438
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 17 00:28:10 2009 +0900

    Revert "aufs: bugfix, support NFSD in aufs_getattr()"
    
    This reverts commit 3573a80198d01928adb01d0112046d919a369876.
    I made a mistake twice blindly, see next commit in detail.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4f4b7dabeba9894abed83a4b10ae8bc7ba027ce6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Sep 17 00:21:07 2009 +0900

    aufs: bugfix, nested lock aufs_fault() after aufs_write()
    
    Replace the lock of rw_semaphore in aufs_fault() (and other vm
    operations) by a new mutex, fi_vm_mtx.
    When aufs_fault() is called in the context of write(2), aufs tried
    acquiring the same lock twice.
    
    Originally the rw_semaphore in aufs_fault() was introduced to protect a
    race condition of multiple page faults and mmap()s.
    Later, aufs_mmap() became to acquire a write lock
    unconditionally. Additionally the race between page fault and mmap,
    which may assign the different fi_h_vm_ops, should not happen.
    
    Finally, for the race conditions between A and B is protected such like this.
    
    A	B	lock
    ----------------------------------------
    mmap	mmap	fi_write_lock
    mmap	pf	should not happen. if it happens, it should be safe.
    pf	pf	the new mutex
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 062051b0253df5d1031a59264fcd6766ef002307
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 14 20:10:09 2009 +0900

    aufs: re-start supporting IMA (limited)
    
    The bug in IMA was fixed in linux-2.6.31, and aufs re-starts supporting
    it. But changing the branch permission RW --> RO will make IMA to
    produce some incorrect messages, since IMA doesn't support
    mark_files_ro() in emergency remount. When IMA becomes to support it,
    aufs will support IMA fully.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 15b72fe903e179a4d217d99f60aaf2560e3467ff
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 14 14:17:36 2009 +0900

    aufs: version string for aufs2-31
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 54c9205bdcd65ecf8af041467c434516b611c88e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 14 13:05:03 2009 +0900

    aufs: version string for aufs2-31
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9458cb7894cbe7e4629f8e048c00a39048e5b523
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Sep 11 11:25:07 2009 +0900

    aufs: minor optimization for s_maxbytes
    
    sb->s_maxbytes always follow the first branch's.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 78c3e38b8af06c24cb56e0a58ae485fa76f076bb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Sep 7 12:31:25 2009 +0900

    aufs: some notes about RDU
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7cf27c90e2456dda961db85054697586734efb6c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 31 15:23:58 2009 +0900

    aufs: bugfix, test cookie->bindex
    
    compare cookie->bindex with au_fbstart() and stop accessing lower than
    fi_bstart.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b8af5b600e309398c3db3a0896672c0a380d7b18
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 30 00:58:56 2009 +0900

    aufs: bugfix, set the end mark in copy_vdir()
    
    set the correct value of end mark of struct au_vdir in copy_vdir().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a545ec8f7e59c95bfc43b2fcf7b9d9c66fc43f47
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 29 03:30:43 2009 +0900

    aufs: tiny, minor optimization
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bed6c9a366ec537649f92be45eac47cab44932e6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:45:29 2009 +0900

    aufs: tiny, debugging nhash functions
    
    - simplify au_nhash_test_longer_wh().
    - insert debug macros in au_name_hash() and au_nhash_append_wh().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bb3368b15358ca7d6755662f17600eb32b8b3402
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:45:05 2009 +0900

    aufs: simplify nhash for del_wh_children()
    
    Since del_wh_children() does not append the entries, pass the nhash
    pointer simply without copying.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 55e5d8ee98d1d6b19bb1f20b5a7a29a578b5f47a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:44:26 2009 +0900

    aufs: bugfix, copy pointer array and deblk in copy_vdir()
    
    Copy the deblk memory block correctly.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cfec8790ef86fa88a7327790592250e2ccecee90
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:43:34 2009 +0900

    aufs: bugfix, stop freeing in au_nhash_do_free()
    
    When nhash->nh_num is zero, au_nhash_do_free() does not free anything.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3d276a0adaa09c0782df9b010eabbdf037101d55
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:43:06 2009 +0900

    aufs: bugfix, allocate au_nhash for the existing dir only
    
    When the rename target is not a directory or does not exist, stop
    allocating struct au_nhash.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f8c4e6b52728156b4df2060132a2fc2515dfbbd6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 28 15:42:27 2009 +0900

    aufs: bugfix, make struct au_nhash in struct test_empty_arg a pointer
    
    test_empty_cb() appends the whiteout-ed entires and they should be
    handled by the caller.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 22a805a63e2cd6081c65f69a3ec24eee3718c258
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 27 22:17:21 2009 +0900

    aufs: tiny, simplify au_whtmp_rmdir_alloc()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0ae0a859dbfa3c105966c7de87ed8754c01a8bd6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 27 22:16:27 2009 +0900

    aufs: bugfix, memory leak in an error path in aufs_rename()
    
    The au_nhash object was not freed when returning an error from
    aufs_rename().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cb6e0332023ecbc38e177ea890bdcb1556452916
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 27 22:12:32 2009 +0900

    aufs: local debug macros for rdblk=0
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6f77d5108df2ab822a0409f7cd054023c3c75f84
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Aug 27 22:12:00 2009 +0900

    aufs: tiny, a minor fix in README
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aa58d620632b94e8bdf885eb0906c848a2942959
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 26 16:55:10 2009 +0900

    aufs: bugfix, initialize loop counter in au_dir_size()
    
    The loop counters in au_dir_size() was initialized by 0 accidently.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 60792c664527544d9653a9bf518550462da8a7af
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Aug 26 09:37:34 2009 +0900

    aufs: possible bugfix, limit the minimum size of a dir
    
    Set limit the minimum size of a directory in au_dir_size().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3573a80198d01928adb01d0112046d919a369876
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Aug 24 22:32:25 2009 +0900

    aufs: bugfix, support NFSD in aufs_getattr()
    
    Since NFSD may skip the dentry revalidation, the generation may be
    oboleted in aufs_getattr(). To support such case, aufs_getattr() returns
    ESTALE.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 198d023ff00317c63c5c8e37bec9cee5d8cdd382
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 23 18:50:53 2009 +0900

    aufs: bugfix, aufs_permission() checks the lower inode
    
    aufs_permission() returns EBUSY or ESTALE when the lower inode is
    modified unexpectedly. It may happen on busy nfs branch.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bf04dc9cdbb7a2787d8f9307debe36b02b6892d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 23 03:11:12 2009 +0900

    aufs: bugfix, how to build aufs
    
    A new patch 'aufs2-base.patch' in aufs2-standalone GIT tree.
    
    Reported-by: Ed W <lists@wildgooses.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 49a069bce44fb1d2a64b4cf45bb1cfc10a778145
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 23 03:33:18 2009 +0900

    aufs: bugfix, support rdhash=0 in au_whtmp_rmdir_alloc()
    
    When the new value rdhash=0 is specified, au_whtmp_rmdir_alloc() handles
    it as a default value.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 05a0e17ffb5692622c6a43b8947b8ce66a2247f8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 23 02:56:59 2009 +0900

    aufs: RDU, initialize 'tail' and 'full' member
    
    To be safe, initialize 'tail' and 'full' member in au_rdu().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e057b11fbbe9c5b0d8072536ab03fe84c5e69c82
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Aug 23 02:55:39 2009 +0900

    aufs: bugfix, re-initialize br_wbr in an error path
    
    After au_br_mod_files_ro() failed, au_br_mod() restores the freed
    br->wbr. In this error path, au_br_mod() forgot re-initialize the
    re-allocated br->wbr.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 17e6c1461972185095a1cafc91c423852bac6fe0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 22 03:53:02 2009 +0900

    aufs: bugfix, stop checking a lock in au_test_mmapped()
    
    Dumping informations by MagicSysRq hanlder calls au_test_mmapped()
    without the file-lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6d49f202fb8b79cb868f954be159effe64a430e8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 21:10:40 2009 +0900

    aufs: tiny, type-cast in a debug-print
    
    To support both of 32/64 bit system.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7597201983d32a22fbc3daaaa2a0b7c729dbe3ae
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 18:06:44 2009 +0900

    aufs: tiny, truncate a line over 80 characters
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 565fa410b4be7201d783842b52ef2ab411ff4d19
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 17:43:05 2009 +0900

    aufs: RDU, implemnt the kernel part
    
    Implement readdir(3) in userspace.
    See the aufs manual in detail.
    - new configuration CONFIG_AUFS_RDU.
    - new file rdu.c.
    - new function au_rdu_ioctl().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ed5c2631baf48ff27eecb5d055a3f423d696185f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 16:21:51 2009 +0900

    aufs: extract the body of aufs_ioctl_dir()
    
    Since aufs_ioctl_dir() will grow in the future, extract the current
    contents of aufs_ioctl_dir() and create a new function au_plink_ioctl().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d50836b56c9fa6d79fd0e278a73db26291de91be
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 15:54:52 2009 +0900

    aufs: estimate the value of rdblk and rdhash
    
    When zero is specified to rdblk and rdhash, aufs automatically estimate
    the appropriate value for them individually based upon the size of all
    lower directories. It may not be the best value, but it is useful in
    several cases.
    - new functions au_dir_size() and au_rdhash_est().
    - allow zero for them at parsing options.
    - the rdhash value is always default one when removing whtmp dir.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 63ccc00cea68737ae1df5d88002793e6fec383f0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 9 13:40:13 2009 +0900

    aufs: tiny, Stop supporting ecryptfs
    
    Since no aufs user uses it as a branch.
    
    (Forgot to merge)
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eb0cb778795e2e00862c8bcc7197f13df2ae6c28
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 02:44:37 2009 +0900

    aufs: tip, insert a space
    
    less imporant changes to make checkpatch.pl quiet.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 126b39201ddbe8f97ff3a13f72a8602f6885b202
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 02:27:23 2009 +0900

    aufs: RDU, new ioctl for rdu
    
    - convert all the types of aufs_bindex_t to be available for ioctl.
    - new ioctl interfaces and structures for RDU.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a64dffc62c4abcd92973eaefa924b4c76f57ea3d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Aug 21 02:24:49 2009 +0900

    aufs: RDU, make au_ino() and au_wh_ino() global
    
    - move au_ino() from vdir.c to inode.c.
    - move au_wh_ino() from vdir.c to inode.h.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d6e2b11100f9876901389784654206401d59c73b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 1 17:11:00 2009 +0900

    aufs: tiny, modify a message string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4846a34b943618d42a40bfed260f9a9037d6fbae
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 1 17:01:46 2009 +0900

    aufs: minor optimization, use local var
    
    Forgot to include in last commit.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0a84ce5678eb77c3159830a920d9fa0d6bd2b32c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Aug 1 16:48:10 2009 +0900

    aufs: stop copying i_mode for symlink
    
    In general, the mode of symlink is meaningless.
    Aufs stop copying i_mode in copy-up/down.
    Actually, xfs in linux-2.6.31-rcN returns an error.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c4f1e5306e94a4148fd06a0691b6be6d067e4833
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jul 30 02:54:26 2009 +0900

    aufs: bugfix, memory leak in a recent commit
    
    commit 221cf7294ea8045ff043e26e6864708f001dc3ee
    "aufs: tiny, reduce the stack usage"
    introduced a memory leak bug.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a37e477b0f3cf6390c636c09bdb177ad51977c20
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 29 14:22:39 2009 +0900

    aufs: tiny, modify a message
    
    Since IMA in linux-2.6.31-rcN is still buggy, remove "try 2.6.31".
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1fe27fb98d4cca89a3b62541ec11a76cf5c48996
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 29 00:13:17 2009 +0900

    Revert "aufs: stop supporting IMA"
    
    This reverts commit d71b0d1d039a7373d923cd20104d6893049859c7.
    Since the bug of IMA is fixed in linux-2.6.31-rc2, aufs can support IMA.

commit d71b0d1d039a7373d923cd20104d6893049859c7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 29 00:11:53 2009 +0900

    aufs: stop supporting IMA
    
    Since the bugfix of IMA is not backported into linux-2.6.30, stop
    entirely supporting IMA.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 609da5a3567747160234144db60122612d1304e7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 29 00:03:03 2009 +0900

    aufs: linux-2.6.31-rcN, support IMA
    
    Since IMA was fixed in linux-2.6.31-rc2, support it in aufs too.
    - stop calling ima_path_check(), instead call the new function
      ima_counts_get() after internal dentry_open() call.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b3292dba861baff5d7f5e8e0f30ddca724f9cb7c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 28 23:40:26 2009 +0900

    aufs: make it an error when IMA is enabled
    
    IMA in linux-2.6.30 is broken and fixed in linux-2.6.31-rc2.
    Until the fix is backported to 2.6.30, make it an error at compile time.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ec38dd1c7fd6fb7c368be98835be5a80a890a155
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jul 25 02:03:11 2009 +0900

    aufs: bugfix, include files in debug.h
    
    Just follow the changes made by upstream.
    
    Reported-by: Alan Zheng <machinecat1666@gmail.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 049de2b1a34c3145ea82a2fe92c286393c4f6310
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 24 12:51:40 2009 +0900

    aufs: possible bugfix, verify the lower parent dentry
    
    Verify the lower parent dentry and its inode just after locking the
    dir->i_mutex.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 70900bf9ae2a73ab2e73e0177b9ee263f62677e5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 22 19:00:43 2009 +0900

    aufs: tiny, describe how to git
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c3469842d25e9b5037161aa12790412ff81be2e8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 23:20:44 2009 +0900

    aufs: tiny, replace some au_xino_write0() calls by au_xino_write()
    
    Since passing 0 as the inode number parameter to au_xino_write0() with
    known branch index is equivalent to au_xino_write().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 221cf7294ea8045ff043e26e6864708f001dc3ee
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 22:28:41 2009 +0900

    aufs: tiny, reduce the stack usage
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2a055186b1c6c15bb088683fe9b738c69f3b264b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 22:13:37 2009 +0900

    aufs: bugfix, imbalance lock/unlock in error handling of aufs_link()
    
    In an error handling, aufs_link() unlocked a lock illegally.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 209cf3641b9daa3e6dd6e61af47633a28322a326
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 21:52:43 2009 +0900

    aufs: tiny, add prefix some messages
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 735869d863fc739fa506f366632e1d229f3b4e5e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 21:51:18 2009 +0900

    aufs: possible bugfix, file might be removed before aufs_link()
    
    The file to be being linked by aufs_link may be remobed already.
    Test and make sure the file still exists.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9325f789c9f36289d068ffdb581544471ea721b0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 04:34:50 2009 +0900

    aufs: possible bugfix, give up lock free root dinfo in aufs_getattr()
    
    In aufs_getattr() tries not to lock for root dir. But it may cause
    incorrect nlink value. Lock root as well as children.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 54ff893c8319f2fe3632fa84baf62ab84b164776
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jul 20 14:08:21 2009 +0900

    aufs: possible bugfix, memory barrier at the end of MAINTAIN_PLINK
    
    Since AuSi_MAINTAIN_PLINK of au_si_status is cleared without write-lock,
    insert the memory barrier after it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9fcd4eee5d42d81d97a5710c7ac5ea2cd12db7f6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 04:35:52 2009 +0900

    aufs: debugging iinfo rw_semaphore
    
    Insert debug macros everywhere.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d348753c496697e61741606a48cfb37be8cb45f8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 10:52:50 2009 +0900

    aufs: tiny, add a lock for debugging
    
    A new debug-able rw_semaphore reports a problem in reinit_br_wh().
    But it is NOT an actual problem, since Big Aufs Lock is already held and
    locking sb->s_root after that is meaningless.
    Here I follow the message from debug macros, but it may be changed in
    the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7516d576076c07948196f77da451ef70db619131
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:54:00 2009 +0900

    aufs: debugging dinfo rw_semaphore
    
    Insert debug macros everywhere.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 823bf33bcd6cc5acdfa9fb6a23df7c5746db3951
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 16:58:11 2009 +0900

    aufs: debugging wbr_wh_rwsem rw_semaphore
    
    Insert debug macros to check br->br_wbr->wbr_wh_rwsem.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 407a102f34c437f773e6970d6b940ef6f9749e3d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 15:50:24 2009 +0900

    aufs: debugging fi_rwsem rw_semaphore
    
    Insert debug macros to check file->fi_rwsem.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c8db44567bf314c7625a7ded4abe7de947e10eb7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 15:49:06 2009 +0900

    aufs: possible bugfix, mmap race
    
    Between two mmap(2)s, there may be a race condition.
    To solve the problem, aufs_mmap() always acquire the write-lock for the
    aufs file object.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 69515f11ae589e4c4206a5a285e76f7d66353476
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 17 23:17:37 2009 +0900

    aufs: bugfix, file might be removed before aufs_getattr()
    
    The file to be being stat-ed by aufs_getattr() may be removed already.
    Test the inode.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a30065a3816d00369bc03637142a842a9e096390
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 17 03:26:21 2009 +0900

    aufs: bugfix, file might be removed before au_h_open()
    
    The file to be being opened by au_h_open() may be removed already.
    Test the existence of the inode.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit af2c122d49aacaa927a07cd945e4b310778659e3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 17 22:26:09 2009 +0900

    aufs: bugfix, calling au_mntflags() from au_xigen_inc()
    
    While au_xigen_inc() has to access some members i sbinfo object, it may
    not be locked explicitly since au_xigen_inc() is called in the context
    of freeing inode asynchronously eg, by kswapd or outside of aufs.
    It is safe to access sbinfo members here, so make au_mntflags()
    open-coded.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5f0b6ab1a7fafbce093ae81b6ce3507058c559b8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 17 20:10:49 2009 +0900

    aufs: debugging sbinfo rw_semaphore
    
    Insert debug macros everywhere.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f4b00c1a15e11b44db6623447aa9ebd031a1a824
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:52:38 2009 +0900

    aufs: tiny, optimize xino_do_trunc()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cca30b2f7fb1c945f5f1d86c1b72eeaa5f4e3459
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:50:53 2009 +0900

    aufs: testing smp memory barrier
    
    According to linux/Documentation/memory-barriers.txt, atomic_inc/dec()
    don't imply memory barriers. Following the document, replace some of
    them by atomic_inc_return/dec_return() which imply memory barriers for
    SMP.
    Originally I used to use ..._return() since I read the document first
    time. But on LKML, someone had told me that without ..._return() version
    is enough and safe, and I removed almost all "_return" at that time.
    Now I follow the document again. While "_return" may be unnecessary, it
    does no harm.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f4d7744a3bf16a4fa7da9410ed5ff9309e930e42
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:23:09 2009 +0900

    aufs: tiny, remove unnecessary line
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9391835f175b47b53ce48ba169f373a480564f22
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:22:22 2009 +0900

    aufs: tiny, reverse the internal order in di_downgrade_lock()
    
    It MAY be better to reverse the order of downgrade_lock for dinfo and
    iinfo, ie. ii_downgrade_lock() first, since iinfo is later in aufs
    locking order.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f30549fe3d7b98ddc81736a3ef4327a57b146812
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 01:13:37 2009 +0900

    aufs: bugfix, extra read_unlock in aufs_getattr()
    
    Due to 'did_lock' is set true before actual lock, one extra read_unlock
    is called at the end of the function. Move setting 'did_lock' later.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d60788e2b79568139a200c3356d52b369d8d24b3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 13:33:20 2009 +0900

    aufs: bugfix, protect RR mode in MFS mode
    
    au_wbr_create_mfsrr() implements 'create=mfsrr' mount option which tries
    Most-Free-Space policy first, and then Round-Robin policy if necessary.
    Before au_wbr_create_mfsrr() goes into RR mode, acquire mfs->mfs_lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e2571853821b5b84d132abcc34536308a0267f49
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 13:21:51 2009 +0900

    aufs: bugfix, lock in rmdir
    
    aufs_rmdir() calls au_whtmp_rmdir_alloc() first which refers
    sbinfo->si_rdhash. So aufs_rmdir() should acquire the lock before
    calling au_whtmp_rmdir_alloc().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a80842e9125867f8048ee139d2c8e453d2ae3c0f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 13:19:03 2009 +0900

    aufs: bugfix, lock in AUFS_CTL_PLINK_CLEAN
    
    Since AUFS_CTL_PLINK_CLEAN refers sbinfo->si_mntflags, acquire the lock
    before referencing.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 67f41e76f398719e698e3d65796f0531f96a86bb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 02:24:50 2009 +0900

    aufs: define macros for debugging rw_semaphore
    
    Define ...MustNoWaiters(), Must{Any,Write}Lock() macros for every struct
    au_rwsem instance.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4be45b91a0028e0e0710729f27ab46903455c698
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Jul 14 02:05:16 2009 +0900

    aufs: debugging rw_semaphore
    
    Restoring the old aufs1 feature for debugging with a new conter for write_lock.
    Because I forget everything after I don't touch sources for a few weeks.
    - rename au_rwsem_destroy() to AuRwDestroy().
    - replacing,
      + struct rw_semaphore	by struct au_rwsem.
      + init_rwsem()	by au_rw_init(), au_rw_init_wlock() or
    			   au_rw_init_wlock_nested().
      + down_read_nested()	by au_rw_read_lock().
      + up_read()		by au_rw_read_unlock().
      + downgrade_write()	by au_rw_dgrade_lock().
      + down_write_nested()	by au_rw_write_unlock().
      + up_write()		by au_rw_write_unlock().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f4e1cac387992d00ba09ddbd238d5eff20bf7f44
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 02:56:00 2009 +0900

    Revert "expand MAX_LOCKDEP_SUBCLASSES"
    
    This reverts commit c35679c7d7e369ba5aa86149df726c21fca5ab8a.
    Since this is for aufs debugging purpose only. User may not be interested.

commit e7655518276192510e7a98a36286aa5d7f816112
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 15 23:41:54 2009 +0900

    aufs: 2.6.31-rcN, tiny, include nsproxy.h
    
    Follow the chnages made by upstream.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 68e382216ede29f432e57ac75c370edb5286c399
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jul 11 10:49:42 2009 +0900

    aufs: new lockclass for copyup whiteout
    
    When a process writes a file which exists in the lower readonly branch
    and was already removed with its parent dir, aufs copies it up by
    au_sio_cpup_wh().
    Since the parent dir is already removed, the function has to copy the
    file to the internal temporary dir. At this point, new lock class is
    necessary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 38d53328059091828b3b45e4e1f88bdd8cc580cf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jul 11 00:48:48 2009 +0900

    aufs: add a donor
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3f0532e85ec40d117c6ff31e704dc1b5866b5a66
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jul 9 13:54:43 2009 +0900

    aufs: aufs_poll() strikes back
    
    FUSE implemented ->poll() in linux-2.6.29, so aufs_poll() came back with
    two new configurations AUFS_BR_FUSE and AUFS_POLL and a new file
    fs/aufs/poll.c.
    While AUFS_BR_FUSE is selectable by users, AUFS_POLL is internal and
    hidden from users.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit edd06b50ae852e073922db65f0a6e7134b338f02
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jul 8 20:10:28 2009 +0900

    aufs: remove unused aufs_poll
    
    As long as there is no filesystem which implements ->poll(),
    aufs_poll() is unnecessary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a9b16ba615b988ecc4eb3cbddd217fb1156d719a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jul 4 10:06:31 2009 +0900

    aufs: aio, warn for readv/writev
    
    Basically readv/writev depend on aio_read/aio_write.
    When fs doesn't implement aio_read/aio_write, but regular read/write,
    VFS calls read/write instead of aio_read/aio_write.
    If aufs_aio_read/aufs_aio_write is called from readv/writev context and
    the branch fs implements read/write only, aufs has to return -ENOSYS.
    Currently there is no such fs, but I'd like to produce a warning in this
    case.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 915bc858386cd9dda9dc668980f40c313956af07
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 3 21:57:23 2009 +0900

    aufs: bugfix, aio operation
    
    Reset kio->ki_filp for async operation only.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6fa3c3ac6d760a974947e6a2f32d7c080b94e7d4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jul 3 15:52:56 2009 +0900

    aufs: export for aio support
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 183e762a8596ee22a457b122bab48658749a375a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jul 2 22:52:43 2009 +0900

    aufs: testing aio
    
    Implement aio_read and aio_write.
    aio_fsync is too, but no one supports this operation, currently. So it
    is commented out now.
    I don't know why aio_splice_{read,write} does not exist. I may try
    implementing them in the future.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7283795044149d8619153b4b1e50e871f9881b95
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 24 19:57:17 2009 +0900

    aufs: export symbols unconditionally
    
    Pointed out by Michael Towers.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit faf12180300e725f83fce09b7ed4bddedb298c9c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 24 16:36:34 2009 +0900

    Revert "aufs standalone: export symbols for aufs module only"
    
    This reverts commit d0196d4cda0a4c622554b37638eee36b445103dd.
    It was a bad approach. Now export symbols unconditionally.

commit c1d75ee0b58940c827fc0894446d8d7e8f68afa1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 24 16:29:53 2009 +0900

    Revert "aufs standalone: export symbols for aufs module only"
    
    This reverts commit c5ab5f1c137639ac3ac91fbefe497372abfbf6c4.
    It was a bad approach. Now export symbols unconditionally.

commit d45185f807f68eec3749b6f021414f54a160c38e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 24 16:13:50 2009 +0900

    Revert "aufs standalone: export symbols for aufs module only"
    
    This reverts commit 060c9f56cd8c45098dbdc4cad88374f82f94a4ab.
    
    It was a bad approach. Now export symbols unconditionally.

commit 3ce8846625352ee79bc9e7fe4583452b54342353
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jun 20 15:48:26 2009 +0900

    aufs: tiny, revise how to build
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1ee8093d49fc51750eed85f28ee60142ef128dc0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jun 20 01:44:30 2009 +0900

    aufs: tiny, remove a meaningless comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bfff6754d4fea7c826df856a2687b9a996cb2572
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Jun 20 00:48:29 2009 +0900

    aufs: tiny, header files for standalone version
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d0196d4cda0a4c622554b37638eee36b445103dd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 19 23:56:18 2009 +0900

    aufs standalone: export symbols for aufs module only
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c5ab5f1c137639ac3ac91fbefe497372abfbf6c4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 19 17:47:08 2009 +0900

    aufs standalone: export symbols for aufs module only
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 060c9f56cd8c45098dbdc4cad88374f82f94a4ab
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 19 17:33:54 2009 +0900

    aufs standalone: export symbols for aufs module only
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6fb2bd0123071ceef3937a9b83b87e93148a41e5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 19 11:04:52 2009 +0900

    aufs: negative support IMA in 2.6.30
    
    Warn about IMA at modifying branch permission.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0169266e0dac23752d9d5a0531fc9232362d17d0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jun 18 14:57:13 2009 +0900

    aufs: tiny, revise supporting IMA
    
    IMA needs more work since simple tests (without aufs) reports several
    incorrect IMA messages.
    I am afraid IMA is not usable regradless aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 807583180d02c01709693e24fdb059e5ef60320b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jun 18 14:57:13 2009 +0900

    aufs: tiny, revise supporting IMA
    
    IMA needs more work since simple tests (without aufs) reports several
    incorrect IMA messages.
    I am afraid IMA is not usable regradless aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 78131c7e317993379efc34dbd1884f35cd8d98f9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Jun 18 14:53:07 2009 +0900

    aufs: 2.6.31-rcN, replace fsync_super() by sync_filesystem()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d6b6872d9b78314d604520ba527942ca752ab232
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Jun 17 12:02:43 2009 +0900

    aufs: tiny, version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9c94f4d725414b9caac0e7df1bbb5a2ae96c7cac
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jun 15 16:00:16 2009 +0900

    aufs: support linux-2.6.28
    
    Forgot to remove re-difining DEBUGFS_MAGIC.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a46eedf43f9b32aae52459d5817e87e5728c2439
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jun 15 10:04:52 2009 +0900

    aufs: support 2.6.30, page_mkwrite
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 72053c8878846198f08ce6dbd3dd2e1265ae8439
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Jun 15 09:10:42 2009 +0900

    aufs: tiny, fix an editing failure
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 88836c24039388d60347780252449e87146f15a7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Jun 12 13:32:57 2009 +0900

    aufs: tiny, revise README
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cec399a7e2642cf1501aac59043649851598c22c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri May 29 22:56:50 2009 +0900

    aufs: shwh, fix an editing failure
    
    Replace LKTRLabel() by AuLabel().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c899cd42545d2487b140bc58610555156c94f469
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 27 13:04:43 2009 +0900

    aufs: tiny, mail addr in MODULE_AUTHOR
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 989d48f247d6eb72433b5b01fd81ad2cf59ef4d5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 25 23:15:13 2009 +0900

    move the manual from here to aufs2-util.git
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 178e6e6048d8da445f98c2821b820590c563934a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 19 13:02:59 2009 +0900

    aufs: restore 'shwh' from aufs1, show whiteout mode
    
    Originally this feature was requested by an aufs user and actually
    implemented in aufs1. But it was dropped from aufs2 in order to make
    source files simpler and easier to be reviewed.
    Now the feature comes back.
    
    - describe it in the manual.
    - new configuration AUFS_SHWH.
    - new function au_test_shwh() for lookup.
    - new flag AuTestEmpty_SHWH for test_empty.
    - new members for struct au_vdir_wh.
    - extra parameters for au_nhash_append_wh().
    - new options shwh and noshwh.
    - new function au_shwh_init_wh() for au_nhash_append_wh().
    - new function au_wh_ino() and new flag AuFillVdir_SHWH for fillvdir().
    - new function au_handle_shwh() for au_do_read_vdir().
    - documentation.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 436c2d96e9f3f92c227c23e7f7638f13bb0b4ac5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun May 24 01:37:41 2009 +0900

    aufs: bugfix, regression in last week
    
    The newly added fi_vm_ops member in struct au_finfo caused a bug.
    It should be freed in case of the file is NOT a dir.
    
    Reported-by: Joerg <realKano@directbox.com>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 081a7bb8a97076c3bb184f29bb0ff6bef5673463
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 20 11:50:32 2009 +0900

    aufs: declare earlier
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ea041877aa1f155e86d8d8ff2ab73149ab4d331d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 18 12:06:55 2009 +0900

    aufs: describe how to build
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4855da921a425534e58e97a4be6b65b6f2585faf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 18 11:27:36 2009 +0900

    aufs: remove S_DEAD test
    
    By last commit "ehnahce link", testing S_DEAD flag becomes unnecessary.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 105fc7be86a143c9aa69d6c91661510faec305f8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 18 08:01:45 2009 +0900

    aufs: enhance link(2)
    
    I noticed vfs_link() doesn't hold dir->i_mutex (after lookup), and
    unlink/rename may race with link, when I was reading ubifs.
    <http://marc.info/?l=linux-fsdevel&m=124223234505544&w=2>
    The same race can happen in aufs too. While fixing vfs_link() may be one
    option, here I fix aufs.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit badfd949ba17cde83c3d9ba3174dc414b330fdf8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri May 15 11:01:47 2009 +0900

    aufs: support linux-2.6.30-rcN
    
    - the argument of ->page_mkwrite() chages.
    - support fmode_t.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 925a836876513343c5a234c1f702bf7f3f72e6ff
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri May 15 00:20:12 2009 +0900

    aufs: generic support for vm operations
    
    Aufs has to implement vm_ops->page_mkwrite in order to support
    ubifs. But it is a hazard when other branch fs does not implement
    ->page_mkwrite.
    Finally, aufs sets ->page_mkwrite dynamically, and ->close for fuse.
    
    - new member fi_vm_ops in struct au_finfo.
    - aufs_page_mkwrite() calls lower ->page_mkwrite unconditionally.
    - new function aufs_vm_close().
    - new function au_custom_vm_ops() allocates fi_vm_ops and sets
      ->page_mkwrite and ->close.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e487d9bfabcd9aa271af841f7b169b59972283e4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 14 12:36:02 2009 +0900

    aufs: begin supporting ubifs
    
    Addition to last commit by Joonwoo Park which implements
    vm_operations_struct.page_mkwrite(), support ubsifs too
    in au_test_fs_bad_mapping().
    Also in au_test_fs_no_limit_nlink() and au_test_fs_notime().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 5a2bd9c671a941cf34dbc434ab657fbfafdc209c
Author: Joonwoo Park <joonwpark81@gmail.com>
Date:   Tue May 12 15:19:26 2009 -0700

    Fwd: aufs2 with ubifs mmap problem
    
    I've encounter a aufs related problem when I use mmap on ubifs as
    read-write branch.
    FYI, I cannot see this problem on ubifs only partition, aufs with
    tmpfs branch and aufs with ext3 branch.
    
    The problem that I encountered was ubifs set_page_dirty() assertion
    failure when mmap-ing to aufs filesystem which has branch as ubifs
    filesystem.
    I had a quick aufs hacking and I've inclined that aufs should have
    handled page_mkwrite of vm_operation. =A0The current version of aufs2 is
    registering only aufs_fault.
    Please find attached patch file aufs-mmap-fault.patch and correct me
    if I'm wrong.
    
    Attached patch looked like solve this problem but no luck.
    This patch reduced lots of ubifs assertion failures but I'm still
    seeing assertion failure after large size of mmap writing (actually
    exiting the process after mmap writing).
    It seems that I still have a problem when do_munmap from sys_exit is called=
    .
    
    Do you have any idea for this issue?
    
    Thanks,
    Joonwoo
    
    Signed-off-by: Joonwoo Park <joonwpark81@gmail.com>

commit 0562f63f7f98a0d1db23e1f5821b253aef481d48
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 11 10:07:38 2009 +0900

    aufs: remove handling FMODE_EXEC code
    
    By the commit 6e8341a11eb21826b7192d0bb88cb5b44900a9af
    "Switch open_exec() and sys_uselib() to do_open_filp()",
    FMODE_EXEC flag is passed to struct file.
    Remove a long-lived dirty trick in aufs.
    
    - remove au_store_oflag().
    - test ->f_flags instead of f_mode.
    - stop storing FMODE_EXEC in file->private_data and re-setting it.
    - remove 'exec_flag' parameter from vfsub_dentry_open().h and
      vfsub_ima_mask().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d2c3e73ea8b469cd5b3af12da89ab42cc8639af5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 12 12:00:43 2009 +0900

    aufs: tiny, missing header file
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 83c15942cd143f6206460500f24f95a7fa3ff1f9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 11 16:06:07 2009 +0900

    aufs: tiny, just a comment
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7266a9757ae38d515578075ac3e9626c2fa0931b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 11 23:43:44 2009 +0900

    aufs: simplify header file inclusion
    
    Instead of including header files, declare some structure names.
    
    - move au_igrab() from inode.h to inode.c.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c6ad1c9b6635c23c017ca37c6aec15ce3276fbf3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 9 13:40:13 2009 +0900

    aufs: tiny, Stop supporting ecryptfs
    
    Since no aufs user uses it as a branch.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ac7cbfc0922f812d515358ee9f2e4e72b32b5de0
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 9 13:37:47 2009 +0900

    Revert "fix ecryptfs original bug to test aufs2"
    
    This reverts commit abe17d4a4b7691742ae7c7f1ddcbd2dd1927e6fd.
    Stop supporting ecryptfs sinoce no aufs user uses it as a branch.

commit 07ddf542918274a01fd6f8d7bd70d850d3a538d6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat May 9 12:55:52 2009 +0900

    aufs: update a donor
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6840b8336502c70b193ce75e768266d9496251c8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu May 7 15:39:50 2009 +0900

    aufs: tiny, revert full copyright sentences
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit da917963ac747bae7d3054cc6bf925512f02c9d8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 6 16:54:20 2009 +0900

    aufs: vdir, minor optimization
    
    Replace au_kzrealloc() by krealloc().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 154d61f57ea91f49cfa2fb3b524ea9f0d609225e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 6 14:28:44 2009 +0900

    aufs: update donors
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0d1254fd68a7f0fc626ca33eba42ae7d5c661682
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed May 6 02:24:22 2009 +0900

    aufs: optimize vdir
    
    - new options rdblk=def and rdhash=def which are re-initialize the
      values.
    - print the distribution of name hashing (disabled by default).
    - simplify name hashing, becomes effective.
    - new small function au_nhash_test_name().
    - move test_known() and append_de() earlier in the file.
    - use kmemdup() instead of kmalloc() and memcpy().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b936102f95e73c2b31fdf88a58bd787d388fda55
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 5 13:31:48 2009 +0900

    aufs: make au_nhash single layerd
    
    VDIR may become generic in the future (in the experimental 'rum'
    branch). Let's prepare for it slowly. I don't care if it won't be
    generic, because this work optimizes VDIR.
    This is a porting from a part of 'rum' branch.
    
    - convert the au_nhash pointer in struct test_empty_arg, struct
      au_ren_args, struct fillvdir_arg, struct del_wh_children_args and
      struct au_whtmp_rmdir to au_nhash itself.
    - pass au_nhash* and num_hash to au_nhash_alloc().
    - delete the layer parameter from au_nhash_wh_free().
    - re-initialize nh_num in whlist, to protect double free.
    - convert the parameter for au_nhash_wh_do_free() from struct au_nhash
      to struct hlist_head.
    - new internal generic function au_nhash_do_free().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 646c8b86508c346c94e7df8f9de03cfec1f5ebd7
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue May 5 13:11:56 2009 +0900

    aufs: tiny: rename namelen to nlen
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9125a96a77c2f3924563577d0b17265959be414a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon May 4 15:24:32 2009 +0900

    aufs: tiny: simplified vdir
    
    - rename all 'namelen' to 'nlen'.
    - use ALIGN() macro in calc_size().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ac34732e859bcffd8363d21a1999f9941d8c68f8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Apr 27 15:11:17 2009 +0900

    aufs: remove temporary workaround for a bug in NFSD readdir
    
    In linux-2.6.30-rc3 the bug is fixed, and remove temporary workaround in
    aufs. A check for i_mutex is introcued in lookup_one_len() too. But it
    is by WARN_ON_ONCE(), so I keep IMustLock() in vfsub_lookup_one_len().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 642c5b8fbffc9adcd306e9e44bc09512d5329794
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 24 14:34:17 2009 +0900

    aufs: add a donor
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fdc8c21f10c3547a60d8461900c3e2a62142fd87
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 16 22:48:21 2009 +0900

    aufs: support linux-2.6.30-rcN, IMA
    
    Call ima_path_check() instead of ima_shm_file().
    Call ima_file_mmap() before mmap.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d4b149a1e797b4879a2b674021df8a812d65d3a1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 16 22:47:29 2009 +0900

    aufs: support linux-2.6.30-rcN, IMA
    
    Call ima_path_check() instead of ima_shm_file().
    Call ima_file_mmap() before mmap.
    - add 'exec_flag' to vfsub_dentry_open().
    - a new function vfsub_ima_mask() for ima_path_check().
    - a new function au_prot_conv() for IMA.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 951cf70af64f2141c5234afc99573697cba69684
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 15 10:26:29 2009 +0900

    aufs: bugfix: check f_op and ->mmap
    
    We need to check it since f_op MAY be null.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ec64f350678dffe1ac0f2274ff0743f612afba09
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 15 09:56:49 2009 +0900

    Revert "[aufs] f_op is always set"
    
    This reverts commit 4d724469cd7b65dae83b35b26642a9902abf9af2.
    Since f_op on some branch fs may not be always set.
    
    Reported-by: Patrick Lane <patrick@hq.newdream.net>

commit b0960d27684305c783aaf82901e6269af050eeda
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 15 09:56:25 2009 +0900

    aufs: tiny: depends on AUFS_EXPORT
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f5207890d02d204df08818ec3fcdece20e24d6d2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 15 00:27:52 2009 +0900

    aufs: tiny: test i_nlink for tmpfs
    
    tmpfs doesn't check i_nlink in link(2), and aufs sets a limit for it.
    vfsub_link() already support ramfs which doesn't check i_nlink
    either. let's make it general to support tmpfs.
    
    - new function au_test_fs_no_limit_nlink().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6dc4c8e2550dd25ac80ddc5c6271d24eb61e001b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Apr 11 12:00:46 2009 +0900

    aufs: tiny: documents
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aa24149e869a19d7613ac3c6b4b0aefd5a2894ca
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 10 12:14:04 2009 +0900

    aufs: tiny: version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0d0e16ff2b16472eba27c2c01985f30bf2b2a52e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Apr 10 00:14:01 2009 +0900

    aufs: tiny: version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c45ac8bde47e110480c041d514ae8e1433edc9cc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 19:15:14 2009 +0900

    aufs: support linux-2.6.30, IMA
    
    Supports "Integrity Measurement Architecture(IMA)" in 2.6.30.
    Since IMA checks the number of file open, aufs needs to adjust it as
    shmfs does.
    But IMA seems to need more work since NFSD doesn't support it yet.
    
    - export ima_shm_check() for modules.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 08d0e1b3e380ea7446066d53a55324238de6910d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 18:25:53 2009 +0900

    aufs: support linux-2.6.30, temporary workaround for relatime option
    
    The mount option 'relatime' becomes set by default.
    Although it is VFS option, mount(8) may pass it to aufs (or all
    filesystems) since old version of mount(8) may not know about
    relatime. When common VFS option is passed to aufs, aufs does NOT handle
    it and will return an error as "unknown option".
    It may be unconvenient for users. So here is a temporary workaround to
    ignore relatime silently.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1ac7aa726828469fe4972210a834992cbb3cafd4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 18:17:21 2009 +0900

    aufs: support linux-2.6.30, xino for nilfs
    
    The aufs xino files are not suitable for the new filesystem nilfs.
    Forbid it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a9b9a9ffe592f595fc499dcf5d79be4e06fc0cee
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 18:13:59 2009 +0900

    aufs: support linux-2.6.30, IMA
    
    Supports "Integrity Measurement Architecture(IMA)" in 2.6.30.
    Since IMA checks the number of file open, aufs needs to adjust it as
    shmfs does.
    But IMA seems to need more work since NFSD doesn't support it yet.
    
    - new wrapper function vfsub_dentry_open() for dentry_open() which calls
      ima_shm_check().
    - vfsub_filp_open() calls ima_shm_check() too.
    - minor re-arrangement for vfsub.h.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4cb0182305175262cef327177b71c41c1d794172
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 02:15:18 2009 +0900

    aufs: more checks for new options
    
    Reject negative or too large value for rdblk and rdhash.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2007abcd083f4473c5d83f385c24bdea3e9b9bc3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 9 01:49:48 2009 +0900

    aufs: tiny changes in readme
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1566b5a1c4a99b2a0343c4ac54a14d321dea1195
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 8 14:33:14 2009 +0900

    aufs: stop copying-up in mmap(2) with MAP_PRIVATE
    
    aufs_mmap() used to copyup the file when FMODE_WRITE is specified.
    Now check the VM_SHARED flag too and stop copying-up when MAP_PRIVATE is
    specified.
    This patch prevents copyup from mmap in modprobe(8) which opens file
    with O_RDONLY and then mmap with PROTO_WRITE and MAP_PRIVATE.
    
    mmap support in aufs has already minor limitation due to its
    implementation, and this patch simply follows the limitation.
    
    Reported-by: Matthew Harrell <mharrell@bittwiddlers.com>
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 027d6e4ecf193bba92f11786c8a417f59bb7ed48
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 7 07:32:39 2009 +0900

    aufs: variable vdir, documentation
    
    Make the hash list in struct au_nhash and the dir-entry block in memory
    'au_vdir_deblk_t' having variable size.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8ceed9f520cecea08a8c1038153d4b4baf497948
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 7 07:32:38 2009 +0900

    aufs: variable vdir, main part
    
    Make the hash list in struct au_nhash and the dir-entry block in memory
    'au_vdir_deblk_t' having variable size.
    Make 'whlist' in struct au_whtmp_rmdir_args variable size too.
    In rename(2) when the target dir already exists, replace the whlist in
    struct au_whtmp_rmdir by an external whlist.
    
    - new member nh_num in struct au_nhash.
    - convert the fixed-sized array 'heads' in struct au_nhash to a
      dynamic-sized one.
    - new member vd_deblk_sz in struct au_vdir.
    - convert the fixed-sized array au_vdir_deblk_t to a dynamic-sized one.
    - replace functions au_nhash_new/del/init/move/fin() by new functions
      au_nhash_alloc/wh_free() which supports mutiple layers.
    - rename struct au_whtmp_rmdir_args to struct au_whtmp_rmdir.
    - convert whlist in struct au_whtmp_rmdir and struct au_ren_args to a
      pointer.
    - remove the parameter whlist from au_whtmp_kick_rmdir().
    - new functions au_wtmp_rmdir_alloc/free() for a new structure
      au_whtmp_rmdir with dynamic-layered au_nhash, replacing
      au_whtmp_rmdir_free_args().
    - new internal functions au_nhash_de_do_free() and au_nhash_de_free(),
      replacing free_dehlist().
    - au_name_hash() supports the variable hash size and returns a pointer
      to struct hlist_head.
    - pass the parameter super_block to alloc_vdir() and au_nhash_alloc().
    - new internal flag WHABLE to skip storing whiteouts into whlist when
      the branch is bottom or its attribute is not specified as whiteout-able.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a180e4b4b5ecaed3d74be525c797362397d1ebd6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Apr 7 07:32:37 2009 +0900

    aufs: variable vdir, new options
    
    Make the hash list in struct au_nhash and the dir-entry block in memory
    'au_vdir_deblk_t' having variable size.
    
    - new mount options rdblk and rdhash which spcifies the size of one
      block and the size of hash table respectively.
    - rdblk has to be larger than NAME_MAX and kmalloc-able size.
    - rdhash will be multiplied by sizeof(struct hlist_head) and the result
      has to be kmalloc-able size.
    - new members for them in struct au_sbinfo and struct au_opt.
    - their default values are AUFS_RDBLK_DEF and AUFS_RDHASH_DEF
      respectively.
    - show thier values other than defaults in /proc/mounts.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7517ad361f50e4955e92a7c24856d13598d50a80
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Apr 4 01:46:25 2009 +0900

    aufs: export security_path functions
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b55a0733f04437216fcc09f32b1496d485f99a83
Author: Ryousei Takano <ryousei@psptest00.localdomain>
Date:   Fri Apr 3 17:44:19 2009 +0900

    Fix typos in aufs man page
    
    This patch fixes typos in aufs man page.
    
    Signed-off-by: Ryousei Takano <takano-ryousei@aist.go.jp>

commit 2baf9179aefd03e28105bd7997233788847991da
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 2 23:51:12 2009 +0900

    aufs: tiny: export vfsmount_lock for CONFIG_AUFS_EXPORT only
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0121223ea7fbe7a7c96b9f7d372e498c6bca71c2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 2 21:36:57 2009 +0900

    aufs: tiny: debugfs cannot be an aufs branch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 234788bba81259687324d9df9cf0f8f9500c5c44
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Apr 2 17:43:52 2009 +0900

    aufs: tiny: remove the macro Au_LOFF_MAX
    
    Replace the macro Au_LOFF_MAX by a constant au_loff_max.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 755689e786e51d3e69dd9a55401e5bf0fe9f1b0a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 1 00:25:40 2009 +0900

    aufs: ramfs branch
    
    Aufs2 stopped supproting initramfs (ramfs/rootfs) branch since they are
    unusable after switch_root. But user may not execute switch_root.
    To support such case, aufs2 supports ramfs explicitly.
    In order to prevent user from wrong usage, new configuration is added.
    
    - documentations.
    - new configuration AUFS_BR_RAMFS.
    - allow ramfs in au_test_fs_unsuppoted() and au_test_fs_bad_xino().
    - truncate xino files on ramfs automatically as tmpfs.
    - ramfs is very simple and does not check the link count in
      link(2). Since it is critical for aufs whiteout, set the limit
      individually.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a83852b2365880d07dcd128223d14fc74b1f40bd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Apr 1 12:36:51 2009 +0900

    aufs: export devcgroup_inode_permission for modules
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 19c777af2bef18f1cb9b134fed5337e869230622
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 31 01:13:20 2009 +0900

    aufs: tiny: constantify struct file_operations
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ecb8ebcd9d12bb16bd963eb927583ec10dbbf37c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 31 00:38:05 2009 +0900

    aufs: tiny: simplify 'if' condition
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 180301f716ab38eb60722fa68a830e70c1819db8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 31 00:37:20 2009 +0900

    aufs: tiny: f_op is always set
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit be7c39b29b850489f3eb2ea2d977ec51d13126a4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 30 20:57:30 2009 +0900

    aufs: tiny: workaround to convert fmode_t
    
    New functions vfsub_fmode_to_uint() and vfsub_uint_to_fmode() converts
    uint <--> fmode_t.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d6543b424cf42688b11f090d9b8f3ab40d8bbd27
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 30 15:25:15 2009 +0900

    aufs: tiny: remove fake-cast by union
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4542b753320f3eeb4a379d3df5a676bc693ed39a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 30 15:04:51 2009 +0900

    aufs: tiny: suppress a warning in LP64
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 29774cd800a687ae1a53e290f42d750b4390d34d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 30 13:53:33 2009 +0900

    aufs: support linux-2.6.30-rcN, f_flags
    
    Protect file->f_flags by a new spinlock file->f_f_lock.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 200bdb23a671cff6da1a989c462ca75821c72ee6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 30 13:39:23 2009 +0900

    aufs: bugfix: stop modifying f_flags at changing branch permission
    
    When a user changes the branch permission from rw to ro,
    au_br_mod_files_ro() used to drop the flags for writing from f_flags. It
    might not be good and this patch stops it. But dropping FMODE_WRITE is
    left of course.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0288e1ef929bb5211347a96324ae1945054d37b1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 29 01:07:45 2009 +0900

    aufs: tiny: modify a message string
    
    There still left a problem of lookup without locking the parent dir in
    2.6.29, which is the commit 14f7dd632011bb89c035722edd6ea0d90ca6b078
    "[PATCH] Copy XFS readdir hack into nfsd code".
    See the thread begin with
    <http://marc.info/?l=linux-kernel&m=123747448209411&w=2>
    in detail.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c32bf1947381120410d25a75f04c531dbf3cdb7f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 27 02:19:13 2009 +0900

    aufs: support fmode_t in linux-2.6.28
    
    Faking cast operation by union in au_store_oflag().
    While it is not beautiful, I don't like cast more.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a46e40c4b90ac7545c931b377bb7f62eb083e00c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 26 23:41:53 2009 +0900

    aufs: fix typo in CONFIG_AUFS_EXPORT
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 917d4775e384756b2223d7c78c3ae153cc2364eb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 23:36:09 2009 +0900

    aufs: bugfix: typo in a declaration
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d11b13a4369b3934b9f2d3089602b321a02c55f8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 23:27:11 2009 +0900

    aufs: support linux-2.6.29
    
    Append the struct cred* paramter to dentry_open().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e3d592b19c2aac6c95d580545987bfd870eaacdf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 22:53:40 2009 +0900

    aufs: fix missing delcaration
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 38d7dba73c4b1d5e6be64d4b719bbca0c362b2bd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 22:42:30 2009 +0900

    aufs: fix the version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a823a6fc58bff0e1ce4ff8affd756b32f94e5d35
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 22:15:32 2009 +0900

    aufs: bugfix: missing lock for sbinfo
    
    It is necessary to lock sbinfo to open <debugfs>/aufs/{xib,xigen} in
    order to prevent race condition between umount.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eaad6a929e8dbf4b64a5f856512cd1256351e226
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 02:48:39 2009 +0900

    aufs: bugfix: call mntget() before unlock vfsmount_lock
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 31ffd4af435be3f51288864071176e380428151f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 02:32:56 2009 +0900

    aufs: tiny: fix version srting
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 56e3f74919b63c2e4f97465daf09ca29e185de66
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 01:47:02 2009 +0900

    aufs: convert some aufs entries from sysfs to debugfs, documentation
    
    Follow the comments from Greg KH on LKML.
    Move 'xib', 'xigen' and 'xi0 ... xiN' entries from sysaufs to debugfs.
    They show how many disk blocks are consumed.
    - move the description of some aufs entries from sysfs-aufs to debugfs-aufs.
    - fix the manual.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1ed26a83899ad5fead8b9c7f6a4f99fe01093493
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 01:47:02 2009 +0900

    aufs: convert some aufs entries from sysfs to debugfs
    
    Follow the comments from Greg KH on LKML.
    Move 'xib', 'xigen' and 'xi0 ... xiN' entries from sysaufs to debugfs.
    They show how many disk blocks are consumed.
    - compile dbgaufs.c.
    - remove 'xigen', 'xib' and 'xi0 ... xiN' entries from sysfs.
    - new members of struct au_sbinfo for dentries under debugfs.
    - replace members in struct au_xino_file by a dentry of debugfs.
    - intialization and finalization for aufs entries under debugfs.
    - show the xino file path in /proc/mounts only when CONFIG_SYSFS is disabled.
    - minor enhancement, make sure that sysaufs_si_mask is not zero.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 598e7614a3d89e9e309e929f7d6fef9710651a76
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 25 01:47:01 2009 +0900

    aufs: convert some aufs entries from sysfs to debugfs, new files
    
    Follow the comments from Greg KH on LKML.
    Move 'xib', 'xigen' and 'xi0 ... xiN' entries from sysaufs to debugfs.
    They show how many disk blocks are consumed.
    - new aufs entries under debugfs.
    - new files dbgaufs.c and dbgaufs.h.
    - it trusts that CONFIG_DEBUG_FS "depends on SYSFS".
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 3dc6375353c96e2b0bde23b9f544fa9944c83950
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 23 17:24:12 2009 +0900

    aufs: forbid the combination of AUFS=y + EXPORTFS=m
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4d724469cd7b65dae83b35b26642a9902abf9af2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Mar 21 15:06:39 2009 +0900

    [aufs] f_op is always set
    
    Remove testing f_op since it is always set.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 946ae476cb72850e6258cb21558acafca067095a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Mar 21 12:20:47 2009 +0900

    [aufs] temporary workaround for a bug in NFSD readdir
    
    There is a regression in the commit
    14f7dd632011bb89c035722edd6ea0d90ca6b078
    "[PATCH] Copy XFS readdir hack into nfsd code".
    While will be fixed soon.
    cf. http://marc.info/?l=linux-kernel&m=123747448209411&w=2
    
    This patch produces a warning for the bug instead of BUG_ON() as a
    temporay workaround.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7bbd22bc9b202baaf0c916cabaff58ab83edd037
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Mar 21 12:15:06 2009 +0900

    [aufs] bugfix: test inode type in au_store_oflag()
    
    Add a parameter inode to au_store_oflag(), and make sure that inode is a
    regular file.
    This patch will fix a bug reported by David and James.
    Message-ID: <56f71f8d0903170101n7105cfc6odabb6816237c1a79@mail.gmail.com>
    Message-ID: <565e902e0903171707w7ebb2f34wb3997b87026b962b@mail.gmail.com>
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8ecb364ba070ede64a61ea7809804701e669ea02
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 19 13:31:09 2009 +0900

    split 'xino' entry under sysfs
    
    Follow the comments from Greg KH on LKML.
    - make all entries "one value per file".
    - split 'xino' into 'xi_path', 'xib' and 'xi0'...'xiN'.
    - new members in struct au_xino_file for xi[0-9]* entry.
    - remove sysaufs_si_attr_xino.
    - sysaufs_si_xino() shows only a size info of one xino file.
    - new variables sysaufs_si_attr_xi_path and sysaufs_si_attr_xib.
    - new functions sysaufs_si_xi_path() and sysaufs_si_xib().
    - rename sysaufs_sbi_xi() to sysaufs_xi_attr().
    - sysaufs_si_show() supports xiN.
    - sysaufs_br_init() initializes br->br_xino.xi_attr too.
    - sysaufs_brs_del() and sysaufs_brs_add() always handle
      br->br_xino.xi_attr.
    - new static function sysaufs_brs_do_add() to generate brN and xiN
      names.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit de60b9f607e0cd0826177f39e5681290d80d7b4e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 19 13:07:43 2009 +0900

    replace /sys/fs/aufs/debug by /sys/module/aufs/parmaters/debug
    
    Follow the comments from Greg KH on LKML.
    - remove the global variable 'au_cond'.
    - new global variable 'aufs_debug' as a module parameter.
    - describe the new module parameter 'debug' in the manual.
    - remove the global variable 'sysaufs_ktype', debug_show(),
      debug_store(), au_debug_attr, au_attr_show(), au_attr_store(), and
      sysaufs_ktype_body.
    - make au_attr empty.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f230bd0527d75e20d0b0422ee8bca4df6e3474e2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 22:43:07 2009 +0900

    tiny: fix the conflict in last commit
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d2a87add7049a1bdad6712f4732e8240c032eafe
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 17:35:31 2009 +0900

    minor optimization: new variable h_inode in au_h_verify_dentry()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 211602fa4957fbbde4903ecc8be2185367741cec
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 16:50:25 2009 +0900

    support exporting via NFS in 2.6.28, replace path_lookup() by kern_path()
    
    - remove noinline_for_stack from decode_by_path().
    - replace struct nameidata by struct path.
    - replace path_lookup() by kern_path().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9327c246e4a1c7dcf91a368ec2bca6724eab1377
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 16:21:47 2009 +0900

    stdalone: AUFS_EXPORT supports EXPORTFS = m
    
    EXPORTFS can be a module too in this standalone version.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fb54ec71da3d119d06b83ef5b9d56816028a9469
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 16:02:00 2009 +0900

    AUFS_EXPORT depends on EXPORTFS = y
    
    As long as CONFIG_AUFS is not tristate, EXPORTFS has to be y too.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e0f60d27235e27b29270293bae0e25d9528f92d2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:38 2009 +0900

    support exporting via NFS, export vfsmount_lock
    
    - export vfsmount_lock for external modules.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 570053093211ba114da17140830c574cca2f9b2e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 9 17:43:15 2009 +0900

    restore priv_def.mk
    
    In the standalone version, keep using priv_def.mk.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c35679c7d7e369ba5aa86149df726c21fca5ab8a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 23:02:36 2009 +0900

    expand MAX_LOCKDEP_SUBCLASSES
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1cfb6c2c9e3e38a175891efd1e3afcf37234df38
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 23:01:59 2009 +0900

    export do_truncate() for modules
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit abe17d4a4b7691742ae7c7f1ddcbd2dd1927e6fd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Feb 22 01:23:40 2009 +0900

    fix ecryptfs original bug to test aufs2
    
    - stop unnecessary d_drop()s from ecyrptfs_link().
    - insert dget()/dput()/i_count in ecyrptfs_unlink().
    - update dir iattr in ecryptfs_rmdir().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 17415212943e7732f3f7df24047e236fad978226
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 12:54:04 2009 +0900

    make aufs modulable/tristate
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit df3b87daf44c36273b2349d2b1826468484f4068
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 12:54:04 2009 +0900

    export some symbols for modules
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bdcfa3ce3b53d863d137ee281ffb5597e97a4542
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Tue Mar 17 12:54:03 2009 +0900

    version string for standalone version
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 22e144fd4f71612bea8e53e85f2401558f67bb86
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 16 02:08:28 2009 +0900

    support exporting via NFS, documents
    
    - rename 08plan.txt to 99plan.txt
    - extract the export part from plan.txt, and make a new file
      08export.txt
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9efed339969b0590923de975f2085f79e8dd458b
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 16 02:08:13 2009 +0900

    support exporting via NFS, documents
    
    - rename 08plan.txt to 99plan.txt
    - extract the export part from plan.txt, and make a new file
      08export.txt
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b5fd902af9dec8e5e451201d2f76fe1d6efd2463
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:38 2009 +0900

    support exporting via NFS, documents
    
    - documentation.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8903afc2848bf9aa5d09fd285ef175f9e3e4382e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:37 2009 +0900

    support exporting via NFS, sysfs
    
    - new sysfs entry for xigen.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d9efb1c4abf53179de64d90186692fd7e84fdbe5
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:36 2009 +0900

    support exporting via NFS, EBUSY
    
    - convert -EBUSY into -ESTALE for NFSD by a new function
      au_busy_or_stale().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 1fe04442a055620a84b70a9b67fa42f387c84a37
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:35 2009 +0900

    support exporting via NFS, readdir
    
    - aufs_readdir() unlocks dinfo and sbinfo just before calling NFSD
      filldir.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2373392bdb24f9d229da96a5fab1bb08069736c6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 15 17:39:34 2009 +0900

    support exporting via NFS, export functions
    
    - new file export.c.
    - make au_xino_create2() global.
    - new configurations AUFS_EXPORT and AUFS_INO_T_64.
    - new macro Au_LOFF_MAX.
    - new functions au_export_init(), au_test_nfsd(),
      au_xigen_{inc,new,set,clr}() and au_busy_or_stale().
    - new members si_xigen and si_xigen_next in struct au_sbinfo.
    - initialize s_export_ops by au_export_init() in aufs_fill_super().
    - initialize xigen in au_iget_locked().
    - update xigen for removed inode in au_iinfo_fin().
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a90e2b3981dd7886c9c942cb63c063d882603a88
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 16 14:04:04 2009 +0900

    tiny: initialize ia to shut gcc warning up
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 262896c00fad1e099937c4b7f559cd8257950144
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 16 13:11:14 2009 +0900

    tiny: mark some parameters __maybe_unused
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7093ca37a29d0c465784b67d96351e38abe727c6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 16 02:35:41 2009 +0900

    tiny: add a note about aufs2 branch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2d8394e7c71c14136243a35be0ea05f0348a8dc1
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 13 14:43:44 2009 +0900

    correct the name of a donor
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7978e9025b067042087830fe65e115560348b171
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 13 14:30:19 2009 +0900

    name in the title
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 175015ae7c619f92d8bdf3fccb6f8c6513fff286
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 13 14:28:23 2009 +0900

    Acknowledgements
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit fb3c73738041e96dda88a1a899b5f3f6a2f48bdf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 9 17:39:11 2009 +0900

    remove priv_def.mk
    
    A review comment from Sam Ravnborg.
    Remove the makefile for individual customizing or debugging.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 41a7be5b98afb5200879cf68b8c527f35b30aaa2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 9 17:38:17 2009 +0900

    add aufs_type.h to Kbuild
    
    A review comment from Sam Ravnborg.
    Since include/linux/aufs_type.h contains ioctl command and macros for
    userspace, it should be included in Kbuild.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4bf89244930c172a1d5266a5d94729b6b13c722d
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Mar 6 00:07:06 2009 +0900

    add some feature ideas
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 01c3e79e382ab196eeb21200e7b559ab230baa23
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Mar 5 14:03:33 2009 +0900

    note about MAP_SHARED
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit f296ca35e0b5eaa90ca04df71ccb7c9006d509f3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 4 14:18:45 2009 +0900

    tiny: fix an indentation
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 05b55411acfe04a46a0b4a876e356afc7ab67c60
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Wed Mar 4 14:17:17 2009 +0900

    workaround for fmode_t
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8cf6e539dee0bc3475c369fb47dea8788308524f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Mar 2 12:01:32 2009 +0900

    support linux-2.6.29-rcN
    
    - replace do_fsync() by vfs_fsync().
    - add credential to dentry_open().
    - support squashfs, btrfs and xenfs (untested).
    - eliminate the test for inode->i_op.
    - replace current->fsuid by current_fsuid() call.
    - support security_path_*() functions.
    - version string.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 8539eb36613fd22af5ec2b21d7a0276c3aefc208
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 19:51:50 2009 +0900

    refine file truncate
    
    - move au_attr_trunc() from i_op.c to vfsub.c as vfsub_trunc().
    - remove AuIcpup_GOT_WACC.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 128e8f2b195d948161b3b84f0fb91b41761de074
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 06:36:40 2009 +0900

    call fsnotify_open() from au_h_open()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7dbb58b72d1dab79e32b80fdd4dad5dc4bfa4135
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 06:32:36 2009 +0900

    bugfix: make modifying branch permission revertible
    
    - split au_br_mod_files_ro() into two loops, and make files readonly in
      the second loop.
    - when au_br_mod_files_ro() returns an error, rebuild the whiteout base.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b21fe05308e7cd231ff286b10c4552c078f7f936
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sun Mar 1 04:32:17 2009 +0900

    refresh i_mode in file-write
    
    write to a lower file may change i_mode too.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b3a6cf7c6db300a79da7ce486afdffec2a5b77ca
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Feb 28 16:02:20 2009 +0900

    bugfix: initilize br_id earlier
    
    initilize br_id in au_br_init() before calling au_wbr_init() since
    au_wh_init() refers it.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9a9704a3a91111de0477af9cce137c3fac706340
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 27 22:34:15 2009 +0900

    replace au_test_aufs_file() by special_file()
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit e9874767a900b671941eee0f12944499693d714c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 23 23:48:49 2009 +0900

    fix the instruction how to checkout
    
    follow the comment from Julian Andres Klode.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 797afdeaaa26c4f89561036963e22ad6d3b72a52
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 23 23:27:04 2009 +0900

    follow the review comment on LKML
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cc158228664a585be3d66233000386c04feda97f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Mon Feb 23 15:56:03 2009 +0900

    tiny: fix typos
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit aefc8980b77541ec88b37feb0a1951bd2da6babb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Sat Feb 21 22:20:11 2009 +0900

    skip test for a negative dentry in nfs
    
    nfs d_revalidate may return 0 for negative dentry, so the test in
    au_h_verify_dentry() for udba=inotify lost its meaning, as well as fuse
    case.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 92c0263ab157fa0e05d08efea1ba214b1354575c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 20 18:08:49 2009 +0900

    support linux-2.6.18
    
    - remove ->prepare_write() and ->commit_write() from aufs_aop.
    - support the new type fmode_t.
    - reject securityfs as a branch.
    - remove TMPFS_MAGIC and SYSFS_MAGIC from magic.mk.
    - replace path_lookup() by a new function kern_path().
    - version string.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 6b55e4d3a286dcb427b68f037b7cdb8c892c8e35
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 20 17:40:33 2009 +0900

    tiny: fix for copyright
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 9da2511c11dc94f25795a17b4ce79ebda4ebe1cb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 20 17:40:12 2009 +0900

    tiny: fix for copyright and version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 365ce5b7210fe3546b751452c848f610ec93163e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Fri Feb 20 17:39:55 2009 +0900

    restore notes about git trees
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 514213ceff443e69ea3ea29089fad5ccc3650c53
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 15:14:27 2009 +0900

    fix version string
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0ca7f2d3af9bd70e16297cf375f190edd6d7fab4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 15:14:07 2009 +0900

    cosmetic: add a single sentence
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2511ef9937c3ae1d35884c00e940bc1a9848f0cc
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:58 2009 +0900

    kbuild aufs
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 2061044dfdc1ad3fcb1570a67c00f1a1a29fb575
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:57 2009 +0900

    export lookup functions
    
    export lookup functions to aufs module and others
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7d26a2937b379ae0ea62d3894a0300eeb3ae0095
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:56 2009 +0900

    export splice functions
    
    export splice functions to aufs module and others
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit c459d4df336003b016e877a620acad29dec18678
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:55 2009 +0900

    aufs debug
    
    initial commit
    debug print
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 72f20441ed75b545319539c479c9225d2c360722
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:54 2009 +0900

    aufs test for fstype
    
    initial commit
    judge the type of filesystem of branch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b5ccb505ec055bbe969f804900ec50e2ab729ca4
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:54 2009 +0900

    aufs internal inotify
    
    initial commit
    detect bypassing aufs by inotify-watch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit eaf310945bb878647a03eb0197c717e15eb47f24
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:53 2009 +0900

    aufs branch for loopback block device
    
    initial commit
    support and test loopback block device as a branch
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 52dfc86d0feab1d35d1b89ee9adbb22c5cdb6509
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:52 2009 +0900

    aufs sysfs entries
    
    initial commit
    sysfs entries, compiled only when CONFIG_SYSFS is enabled
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 48889307cd1316e50724712b75e71ec461a44e78
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:51 2009 +0900

    aufs ioctl
    
    initial commit
    currently for maintenance only
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit bcdcaef25a1a9d3df108bdffd7f20614df9b522c
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:50 2009 +0900

    aufs inode
    
    initial commit
    inode operations and private data
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit dbc42886136fd78ce7070d15a8a778d1fd0b6a37
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:49 2009 +0900

    aufs direcotry
    
    initial commit
    directory operations
    virtual or vertical(stacked) directory
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 28e89abff7f6ed12159fd1dce31ee7e7dfca38e2
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:49 2009 +0900

    aufs file
    
    initial commit
    private data, file operations, vm operations, and address_space
    operations.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b5b030501d231752f4555fdcc92a155b92acdf7a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:48 2009 +0900

    aufs dentry and lookup
    
    initial commit
    dentry operations and private data
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d35469e6f0f47fc2b4c1af1e7524976ca5cd2ba8
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:47 2009 +0900

    aufs policies to select one among multiple writable branches
    
    initial commit
    when creating/removing an entry and there are multiple writable branches
    specified in aufs, aufs has to decide which branch is the target.
    aufs has several policies for that such as, round-robin, most-free-space
    and so on.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 76b8ccda4ce020eeeb0afeb475535b278ac3fe5f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:46 2009 +0900

    aufs pseudo-link
    
    initial commit
    pseudo-link is a logical hardlink over branches or different filesystems.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit ac1bb696929b195fb1c578d87866a33655297fdb
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:45 2009 +0900

    aufs whiteout
    
    initial commit
    whiteout for logical deletion and opaque directory
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 13238fb9f5227ea9b6f15fe6d3712327285c31d9
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:45 2009 +0900

    aufs copy-up
    
    initial commit
    internal copy-up functions
    see wbr_policy.c for copy-down
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b484bd5875c9d4723a0a845b932711b275286a3e
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:44 2009 +0900

    aufs sub-dcache
    
    initial commit
    sub-routines or simple wrappers for dentry cache
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 0d7c916ed66be202e4310097a2967e729cd4fd95
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:43 2009 +0900

    aufs sub-VFS
    
    initial commit
    sub-routines or simple wrappers for VFS
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 966882e7eea4b97354cd346aa10290437f8814c3
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:42 2009 +0900

    aufs workqueue
    
    initial commit
    workqueue for asynchronous and super-io operations.
    they are used for:
    - handling 'opaque' directory and whiteout
    - lookup and copy-up/down with credential
    - internal xino file i/o
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 77d47c0e4e6c35976d23cfd019eecac7bccc8f2a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:41 2009 +0900

    aufs mount options/flags
    
    initial commit
    handling mount options/flags
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit cb5accaa25e4afe4dcbd9c4fbceee33783928ebf
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:41 2009 +0900

    aufs object lifetime management via sysfs
    
    initial commit
    some aufs objects have a corresponding entry under sysfs, so the
    lifetime will be managed by struct kref even if CONFIG_SYSFS is
    disabled.
    This file is compiled unconditionally.
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit a992247ca951423aff0968ef02a85fda94adeec6
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:40 2009 +0900

    aufs xino
    
    initial commit
    external inode number translation table and bitmap
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 4cb5420cf1e7f3c41444073532bb1d7c211ee41f
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:39 2009 +0900

    aufs branch directory/filesystem
    
    initial commit
    branch management
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit b2aaf154254413d64715c5f09798d47a316c369a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:38 2009 +0900

    aufs super_block
    
    initial commit
    super_block operations and private data
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit d8cf659501ebe7840d462c9a4c80c9a9e06b03bd
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:37 2009 +0900

    aufs module global
    
    initial commit
    common header file
    module initialization and module global vars
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 7c78697a796a7c30575e89c5c55f023a53d923ed
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:37 2009 +0900

    aufs public header file
    
    initial commit
    public header file
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>

commit 83e17c9c35b135e9acaffabc78f299e6aacc736a
Author: J. R. Okajima <hooanon05@yahoo.co.jp>
Date:   Thu Feb 19 01:26:36 2009 +0900

    aufs documents
    
    initial commit
    design and manual
    
    Signed-off-by: J. R. Okajima <hooanon05@yahoo.co.jp>
