diff options
author | Hongchao Zhang <hongchao.zhang@intel.com> | 2014-02-28 21:16:37 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-02-28 19:11:20 -0800 |
commit | 63d42578d5797fb6aa77d44d33d4d6f3ed330b40 (patch) | |
tree | 1a74652a3101b0f7a2428227d20bf9479a2c8400 /drivers/staging/lustre/lustre/include/lustre_export.h | |
parent | add882a8b59fe25ed35c64861908dadf739bc619 (diff) |
lustre/recovery: free open/close request promptly
- For the non-create open or committed open, the open request
should be freed along with the close request as soon as the
close done, despite that the transno of open/close is
greater than the last committed transno known by client or not.
- Move the committed open request into another dedicated list,
that will avoid scanning a huge replay list on receiving each
reply (when there are many open files).
Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Signed-off-by: Hongchao Zhang <hongchao.zhang@intel.com>
Reviewed-on: http://review.whamcloud.com/6665
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-2613
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/lustre/lustre/include/lustre_export.h')
-rw-r--r-- | drivers/staging/lustre/lustre/include/lustre_export.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/staging/lustre/lustre/include/lustre_export.h b/drivers/staging/lustre/lustre/include/lustre_export.h index 82a230be732d..6f7f48c7f2f1 100644 --- a/drivers/staging/lustre/lustre/include/lustre_export.h +++ b/drivers/staging/lustre/lustre/include/lustre_export.h @@ -388,6 +388,15 @@ static inline __u64 exp_connect_ibits(struct obd_export *exp) return ocd->ocd_ibits_known; } +static inline bool imp_connect_disp_stripe(struct obd_import *imp) +{ + struct obd_connect_data *ocd; + + LASSERT(imp != NULL); + ocd = &imp->imp_connect_data; + return ocd->ocd_connect_flags & OBD_CONNECT_DISP_STRIPE; +} + extern struct obd_export *class_conn2export(struct lustre_handle *conn); extern struct obd_device *class_conn2obd(struct lustre_handle *conn); |