])
#
+# LC_POSIX_ACL_XATTR
+#
+# If we have xattr_acl.h
+#
+AC_DEFUN([LC_XATTR_ACL],
+[LB_CHECK_FILE([$LINUX/include/linux/xattr_acl.h],[
+ AC_MSG_CHECKING([if xattr_acl.h can be compiled])
+ LB_LINUX_TRY_COMPILE([
+ #include <linux/xattr_acl.h>
+ ],[],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_XATTR_ACL, 1, [Kernel has xattr_acl])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
+],
+[])
+])
+
+#
# LC_PROG_LINUX
#
# Lustre linux kernel checks
LC_STRUCT_FILE_OPS_UNLOCKED_IOCTL
LC_FILEMAP_POPULATE
LC_D_ADD_UNIQUE
+LC_XATTR_ACL
])
#
# include <linux/fs.h>
# include <linux/dcache.h>
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15))
-#include <linux/posix_acl_xattr.h>
-#else
+#ifdef HAVE_XATTR_ACL
#include <linux/xattr_acl.h>
+#else
+#include <linux/posix_acl_xattr.h>
#endif
#endif
/* ACL */
#ifdef CONFIG_FS_POSIX_ACL
-# if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15))
-# define MDS_XATTR_NAME_ACL_ACCESS POSIX_ACL_XATTR_ACCESS
-# define mds_xattr_acl_size(entry) posix_acl_xattr_size(entry)
-# else
+#ifdef HAVE_XATTR_ACL
# define MDS_XATTR_NAME_ACL_ACCESS XATTR_NAME_ACL_ACCESS
# define mds_xattr_acl_size(entry) xattr_acl_size(entry)
+# else
+# define MDS_XATTR_NAME_ACL_ACCESS POSIX_ACL_XATTR_ACCESS
+# define mds_xattr_acl_size(entry) posix_acl_xattr_size(entry)
# endif
# define LUSTRE_POSIX_ACL_MAX_ENTRIES (32)
# define LUSTRE_POSIX_ACL_MAX_SIZE \
LTIME_S(attr->ia_atime) = rec->sa_atime;
LTIME_S(attr->ia_mtime) = rec->sa_mtime;
LTIME_S(attr->ia_ctime) = rec->sa_ctime;
-#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,14))
- attr->ia_attr_flags = rec->sa_attr_flags;
-#else
- #warning "fix it later for fc5"
-#endif
+ r->ur_flags = rec->sa_attr_flags;
+
LASSERT_REQSWAB (req, offset + 1);
if (lustre_msg_bufcount(req->rq_reqmsg) > offset + 1) {
r->ur_eadata = lustre_msg_buf(req->rq_reqmsg, offset + 1, 0);
GOTO(cleanup, rc);
if (rec->ur_iattr.ia_valid & ATTR_ATTR_FLAG) { /* ioctl */
-
-#if (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,14))
rc = fsfilt_iocontrol(obd, inode, NULL, EXT3_IOC_SETFLAGS,
- (long)&rec->ur_iattr.ia_attr_flags);
-#else
- #warning "fix it later for fc5"
-#endif
+ (long)&rec->ur_flags);
} else if (rec->ur_iattr.ia_valid) { /* setattr */
rc = fsfilt_setattr(obd, de, handle, &rec->ur_iattr, 0);
/* journal chown/chgrp in llog, just like unlink */