From 05098d4a6d0e02281831ffefc1d36b598296fc2f Mon Sep 17 00:00:00 2001
From: ericm <ericm>
Date: Fri, 10 Oct 2008 17:36:51 +0000
Subject: [PATCH] branch: HEAD AT test sleep use current AT service time.
 b=16990 o=Brian Behlendorf <behlendorf1@llnl.gov> r=nathan r=ericm

---
 lustre/tests/replay-single.sh | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/lustre/tests/replay-single.sh b/lustre/tests/replay-single.sh
index fa99f52e15..7551bb9128 100755
--- a/lustre/tests/replay-single.sh
+++ b/lustre/tests/replay-single.sh
@@ -1526,8 +1526,13 @@ test_65a() #bug 3055
     $LCTL dk > /dev/null
     debugsave
     sysctl -w lnet.debug="+other"
-    # slow down a request
-    do_facet mds sysctl -w lustre.fail_val=30000
+    # Slow down a request to the current service time, this is critical
+    # because previous tests may have caused this value to increase.
+    REQ_DELAY=`lctl get_param -n mdc.${FSNAME}-MDT0000-mdc-*.timeouts |
+               awk '/portal 12/ {print $5}'`
+    REQ_DELAY=$((${REQ_DELAY} + 5))
+
+    do_facet mds lctl set_param fail_val=$((${REQ_DELAY} * 1000))
 #define OBD_FAIL_PTLRPC_PAUSE_REQ        0x50a
     do_facet mds sysctl -w lustre.fail_loc=0x8000050a
     createmany -o $DIR/$tfile 10 > /dev/null
@@ -1535,7 +1540,7 @@ test_65a() #bug 3055
     # check for log message
     $LCTL dk | grep "Early reply #" || error "No early reply"
     debugrestore
-    # client should show 30s estimates
+    # client should show REQ_DELAY estimates
     lctl get_param -n mdc.${FSNAME}-MDT0000-mdc-*.timeouts | grep portal
     sleep 9
     lctl get_param -n mdc.${FSNAME}-MDT0000-mdc-*.timeouts | grep portal
@@ -1549,8 +1554,13 @@ test_65b() #bug 3055
     debugsave
     sysctl -w lnet.debug="other trace"
     $LCTL dk > /dev/null
-    # slow down bulk i/o
-    do_facet ost1 sysctl -w lustre.fail_val=30
+    # Slow down a request to the current service time, this is critical
+    # because previous tests may have caused this value to increase.
+    REQ_DELAY=`lctl get_param -n osc.${FSNAME}-OST0000-osc-*.timeouts |
+               awk '/portal 6/ {print $5}'`
+    REQ_DELAY=$((${REQ_DELAY} + 5))
+
+    do_facet ost1 lctl set_param fail_val=${REQ_DELAY}
 #define OBD_FAIL_OST_BRW_PAUSE_PACK      0x224
     do_facet ost1 sysctl -w lustre.fail_loc=0x224
 
@@ -1563,7 +1573,7 @@ test_65b() #bug 3055
     # check for log message
     $LCTL dk | grep "Early reply #" || error "No early reply"
     debugrestore
-    # client should show 30s estimates
+    # client should show REQ_DELAY estimates
     lctl get_param -n osc.${FSNAME}-OST0000-osc-*.timeouts | grep portal
 }
 run_test 65b "AT: verify early replies on packed reply / bulk"
-- 
GitLab