md

Sub-class of lu_object with methods common for "meta-data" objects in MDT stack. More...

Data Structures

struct  md_ucred
struct  md_capainfo
 there are at most 5 fids in one operation, see rename, NOTE the last one is a temporary one used for is_subdir() More...
struct  md_quota
struct  md_hsm
struct  md_som_data
struct  md_attr
struct  md_op_spec
 Additional parameters for create. More...
struct  md_object_operations
 Operations implemented for each md object (both directory and leaf). More...
struct  md_dir_operations
 Operations implemented for each directory object. More...
struct  md_device_operations
struct  md_upcall
struct  md_device
struct  md_object
struct  md_site
 md-server site. More...
struct  lu_local_obj_desc
 Structure to hold object information. More...

Defines

#define ma_hsm_flags   ma_hsm.mh_flags
#define HSM_FLAGS_MASK   0
#define IOEPOCH_INVAL   0

Enumerations

enum  { UCRED_INVALID = -1, UCRED_INIT = 0, UCRED_OLD = 1, UCRED_NEW = 2 }
enum  { MD_CAPAINFO_MAX = 5 }
enum  ma_valid {
  MA_INODE = (1 << 0), MA_LOV = (1 << 1), MA_COOKIE = (1 << 2), MA_FLAGS = (1 << 3),
  MA_LMV = (1 << 4), MA_ACL_DEF = (1 << 5), MA_LOV_DEF = (1 << 6), MA_HSM = (1 << 8),
  MA_SOM = (1 << 9)
}
 metadata attributes
enum  mdl_mode_t {
  MDL_MINMODE = 0, MDL_EX = 1, MDL_PW = 2, MDL_PR = 4,
  MDL_CW = 8, MDL_CR = 16, MDL_NL = 32, MDL_GROUP = 64,
  MDL_MAXMODE
}
enum  mdl_type_t { MDT_NUL_LOCK = 0, MDT_REG_LOCK = (1 << 0), MDT_PDO_LOCK = (1 << 1) }
enum  md_upcall_event { MD_LOV_SYNC = (1 << 0), MD_NO_TRANS = (1 << 1), MD_LOV_CONFIG = (1 << 2), MD_LOV_QUOTA = (1 << 3) }

Functions

md_ucred * md_ucred (const struct lu_env *env)
 Implemented in mdd/mdd_handler.c.
md_capainfomd_capainfo (const struct lu_env *env)
md_quota * md_quota (const struct lu_env *env)
md_object * llo_store_resolve (const struct lu_env *env, struct md_device *md, struct dt_device *dt, const char *path, struct lu_fid *fid)
 Resolve given path, on success function returns md object for last directory and fid points to its fid.
md_object * llo_store_open (const struct lu_env *env, struct md_device *md, struct dt_device *dt, const char *dirname, const char *objname, struct lu_fid *fid)
 Returns md object for objname in given dirname.
md_object * llo_store_create_index (const struct lu_env *env, struct md_device *md, struct dt_device *dt, const char *dirname, const char *objname, const struct lu_fid *fid, const struct dt_index_features *feat)
 Create md object, object could be diretcory or special index defined by feat in directory.
md_object * llo_store_create (const struct lu_env *env, struct md_device *md, struct dt_device *dt, const char *dirname, const char *objname, const struct lu_fid *fid)
 Create md object for regular file in directory.
void llo_local_obj_register (struct lu_local_obj_desc *)
 Register object for 'create on first mount' facility.
void llo_local_obj_unregister (struct lu_local_obj_desc *)
int llo_local_objects_setup (const struct lu_env *env, struct md_device *md, struct dt_device *dt)
 Created registed objects.

Detailed Description

Sub-class of lu_object with methods common for "meta-data" objects in MDT stack.

Meta-data objects implement namespace operations: you can link, unlink them, and treat them as directories.

Examples: mdt, cmm, and mdt are implementations of md interface.


Enumeration Type Documentation

enum md_upcall_event

Enumerator:
MD_LOV_SYNC  Sync the md layer.
MD_NO_TRANS  Just for split, no need trans, for replay.
MD_LOV_QUOTA  Trigger quota recovery.


Function Documentation

void llo_local_obj_register ( struct lu_local_obj_desc llod  ) 

Register object for 'create on first mount' facility.

objects are created in order of registration.

struct md_object* llo_store_create ( const struct lu_env env,
struct md_device *  md,
struct dt_device *  dt,
const char *  dirname,
const char *  objname,
const struct lu_fid fid 
)

Create md object for regular file in directory.

Parameters:
md device
dirname parent directory
objname file name
fid object fid.

struct md_object* llo_store_create_index ( const struct lu_env env,
struct md_device *  md,
struct dt_device *  dt,
const char *  dirname,
const char *  objname,
const struct lu_fid fid,
const struct dt_index_features *  feat 
)

Create md object, object could be diretcory or special index defined by feat in directory.

Parameters:
md device
dirname parent directory
objname file name
fid object fid
feat index features required for directory create

struct md_ucred* md_ucred ( const struct lu_env env  ) 

Implemented in mdd/mdd_handler.c.

XXX should be moved into separate .h/.c together with all md security related definitions.


Generated on Mon Apr 12 04:18:21 2010 for Lustre 1.10.0.40-0-g9a80ff7 by doxygen 1.4.7

Contact | About Sun | News | Employment | Privacy | Terms of Use | Trademarks | (C) 2008 Sun Microsystems, Inc.