Whamcloud - gitweb
LU-1234 dcache: don't drop invalid dentry arbitrarily
authorLai Siyao <laisiyao@whamcloud.com>
Wed, 28 Mar 2012 17:07:53 +0000 (01:07 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Sun, 17 Feb 2013 05:32:41 +0000 (00:32 -0500)
commit94509cda52b49a0153fae4b7a1f0772077aa9809
tree250460b4f9f7959ce1b82b70afc5b4a9445b69d3
parentd2160e28da19c1cfcdd95a42ab650824d568777f
LU-1234 dcache: don't drop invalid dentry arbitrarily

This is a backport of part of LU-506 dcache scalability support:
* remove super hack d_rehash_cond(), and treats DCACHE_LUSTRE_INVALID
  similar to DCACHE_DISCONNECTED, therefore dentry doesn't need to
  be dropped and rehashed frequently.
* .lookup(LOOKUP_CREATE) calls d_add() dentry directly, and .create
  only needs to d_instantiate() this dentry.
* other cleanups.

Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Change-Id: Ie169bc7e763e6891084999041aac9f62c8dee9f0
Reviewed-on: http://review.whamcloud.com/2400
Tested-by: Hudson
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/include/linux/lustre_compat25.h
lustre/include/linux/lustre_patchless_compat.h
lustre/llite/dcache.c
lustre/llite/file.c
lustre/llite/llite_internal.h
lustre/llite/namei.c
lustre/llite/statahead.c