From 98604a91e5b3d79b387cb3c61f48c6dd908c2d95 Mon Sep 17 00:00:00 2001 From: vitaly Date: Mon, 17 Nov 2008 17:46:07 +0000 Subject: [PATCH] Branch b1_8_gate b=17239 i=adilger i=shadow async lov_sync() operation. --- lustre/obdfilter/filter.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lustre/obdfilter/filter.c b/lustre/obdfilter/filter.c index c2d07f0..ea5e55f 100644 --- a/lustre/obdfilter/filter.c +++ b/lustre/obdfilter/filter.c @@ -3635,8 +3635,9 @@ static int filter_truncate(struct obd_export *exp, struct obd_info *oinfo, RETURN(rc); } -static int filter_sync(struct obd_export *exp, struct obdo *oa, - struct lov_stripe_md *lsm, obd_off start, obd_off end) +static int filter_sync(struct obd_export *exp, struct obd_info *oinfo, + obd_off start, obd_off end, + struct ptlrpc_request_set *set) { struct lvfs_run_ctxt saved; struct filter_obd *filter; @@ -3648,7 +3649,7 @@ static int filter_sync(struct obd_export *exp, struct obdo *oa, filter = &exp->exp_obd->u.filter; /* An objid of zero is taken to mean "sync whole filesystem" */ - if (!oa || !(oa->o_valid & OBD_MD_FLID)) { + if (!oinfo->oi_oa || !(oinfo->oi_oa->o_valid & OBD_MD_FLID)) { rc = fsfilt_sync(exp->exp_obd, filter->fo_obt.obt_sb); /* Flush any remaining cancel messages out to the target */ @@ -3663,7 +3664,7 @@ static int filter_sync(struct obd_export *exp, struct obdo *oa, RETURN(rc); } - dentry = filter_oa2dentry(exp->exp_obd, oa); + dentry = filter_oa2dentry(exp->exp_obd, oinfo->oi_oa); if (IS_ERR(dentry)) RETURN(PTR_ERR(dentry)); @@ -3685,8 +3686,8 @@ static int filter_sync(struct obd_export *exp, struct obdo *oa, } UNLOCK_INODE_MUTEX(dentry->d_inode); - oa->o_valid = OBD_MD_FLID; - obdo_from_inode(oa, dentry->d_inode, FILTER_VALID_FLAGS); + oinfo->oi_oa->o_valid = OBD_MD_FLID; + obdo_from_inode(oinfo->oi_oa, dentry->d_inode, FILTER_VALID_FLAGS); pop_ctxt(&saved, &exp->exp_obd->obd_lvfs_ctxt, NULL); -- 1.8.3.1