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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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>
