X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flustre_disk.h;h=6c46056956a2c6a5d177bd05405664e8f04e12ad;hb=8be13c069909b9ba741885aca963279ebb1cbdd8;hp=336045b1f799dfb345cfca556d88eedd7a8fb03a;hpb=5cdc35aa8411c5369b4018748aaaabdf7b1952e4;p=fs%2Flustre-release.git diff --git a/lustre/include/lustre_disk.h b/lustre/include/lustre_disk.h index 336045b..6c46056 100644 --- a/lustre/include/lustre_disk.h +++ b/lustre/include/lustre_disk.h @@ -26,7 +26,7 @@ * GPL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved + * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. */ /* @@ -43,6 +43,11 @@ #ifndef _LUSTRE_DISK_H #define _LUSTRE_DISK_H +/** \defgroup disk disk + * + * @{ + */ + #include #include @@ -70,11 +75,11 @@ #define LDD_F_NEED_INDEX 0x0010 /** never registered */ #define LDD_F_VIRGIN 0x0020 -/** update the config logs for this server*/ +/** update the config logs for this server */ #define LDD_F_UPDATE 0x0040 /** rewrite the LDD */ #define LDD_F_REWRITE_LDD 0x0080 -/** regenerate all logs for this fs */ +/** regenerate config logs for this fs or server */ #define LDD_F_WRITECONF 0x0100 /** COMPAT_14 */ #define LDD_F_UPGRADE14 0x0200 @@ -172,6 +177,8 @@ struct lustre_mount_data { __u32 lmd_flags; /* lustre mount flags */ int lmd_mgs_failnodes; /* mgs failover node count */ int lmd_exclude_count; + int lmd_recovery_time_soft; + int lmd_recovery_time_hard; char *lmd_dev; /* device name */ char *lmd_profile; /* client only */ char *lmd_mgssec; /* sptlrpc flavor to mgs */ @@ -187,6 +194,7 @@ struct lustre_mount_data { no other services */ #define LMD_FLG_NOMGS 0x0020 /* Only start target for servers, reusing existing MGS services */ +#define LMD_FLG_WRITECONF 0x0040 /* Rewrite config log */ #define lmd_is_client(x) ((x)->lmd_flags & LMD_FLG_CLIENT) @@ -197,6 +205,7 @@ struct lustre_mount_data { #define LR_EPOCH_BITS 32 #define lr_epoch(a) ((a) >> LR_EPOCH_BITS) #define LR_EXPIRE_INTERVALS 16 /**< number of intervals to track transno */ +#define ENOENT_VERSION 1 /** 'virtual' version of non-existent object */ #define LR_SERVER_SIZE 512 #define LR_CLIENT_START 8192 @@ -217,8 +226,6 @@ struct lustre_mount_data { #define LR_MAX_CLIENTS (CFS_PAGE_SIZE * 8) #endif -#define LR_CLIENT_BITMAP_SIZE ((LR_MAX_CLIENTS >> 3) / sizeof(long)) - /** COMPAT_146: this is an OST (temporary) */ #define OBD_COMPAT_OST 0x00000002 /** COMPAT_146: this is an MDT (temporary) */ @@ -428,12 +435,14 @@ struct lustre_sb_info { struct lustre_disk_data *lsi_ldd; /* mount info on-disk */ struct ll_sb_info *lsi_llsbi; /* add'l client sbi info */ struct vfsmount *lsi_srv_mnt; /* the one server mount */ - atomic_t lsi_mounts; /* references to the srv_mnt */ + cfs_atomic_t lsi_mounts; /* references to the srv_mnt */ + struct backing_dev_info lsi_bdi; /* each client mountpoint needs own backing_dev_info */ }; #define LSI_SERVER 0x00000001 #define LSI_UMOUNT_FORCE 0x00000010 #define LSI_UMOUNT_FAILOVER 0x00000020 +#define LSI_BDI_INITIALIZED 0x00000040 #define s2lsi(sb) ((struct lustre_sb_info *)((sb)->s_fs_info)) #define s2lsi_nocast(sb) ((sb)->s_fs_info) @@ -445,10 +454,10 @@ struct lustre_sb_info { /****************** mount lookup info *********************/ struct lustre_mount_info { - char *lmi_name; - struct super_block *lmi_sb; - struct vfsmount *lmi_mnt; - struct list_head lmi_list_chain; + char *lmi_name; + struct super_block *lmi_sb; + struct vfsmount *lmi_mnt; + cfs_list_t lmi_list_chain; }; /****************** prototypes *********************/ @@ -461,6 +470,7 @@ void lustre_register_kill_super_cb(void (*cfs)(struct super_block *sb)); int lustre_common_put_super(struct super_block *sb); +struct lustre_mount_info *server_find_mount_locked(const char *name); struct lustre_mount_info *server_get_mount(const char *name); struct lustre_mount_info *server_get_mount_2(const char *name); int server_put_mount(const char *name, struct vfsmount *mnt); @@ -474,4 +484,6 @@ int mgc_fsname2resid(char *fsname, struct ldlm_res_id *res_id); #endif +/** @} disk */ + #endif // _LUSTRE_DISK_H