* Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
* Use is subject to license terms.
*
- * Copyright (c) 2011, 2013, Intel Corporation.
+ * Copyright (c) 2011, 2014, Intel Corporation.
*/
/*
* This file is part of Lustre, http://www.lustre.org/
extern const struct lu_fid LU_OBF_FID;
extern const struct lu_fid LU_LPF_FID;
extern const struct lu_fid LU_DOT_LUSTRE_FID;
+extern const struct lu_fid LU_BACKEND_LPF_FID;
enum {
/*
ACCT_GROUP_OID = 16UL,
LFSCK_BOOKMARK_OID = 17UL,
OTABLE_IT_OID = 18UL,
+ OSD_LPF_OID = 19UL,
/* These two definitions are obsolete
* OFD_GROUP0_LAST_OID = 20UL,
* OFD_GROUP4K_LAST_OID = 20UL+4096,
MDD_LOV_OBJ_OSEQ = 4121UL,
LFSCK_NAMESPACE_OID = 4122UL,
REMOTE_PARENT_DIR_OID = 4123UL,
- SLAVE_LLOG_CATALOGS_OID = 4124UL,
+ /* This definition is obsolete
+ * SLAVE_LLOG_CATALOGS_OID = 4124UL,
+ */
};
static inline void lu_local_obj_fid(struct lu_fid *fid, __u32 oid)
static inline int fid_is_root(const struct lu_fid *fid)
{
return unlikely((fid_seq(fid) == FID_SEQ_ROOT &&
- fid_oid(fid) == 1));
-}
-
-static inline int fid_seq_is_dot_lustre(__u64 seq)
-{
- return unlikely(seq == FID_SEQ_DOT_LUSTRE);
+ fid_oid(fid) == FID_OID_ROOT));
}
static inline int fid_is_dot_lustre(const struct lu_fid *fid)
* object or not. It is caller's duty to check more if needed. */
return (!fid_is_last_id(fid) &&
(fid_seq_is_norm(seq) || fid_seq_is_igif(seq))) ||
- fid_is_root(fid) || fid_seq_is_dot_lustre(seq);
+ fid_is_root(fid) || fid_seq_is_dot(seq);
}
static inline int fid_seq_in_fldb(__u64 seq)
struct lu_seq_range lcs_space;
/* Seq related proc */
- cfs_proc_dir_entry_t *lcs_proc_dir;
+ struct proc_dir_entry *lcs_proc_dir;
/* This holds last allocated fid in last obtained seq */
struct lu_fid lcs_fid;
struct dt_object *lss_obj;
/* Seq related proc */
- cfs_proc_dir_entry_t *lss_proc_dir;
+ struct proc_dir_entry *lss_proc_dir;
/* LUSTRE_SEQ_SERVER or LUSTRE_SEQ_CONTROLLER */
enum lu_mgr_type lss_type;
- /* Client interafce to request controller */
+ /* Client interface to request controller */
struct lu_client_seq *lss_cli;
/* Mutex for protecting allocation */
struct seq_server_site *lss_site;
};
+struct seq_server_site {
+ struct lu_site *ss_lu;
+ /**
+ * mds number of this site.
+ */
+ u32 ss_node_id;
+ /**
+ * Fid location database
+ */
+ struct lu_server_fld *ss_server_fld;
+ struct lu_client_fld *ss_client_fld;
+
+ /**
+ * Server Seq Manager
+ */
+ struct lu_server_seq *ss_server_seq;
+
+ /**
+ * Controller Seq Manager
+ */
+ struct lu_server_seq *ss_control_seq;
+ struct obd_export *ss_control_exp;
+
+ /**
+ * Client Seq Manager
+ */
+ struct lu_client_seq *ss_client_seq;
+};
+
/* Server methods */
int seq_server_init(const struct lu_env *env,