o news
- two bugfixes(pinning and dlgt) and local tests for them are completed.
o bugfix
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ adjust the lock subclass in au_ren_pin_init().
+ change the dinfo lock subclass in au_test_and_cpup_dirs() from
PARENT2 to PARENT.
+ change the lock subclass from AuLsc_I_PARENT2 to AuLsc_I_CHILD.
+ change the lock subclass from AuLsc_I_PARENT to AuLsc_I_CHILD.
+ change the name of a lock subclass NEW to NEW_CHILD.
+ do not set inotify for whiteouted dirs (SHWH mode).
+ ignore a dead child dentry.
+ ignoring inotify events for creating/removing the default xino
files, introduce new member si_xino_def_br.
* reset si_xino_def_br when the removed branch is added again in
au_br_add().
* unset si_xino_def_br when the branch is deleted in au_br_del().
+ ignore the old whiteout when it was moved.
+ initialize dinfo lock by AuLsc_DI_CHILD instead of AuLsc_DI_PARENT.
+ lock iinfo in xino_do_trunc().
+ make the type of au_pin() and au_do_pin() void. this fix may be
reverted since a tiny bug can cause a deadlock.
+ remove a function au_hi_lock().
+ remove a member unpinned from struct au_link_args.
+ remove a parameter parent from au_xino_create().
+ remove dlgt test in au_wkq_run(), with this fix the fix for dlgt is
completed too.
+ replace the inode lock subclass AuLsc_I_PARENT2 by AuLsc_I_CHILD in
au_whtmp_rmdir().
+ restore the function au_hin_resume().
+ revert the inotify watch when an error occured.
+ set ignore info at re-initializing whiteout for a branch.
+ set ignore info in an error case in au_do_cpup_regular().
+ set noinline_for_stack to cpup_regular() and au_do_cpup_regular().
+ simplify vfsub_create(), vfsub_symlink(), vfsub_mknod(),
vfsub_mkdir(), vfsub_link(), vfsub_rename(), vfsub_rmdir(),
vfsub_write_k() and vfsub_splice_from().
+ switch the inode lock subclass in au_cp_dirs(), AuLsc_I_PARENT2 and
AuLsc_I_PARENT.
+ verify the child-parent relationship in call_rmdir_whtmp().
- bugfix: replace "${TgtPath}/Kconfig" by "aufs/Kconfig", reported and
patched by Paulius Zaleckas.
- bugfix: prepend CONFIG_ to ccflags-$(AUFS_WORKAROUND_FUSE).
o misc
- minor optimization: compare the read buffer with a zeroed page to
detect a hole in a file. this may be reverted in the future since this
optimization consumes one memory page.
- minor optimization in is_sb_shared().
- replace MmTree macro by CONFIG_AUFS_UNIONFS22_PATCH and
CONFIG_AUFS_UNIONFS23_PATCH.
- remove MmTree macro.
- kmalloc() some large structures in au_dpri_sb() (completed).
+ replace GFP_NOFS by GFP_ATOMIC.
Junjiro Okajima
----------------------------------------------------------------------
Index: local.mk
- bugfix: replace "${TgtPath}/Kconfig" by "aufs/Kconfig", reported and
patched by Paulius Zaleckas.
Index: fs/aufs25/Makefile
- bugfix: prepend CONFIG_ to ccflags-$(AUFS_WORKAROUND_FUSE).
- replace MmTree macro by CONFIG_AUFS_UNIONFS22_PATCH and
CONFIG_AUFS_UNIONFS23_PATCH.
Index: fs/aufs25/branch.c
Index: fs/aufs25/sbinfo.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ ignoring inotify events for creating/removing the default xino
files, introduce new member si_xino_def_br.
* reset si_xino_def_br when the removed branch is added again in
au_br_add().
* unset si_xino_def_br when the branch is deleted in au_br_del().
Index: fs/aufs25/branch.h
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ remove a parameter parent from au_xino_create().
Index: fs/aufs25/cpup.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ set noinline_for_stack to cpup_regular() and au_do_cpup_regular().
+ set ignore info in an error case in au_do_cpup_regular().
+ switch the inode lock subclass in au_cp_dirs(), AuLsc_I_PARENT2 and
AuLsc_I_PARENT.
+ change the dinfo lock subclass in au_test_and_cpup_dirs() from
PARENT2 to PARENT.
Index: fs/aufs25/debug.c
- kmalloc() some large structures in au_dpri_sb() (completed).
+ replace GFP_NOFS by GFP_ATOMIC.
Index: fs/aufs25/dinfo.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ initialize dinfo lock by AuLsc_DI_CHILD instead of AuLsc_DI_PARENT.
Index: fs/aufs25/export.c
Index: fs/aufs25/super.c
Index: fs/aufs25/vfsub.h
- remove MmTree macro.
Index: fs/aufs25/file.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ make the type of au_pin() void. this fix may be reverted since a
tiny bug can cause a deadlock.
Index: fs/aufs25/hin_or_dlgt.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ simplify vfsub_create(), vfsub_symlink(), vfsub_mknod(),
vfsub_mkdir(), vfsub_link(), vfsub_rename(), vfsub_rmdir(),
vfsub_write_k() and vfsub_splice_from().
Index: fs/aufs25/hinode.h
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ restore the function au_hin_resume().
Index: fs/aufs25/hinotify.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ ignore a dead child dentry.
Index: fs/aufs25/i_op.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ make the type of au_pin() and au_do_pin() void. this fix may be
reverted since a tiny bug can cause a deadlock.
+ remove a function au_hi_lock().
Index: fs/aufs25/i_op_add.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ make the type of au_pin() void. this fix may be reverted since a
tiny bug can cause a deadlock.
+ remove a member unpinned from struct au_link_args.
Index: fs/aufs25/i_op_del.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ make the type of au_pin() void. this fix may be reverted since a
tiny bug can cause a deadlock.
+ change the lock subclass from AuLsc_I_PARENT2 to AuLsc_I_CHILD.
Index: fs/aufs25/i_op_ren.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ change the lock subclass from AuLsc_I_PARENT to AuLsc_I_CHILD.
+ revert the inotify watch when an error occured.
+ adjust the lock subclass in au_ren_pin_init().
+ make the type of au_pin() void. this fix may be reverted since a
tiny bug can cause a deadlock.
Index: fs/aufs25/inode.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ do not set inotify for whiteouted dirs (SHWH mode).
+ change the name of a lock subclass NEW to NEW_CHILD.
Index: fs/aufs25/inode.h
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ make the type of au_pin() and au_do_pin() void. this fix may be
reverted since a tiny bug can cause a deadlock.
+ change the name of a lock subclass NEW to NEW_CHILD.
Index: fs/aufs25/misc.c
Index: fs/aufs25/module.c
Index: fs/aufs25/module.h
- minor optimization: compare the read buffer with a zeroed page to
detect a hole in a file. this may be reverted in the future since this
optimization consumes one memory page.
Index: fs/aufs25/opts.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ remove a parameter parent from au_xino_create().
+ ignoring inotify events for creating/removing the default xino
files, introduce new member si_xino_def_br.
Index: fs/aufs25/super.h
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ ignoring inotify events for creating/removing the default xino
files, introduce new member si_xino_def_br.
- remove MmTree macro.
Index: fs/aufs25/whout.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ set ignore info at re-initializing whiteout for a branch.
+ ignore the old whiteout when it was moved.
+ replace the inode lock subclass AuLsc_I_PARENT2 by AuLsc_I_CHILD in
au_whtmp_rmdir().
+ verify the child-parent relationship in call_rmdir_whtmp().
Index: fs/aufs25/wkq.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ remove dlgt test in au_wkq_run(), with this fix the fix for dlgt is
completed too.
Index: fs/aufs25/xino.c
- bugfix (fs/aufs25 only, currently): pin the hierarchy on lower branch
and new ignore scheme for inotify (completed).
+ lock iinfo in xino_do_trunc().
+ remove a parameter parent from au_xino_create().
+ ignoring inotify events for creating/removing the default xino
files, introduce new member si_xino_def_br.
- minor optimization in is_sb_shared().
Index: fs/aufs25/dir.c
Index: fs/aufs25/plink.c
Index: include/linux/aufs_type.h
Index: util/auplink
- less important changes.
-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08