fsstress: show the real file id and parid in rmdir() and unlink()
authorkaixuxia <xiakaixu1987@gmail.com>
Tue, 5 Nov 2019 02:41:26 +0000 (10:41 +0800)
committerEryu Guan <guaneryu@gmail.com>
Sun, 10 Nov 2019 13:15:14 +0000 (21:15 +0800)
The source file id and parentid are overwritten by del_from_flist()
call, so should show the actually values.

Signed-off-by: kaixuxia <kaixuxia@tencent.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
ltp/fsstress.c

index 012557199aafa2d083ec8681985486b9703c22e9..9f5ec1d0a9c35f83a7d1a4e120a3b752f5258fc0 100644 (file)
@@ -4499,6 +4499,8 @@ rmdir_f(int opno, long r)
        int             e;
        pathname_t      f;
        fent_t          *fep;
+       int             oldid;
+       int             oldparid;
        int             v;
 
        init_pathname(&f);
@@ -4510,13 +4512,16 @@ rmdir_f(int opno, long r)
        }
        e = rmdir_path(&f) < 0 ? errno : 0;
        check_cwd();
-       if (e == 0)
+       if (e == 0) {
+               oldid = fep->id;
+               oldparid = fep->parent;
                del_from_flist(FT_DIR, fep - flist[FT_DIR].fents);
+       }
        if (v) {
                printf("%d/%d: rmdir %s %d\n", procid, opno, f.path, e);
                if (e == 0)
                        printf("%d/%d: rmdir del entry: id=%d,parent=%d\n",
-                               procid, opno, fep->id, fep->parent);
+                               procid, opno, oldid, oldparid);
        }
        free_pathname(&f);
 }
@@ -4746,6 +4751,8 @@ unlink_f(int opno, long r)
        pathname_t      f;
        fent_t          *fep;
        flist_t         *flp;
+       int             oldid;
+       int             oldparid;
        int             v;
 
        init_pathname(&f);
@@ -4757,13 +4764,16 @@ unlink_f(int opno, long r)
        }
        e = unlink_path(&f) < 0 ? errno : 0;
        check_cwd();
-       if (e == 0)
+       if (e == 0) {
+               oldid = fep->id;
+               oldparid = fep->parent;
                del_from_flist(flp - flist, fep - flp->fents);
+       }
        if (v) {
                printf("%d/%d: unlink %s %d\n", procid, opno, f.path, e);
                if (e == 0)
                        printf("%d/%d: unlink del entry: id=%d,parent=%d\n",
-                               procid, opno, fep->id, fep->parent);
+                               procid, opno, oldid, oldparid);
        }
        free_pathname(&f);
 }