aufs Monday release

2007-04-22 Thread sfjro

o bugfix
- bugfix: file revalidation after rename(tgt).
- strict inode lock in fsync() before 2.6.17.

o news
- restore rdacahe option, which was dropped by mistake.
- print the depth of generic workqueue in sysfs/aufs/stat.
- testing initramfs.
- still testing udba=inotify.
- simplified uid/gid/perm message.
- reduce stack space.
- make aufs_cond available even if CONFIG_LKTR is disabled.

o misc
- revise au_fin_finfo() and si lock.
- simplified cache function definitions.
- merge both of wait/nowait works into a single enqueue function.
- rename wkq_wait() to au_wkq_wait().
- rename some name hash functions, and two new functions nash_new()
  and nhash_del().
+ init_nhash()  -- nhash_init()
+ move_nhash()  -- nhash_move()
+ free_nhash()  -- nhash_fin()
- move au_is_kthread() to wkq.h, and rename to is_aufsd().
- rename au_init_wkq() to au_wkq_init().
- rename au_fin_wkq() to au_wkq_fin().
- rename au_inotify_exit() to au_inotify_fin().
- rename dbg_dlgt_exit() to dbg_dlgt_fin().


Junjiro Okajima

--

Index: fs/aufs/branch.c
- simplified uid/gid/perm message.

Index: fs/aufs/cpup.c
Index: fs/aufs/dentry.c
Index: fs/aufs/i_op.c
Index: fs/aufs/vfsub.c
- rename wkq_wait() to au_wkq_wait().

Index: fs/aufs/debug.c
Index: fs/aufs/debug.h
- make aufs_cond available even if CONFIG_LKTR is disabled.

Index: fs/aufs/dir.c
- bugfix: file revalidation after rename(tgt).
- revise au_fin_finfo() and si lock.
- rename wkq_wait() to au_wkq_wait().
- reduce stack space.

Index: fs/aufs/dir.h
Index: fs/aufs/vdir.c
- rename some name hash functions, and two new functions nash_new()
  and nhash_del().
+ init_nhash()  -- nhash_init()
+ move_nhash()  -- nhash_move()
+ free_nhash()  -- nhash_fin()

Index: fs/aufs/f_op.c
- revise au_fin_finfo() and si lock.
- strict inode lock in fsync() before 2.6.17.

Index: fs/aufs/file.c
- rename wkq_wait() to au_wkq_wait().
- bugfix: file revalidation after rename(tgt).

Index: fs/aufs/finfo.c
- revise au_fin_finfo() and si lock.

Index: fs/aufs/hinotify.c
- still testing udba=inotify.
- rename wkq_wait() to au_wkq_wait().
- rename au_inotify_exit() to au_inotify_fin().

Index: fs/aufs/i_op_del.c
Index: fs/aufs/i_op_ren.c
Index: fs/aufs/misc.c
- reduce stack space.

Index: fs/aufs/inode.h
- rename au_inotify_exit() to au_inotify_fin().

Index: fs/aufs/misc.h
- move au_is_kthread() to wkq.h, and rename to is_aufsd().

Index: fs/aufs/module.c
- rename dbg_dlgt_exit() to dbg_dlgt_fin().
- rename au_init_wkq() to au_wkq_init().
- rename au_fin_wkq() to au_wkq_fin().
- rename au_inotify_exit() to au_inotify_fin().

Index: fs/aufs/module.h
- move au_wkq to wkq.h.
- simplified cache function definitions.

Index: fs/aufs/opts.c
- restore rdacahe option, which was dropped by mistake.
- reduce stack space.

Index: fs/aufs/plink.c
- rename au_is_kthread() to is_aufsd().
- rename wkq_wait() to au_wkq_wait().

Index: fs/aufs/super.c
- revised simply.
- testing initramfs.

Index: fs/aufs/sysaufs.c
- print the depth of generic workqueue in sysfs/aufs/stat.

Index: fs/aufs/whout.c
- rename wkq_wait() to au_wkq_wait().
- rename some name hash functions.

Index: fs/aufs/wkq.c
- merge both of wait/nowait works into a single enqueue function.
- print the depth of generic workqueue in sysfs/aufs/stat.
- rename au_fin_wkq() to au_wkq_fin().
- rename au_init_wkq() to au_wkq_init().
- move au_is_kthread() to wkq.h, and rename to is_aufsd().

Index: fs/aufs/xino.c
- revised simply.

Index: util/aufs.in.5
- print the depth of generic workqueue in sysfs/aufs/stat.

Index: README
Index: fs/aufs/Makefile
Index: fs/aufs/export.c
Index: fs/aufs/iinfo.c
Index: fs/aufs/inode.c
Index: fs/aufs/vfsub.h
Index: include/linux/aufs_type.h
Index: sample/diskless/Makefile
Index: sample/diskless/comount.sh
Index: sample/diskless/def.mk
Index: sample/diskless/initrd.mk
Index: sample/diskless/linuxrc
Index: sample/diskless/nfscd.mk
- less important changes.

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/


Re: Want hack to prevent .wh.__dir_opaque creation

2007-04-22 Thread sfjro

 I guess your script which will be executed periodically will be such
 like this (I didn't test it),
 
 mount -o remount,udba=inotify /aufs
 mv /rw/* /ro/*
 mount -o remount,udba=reval /aufs

This sample was rough or rude.
You may need to care about whiteout, and the possibility of another
process may modify aufs.
Here is a modified sample.
You still need to decide how to handle whiteouts.

--
tmp=/rw/.wh..wh.$$
mount -o remount,udba=inotify /aufs
find /rw ! -name '.wh.*' \( -type d -fprintf $tmp.dir '%P\n' -o -fprintf 
$tmp.nondir '%P\n' \)

cd /ro
xargs -r mkdir  $tmp.dir
xargs -ri mv /rw/\{\} \{\}  $tmp.nondir
rm $tmp.*

cd $OLDPWD
mount -o remount,udba=reval /aufs
--

Ideally, this script should be executed with locking-out all other
processes.


Junjiro Okajima

-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/