If the barrier_freeze thread sleep time is too short, then
it is possible that before the barrier_stat thread scheduled,
the barrier_freeze thread has gone through phase "freezing_p1",
that will cause test failure.
This patch makes the barrier_freeze thread to sleep more long
time, then the barrier_stat thread can check its status properly.
Test-Parameters: trivial
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Iebbc05a1d86553b484bd7093f147e5ac4b58e199
Reviewed-on: https://review.whamcloud.com/27288
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
+ echo "Start barrier_freeze at: $(date)"
#define OBD_FAIL_BARRIER_DELAY 0x2202
#define OBD_FAIL_BARRIER_DELAY 0x2202
- do_facet mgs $LCTL set_param fail_val=3 fail_loc=0x2202
+ do_facet mgs $LCTL set_param fail_val=5 fail_loc=0x2202
do_facet mgs $LCTL barrier_freeze $FSNAME 10 &
do_facet mgs $LCTL barrier_freeze $FSNAME 10 &
local b_status=$(do_facet mgs $LCTL barrier_stat $FSNAME |
awk '/The barrier for/ { print $7 }')
local b_status=$(do_facet mgs $LCTL barrier_stat $FSNAME |
awk '/The barrier for/ { print $7 }')
+ echo "Got barrier status at: $(date)"
[ "$b_status" = "'freezing_p1'" ] ||
error "(1) unexpected barrier status $b_status"
[ "$b_status" = "'freezing_p1'" ] ||
error "(1) unexpected barrier status $b_status"
[ "$b_status" = "'frozen'" ] ||
error "(5) unexpected barrier status $b_status"
[ "$b_status" = "'frozen'" ] ||
error "(5) unexpected barrier status $b_status"
+ echo "Start barrier_thaw at: $(date)"
#define OBD_FAIL_BARRIER_DELAY 0x2202
#define OBD_FAIL_BARRIER_DELAY 0x2202
- do_facet mgs $LCTL set_param fail_val=3 fail_loc=0x2202
+ do_facet mgs $LCTL set_param fail_val=5 fail_loc=0x2202
do_facet mgs $LCTL barrier_thaw $FSNAME &
do_facet mgs $LCTL barrier_thaw $FSNAME &
b_status=$(do_facet mgs $LCTL barrier_stat $FSNAME |
awk '/The barrier for/ { print $7 }')
b_status=$(do_facet mgs $LCTL barrier_stat $FSNAME |
awk '/The barrier for/ { print $7 }')
+ echo "Got barrier status at: $(date)"
[ "$b_status" = "'thawing'" ] ||
error "(6) unexpected barrier status $b_status"
[ "$b_status" = "'thawing'" ] ||
error "(6) unexpected barrier status $b_status"