From: yangsheng Date: Mon, 4 Feb 2008 02:25:38 +0000 (+0000) Subject: Branch HEAD X-Git-Tag: v1_9_50~1^3~42 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=3a67c9227f6657b0c495f97f2dd7cf76c593aa14;p=fs%2Flustre-release.git Branch HEAD b=14714 i=adilger i=scjody Detect if __d_rehash() and __d_move() should be used in ldiskfs. --- diff --git a/ldiskfs/configure.ac b/ldiskfs/configure.ac index 42aed45..43cb53d 100644 --- a/ldiskfs/configure.ac +++ b/ldiskfs/configure.ac @@ -81,6 +81,34 @@ AC_SUBST(LDISKFS_SERIES) AC_SUBST(ac_configure_args) +LB_CHECK_SYMBOL_EXPORT([d_rehash_cond], +[fs/dcache.c],[ +AC_DEFINE(HAVE_D_REHASH_COND, 1, + [d_rehash_cond is exported by the kernel]) +],[ +]) + +LB_CHECK_SYMBOL_EXPORT([__d_rehash], +[fs/dcache.c],[ +AC_DEFINE(HAVE___D_REHASH, 1, + [__d_rehash is exported by the kernel]) +],[ +]) + +LB_CHECK_SYMBOL_EXPORT([d_move_locked], +[fs/dcache.c],[ +AC_DEFINE(HAVE_D_MOVE_LOCKED, 1, + [d_move_locked is exported by the kernel]) +],[ +]) + +LB_CHECK_SYMBOL_EXPORT([__d_move], +[fs/dcache.c],[ +AC_DEFINE(HAVE___D_MOVE, 1, + [__d_move is exported by the kernel]) +],[ +]) + LB_CONFIG_FILES AC_CONFIG_FILES([ldiskfs/autoMakefile ldiskfs/Makefile]) diff --git a/ldiskfs/kernel_patches/patches/iopen-2.6-rhel4.patch b/ldiskfs/kernel_patches/patches/iopen-2.6-rhel4.patch index 39ebb39..f7f1ebf 100644 --- a/ldiskfs/kernel_patches/patches/iopen-2.6-rhel4.patch +++ b/ldiskfs/kernel_patches/patches/iopen-2.6-rhel4.patch @@ -319,7 +319,7 @@ Index: linux-stage/fs/ext3/iopen.h =================================================================== --- linux-stage.orig/fs/ext3/iopen.h 2005-02-25 14:41:01.017787968 +0200 +++ linux-stage/fs/ext3/iopen.h 2005-02-25 14:41:01.045783712 +0200 -@@ -0,0 +1,15 @@ +@@ -0,0 +1,23 @@ +/* + * iopen.h + * @@ -335,6 +335,14 @@ Index: linux-stage/fs/ext3/iopen.h +extern int ext3_iopen_get_inode(struct inode *inode); +extern struct dentry *iopen_connect_dentry(struct dentry *dentry, + struct inode *inode, int rehash); ++ ++#if !defined(HAVE_D_REHASH_COND) && defined(HAVE___D_REHASH) ++#define d_rehash_cond(dentry, lock) __d_rehash(dentry, lock) ++#endif ++ ++#if !defined(HAVE_D_MOVE_LOCKED) && defined(HAVE___D_MOVE) ++#define d_move_locked(dentry, lock) __d_move(dentry, lock) ++#endif Index: linux-stage/fs/ext3/namei.c =================================================================== --- linux-stage.orig/fs/ext3/namei.c 2005-02-25 14:37:28.975023368 +0200