Whamcloud - gitweb
LU-18580 osc: don't use old mtime from lvb 21/57521/4
authorAlex Zhuravlev <bzzz@whamcloud.com>
Thu, 19 Dec 2024 08:20:41 +0000 (11:20 +0300)
committerOleg Drokin <green@whamcloud.com>
Fri, 14 Feb 2025 02:55:35 +0000 (02:55 +0000)
do not use lvb's mtime if it's older than the current one.

Test-Parameters: env=ONLY=39,ONLY_REPEAT=100 testlist=sanityn
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I1da25d7710313d055985a39989326b9b6a52b68c
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/57521
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Mikhail Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/osc/osc_object.c

index 4da9aa5..20c7897 100644 (file)
@@ -338,7 +338,7 @@ static void osc_req_attr_set(const struct lu_env *env, struct cl_object *obj,
        oa = attr->cra_oa;
        opg = osc_cl_page_osc(attr->cra_page, cl2osc(obj));
 
-       if ((flags & OBD_MD_FLMTIME) != 0) {
+       if ((flags & OBD_MD_FLMTIME) != 0 && lvb->lvb_mtime > oa->o_mtime) {
                oa->o_mtime = lvb->lvb_mtime;
                oa->o_valid |= OBD_MD_FLMTIME;
        }