From c4e9ffc21e3b29c67aa549ef40025017455e819a Mon Sep 17 00:00:00 2001 From: yangsheng Date: Sat, 21 Nov 2009 15:33:17 +0000 Subject: [PATCH] Branch b1_8 b=21375 i=brian, johann Config check for FS_HAS_FIEMAP separately. It only exist in RHEL5.4. --- lustre/autoconf/lustre-core.m4 | 16 ++++++++++++++++ lustre/obdclass/obd_mount.c | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4 index 20e30bb..a6abfca 100644 --- a/lustre/autoconf/lustre-core.m4 +++ b/lustre/autoconf/lustre-core.m4 @@ -1353,6 +1353,21 @@ AC_DEFUN([LC_LINUX_FIEMAP_H], []) ]) +# is FS_HAS_FIEMAP defined? +AC_DEFUN([LC_LINUX_FS_HAS_FIEMAP], +[AC_MSG_CHECKING([if kernel has FS_HAS_FIEMAP]) +LB_LINUX_TRY_COMPILE([ + #include +],[ + int flag = FS_HAS_FIEMAP; +],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_FS_HAS_FIEMAP, 1, [kernel has FS_HAS_FIEMAP]) +],[ + AC_MSG_RESULT([no]) +]) +]) + #2.6.27 AC_DEFUN([LC_INODE_PERMISION_2ARGS], [AC_MSG_CHECKING([inode_operations->permission have two args]) @@ -1772,6 +1787,7 @@ AC_DEFUN([LC_PROG_LINUX], LC_PG_FS_MISC LC_PAGE_CHECKED LC_LINUX_FIEMAP_H + LC_LINUX_FS_HAS_FIEMAP # 2.6.19 LC_INODE_BLKSIZE diff --git a/lustre/obdclass/obd_mount.c b/lustre/obdclass/obd_mount.c index e3a37ee..c5c796e 100644 --- a/lustre/obdclass/obd_mount.c +++ b/lustre/obdclass/obd_mount.c @@ -2100,7 +2100,7 @@ struct file_system_type lustre_fs_type = { .get_sb = lustre_get_sb, .kill_sb = lustre_kill_super, .fs_flags = FS_BINARY_MOUNTDATA | FS_REQUIRES_DEV | -#ifdef HAVE_LINUX_FIEMAP_H +#ifdef HAVE_FS_HAS_FIEMAP FS_HAS_FIEMAP | #endif LL_RENAME_DOES_D_MOVE, -- 1.8.3.1