test_59() { # bug 10589
zconf_mount `hostname` $MOUNT2 || error "Failed to mount $MOUNT2"
+ echo $DIR2 | grep -q $MOUNT2 || error "DIR2 is not set properly: $DIR2"
sysctl -w lustre.fail_loc=0x311
- writes=$(LANG=C dd if=/dev/zero of=$DIR2/$tfile count=1 2>&1 | awk -F '+' '/out/ {print $1}')
+ writes=$(LANG=C dd if=/dev/zero of=$DIR2/$tfile count=1 2>&1)
+ [ $? = 0 ] || error "dd write failed"
+ writes=$(echo $writes | awk -F '+' '/out/ {print $1}')
sysctl -w lustre.fail_loc=0
sync
- zconf_umount `hostname` $DIR2 -f
- reads=$(LANG=C dd if=$DIR/$tfile of=/dev/null 2>&1 | awk -F '+' '/in/ {print $1}')
+ zconf_umount `hostname` $MOUNT2 -f
+ reads=$(LANG=C dd if=$DIR/$tfile of=/dev/null 2>&1)
+ [ $? = 0 ] || error "dd read failed"
+ reads=$(echo $reads | awk -F '+' '/in/ {print $1}')
[ "$reads" -eq "$writes" ] || error "read" $reads "blocks, must be" $writes
}
run_test 59 "Read cancel race on client eviction"