Hi all,

This is the final regular release in this year. If something wrong
happens, I may release a fixed version as an emergency release.

Have nice holidays!
J. R. Okajima

o bugfix
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + temporary si unlock/lock in au_lkup_by_ino() and decode_by_path().
  + new function si_nfsd_read_lock().
  + rename struct au_decode to struct au_nfsd_si_lock.
  + in readdir(), unlock all except fi write-lock and call
    lockdep_off/on().
  + stop checking si lock in au_fvdir_cache().
  + remove struct au_nfsd_readdir_pid.
  + remove struct au_nfsd_pid.
  + remove au_nfsd_do_read_lock(), au_nfsd_read_lock() and
    di_nfsd_read_lock_parent().
  + remove si_nfsd_pid member.
  + remove si_nfsd_pid_{,un}reg() and au_nfsd_test_si_lock().
  + remove ii_nfsd_readdir member and au_nfsd_readdir_alloc().
  + remove au_nfsd_readdir_{alloc,free,reg,unreg,test}().
  + remove au_decode_{,un}lock().
  + remove si_hin_wq and si_nfsd_pid member.
  + remove au_hin_wq_{init,wake}().
  + support the hierarchy of pin3.
  + revert the big aufs lock.
- bugfix: mutex lock for the lower inode while updating the aufs inode
  attributes.

o misc
- allow flushing no-wait-task even if the current process is NFSD.
- minor enhancement: for NFSD, convert -EBUSY into -ESTALE.
- make silly_{,un}lock() before linux-2.6.27 only. in linux-2.6.27 and
  later, read-lock si and ii inconditionally.
- print the opened files too.
- remove the unused functions au_nfsd_lockdep_off/on().

----------------------------------------------------------------------
Index: fs/aufs/dentry.c
Index: fs/aufs25/dentry.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove au_nfsd_read_lock().

Index: fs/aufs/dentry.h
Index: fs/aufs25/dentry.h
Index: fs/aufs/getattr.c
Index: fs/aufs25/getattr.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove di_nfsd_read_lock_parent().

Index: fs/aufs/dir.c
Index: fs/aufs25/dir.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove si_nfsd_pid_{,un}reg().
  + remove ii_nfsd_readdir member and au_nfsd_readdir_alloc().
  + in readdir(), unlock all except fi write-lock and call
    lockdep_off/on().
  + remove au_nfsd_readdir_{,un}reg().

Index: fs/aufs/dir.h
Index: fs/aufs25/dir.h
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove struct au_nfsd_readdir_pid.
  + remove au_nfsd_readdir_{alloc,free,reg,unreg}().
  + remove au_nfsd_do_read_lock(), au_nfsd_read_lock() and
    di_nfsd_read_lock_parent().

Index: fs/aufs/export.c
Index: fs/aufs25/export.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove au_nfsd_test_si_lock().
  + remove au_nfsd_readdir_{alloc,free,reg,unreg,test}().
  + remove au_nfsd_do_read_lock().
  + rename struct au_decode to struct au_nfsd_si_lock.
  + remove au_decode_{,un}lock().
  + new function si_nfsd_read_lock().
  + temporary si unlock/lock in au_lkup_by_ino() and decode_by_path().
  + remove au_nfsd_read_lock().
  + remove si_nfsd_pid member.

Index: fs/aufs/file.h
Index: fs/aufs25/file.h
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + stop checking si lock in au_fvdir_cache().

Index: fs/aufs/hinotify.c
Index: fs/aufs25/hinotify.c
- bugfix: mutex lock for the lower inode while updating the aufs inode
  attributes.
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + revert the big aufs lock.

Index: fs/aufs/i_op.c
- minor enhancement: for NFSD, convert -EBUSY into -ESTALE.
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove di_nfsd_read_lock_parent().

Index: fs/aufs/i_op_add.c
Index: fs/aufs25/i_op_add.c
Index: fs/aufs/i_op_del.c
Index: fs/aufs25/i_op_del.c
- minor enhancement: for NFSD, convert -EBUSY into -ESTALE.

Index: fs/aufs/i_op_ren.c
Index: fs/aufs25/i_op_ren.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + support the hierarchy of pin3.
- minor enhancement: for NFSD, convert -EBUSY into -ESTALE.

Index: fs/aufs/iinfo.c
Index: fs/aufs25/iinfo.c
Index: fs/aufs/inode.h
Index: fs/aufs25/inode.h
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove ii_nfsd_readdir member.
  + remove au_nfsd_readdir_free().

Index: fs/aufs/sbinfo.c
Index: fs/aufs25/sbinfo.c
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove au_hin_wq_init().

Index: fs/aufs/super.h
Index: fs/aufs25/super.h
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove si_hin_wq and si_nfsd_pid member.
  + remove au_hin_wq_{init,wake}().
  + remove struct au_nfsd_pid.
  + remove si_nfsd_pid_{,un}reg() and au_nfsd_test_si_lock().
  + remove au_nfsd_read_lock().
- remove the unused functions au_nfsd_lockdep_off/on().
- allow flushing no-wait-task even if the current process is NFSD.

Index: fs/aufs/sysrq.c
Index: fs/aufs25/sysrq.c
- print the opened files too.

Index: fs/aufs25/i_op.c
- make silly_{,un}lock() before linux-2.6.27 only. in linux-2.6.27 and
  later, read-lock si and ii inconditionally.
- minor enhancement: for NFSD, convert -EBUSY into -ESTALE.
- bugfix(completed): stop recursive si lock, reported by Louis Rilling,
  refine the readdir call from NFSD entirely.
  + remove di_nfsd_read_lock_parent().

Index: fs/aufs/misc.h
Index: fs/aufs25/misc.h
Index: include/linux/aufs_type.h
- less important changes.

------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/

Reply via email to