add sles10 support.
# include <linux/posix_acl_xattr.h>
# endif
# endif
+# ifndef HAVE_VFS_INTENT_PATCHES
+# include <linux/lustre_intent.h>
+# endif
#endif
#include <lustre_handles.h>
#include <libcfs/kp30.h>
struct list_head mod_replay_list;
};
+struct lookup_intent;
+
struct md_ops {
int (*m_getstatus)(struct obd_export *, struct lu_fid *,
struct obd_capa **);
lustre_version.patch
-vfs_intent-2.6-sles10.patch
-vfs_races-2.6.18-vanilla.patch
jbd-2.6.10-jcberr.patch
export_symbols-2.6.12.patch
dev_read_only-2.6-fc5.patch
export_symbol_numa-2.6-fc5.patch
blkdev_tunables-2.6-sles10.patch
jbd-stats-2.6-sles10.patch
+i_filter_data.patch
jbd-journal-chksum-2.6-sles10.patch
proc-sleep-2.6.16-sles10.patch
export-nr_free_buffer_pages.patch
#ifdef __KERNEL__
# include <libcfs/libcfs.h>
+# ifndef HAVE_VFS_INTENT_PATCHES
# include <linux/lustre_intent.h>
+# endif
#else
# include <liblustre.h>
# include <libcfs/kp30.h>
#endif
}
RETURN(rc);
-
+
/*
* This part is here to combat evil-evil race in real_lookup on 2.6
* kernels. The race details are: We enter do_lookup() looking for some
ll_lookup_finish_locks(it, de);
it = &lookup_it;
}
-
+
/* Do real lookup here. */
op_data = ll_prep_md_op_data(NULL, parent, NULL, de->d_name.name,
de->d_name.len, 0, (it->it_op & IT_CREAT ?
DLM_REPLY_REC_OFF,
sizeof(*mdt_body));
struct lu_fid fid = {.f_seq = 0, .f_oid = 0, .f_ver = 0};
-
+
if (de->d_inode)
fid = *ll_inode2fid(de->d_inode);
ll_d2d(dentry)->lld_it = it;
it = NULL; /* avoid freeing */
}
-
+
out_it:
if (it) {
ll_intent_release(it);
#include <lustre_ver.h>
#include <lustre_disk.h> /* for s2sbi */
+#ifndef FMODE_EXEC
+#define FMODE_EXEC 0
+#endif
+
#define LL_IT2STR(it) ((it) ? ldlm_it2str((it)->it_op) : "0")
#define LUSTRE_FPRIVATE(file) ((file)->private_data)
de->d_parent, de->d_inode, atomic_read(&de->d_count));
return dentry;
}
-
+
if (last_discon) {
CDEBUG(D_DENTRY, "Reuse disconnected dentry %p inode %p "
"refc %d\n", last_discon, last_discon->d_inode,
atomic_read(&last_discon->d_count));
- __d_rehash(de, 0);
dget_locked(last_discon);
- __d_move(last_discon, de);
spin_unlock(&dcache_lock);
d_rehash(de);
+ d_move(last_discon, de);
iput(inode);
return last_discon;
}
-
+
ll_d_add(de, inode);
spin_unlock(&dcache_lock);
#include <asm/div64.h>
#include <linux/seq_file.h>
#include <linux/namei.h>
+# ifndef HAVE_VFS_INTENT_PATCHES
+# include <linux/lustre_intent.h>
+# endif
#else
#include <liblustre.h>
#endif