5555 'verify_async' ,
5656 'verify_async_cpus' ,
5757 'verify_pattern' ,
58+ 'verify_pattern_interval' ,
5859 'verify_only' ,
60+ 'verify_fatal' ,
5961]
6062
6163class VerifyTest (FioJobCmdTest ):
@@ -281,6 +283,7 @@ def check_result(self):
281283 "bs" : 4096 ,
282284 "rw" : "write" ,
283285 "output-format" : "json" ,
286+ "verify_fatal" : 1 ,
284287 },
285288 "test_class" : VerifyCSUMTest ,
286289 "success" : SUCCESS_NONZERO ,
@@ -294,6 +297,7 @@ def check_result(self):
294297 "bs" : 4096 ,
295298 "rw" : "randwrite" ,
296299 "output-format" : "json" ,
300+ "verify_fatal" : 1 ,
297301 },
298302 "test_class" : VerifyCSUMTest ,
299303 "success" : SUCCESS_NONZERO ,
@@ -309,6 +313,7 @@ def check_result(self):
309313 "bs" : 4096 ,
310314 "rw" : "write" ,
311315 "output-format" : "json" ,
316+ "verify_fatal" : 1 ,
312317 },
313318 "test_class" : VerifyCSUMTest ,
314319 "success" : SUCCESS_NONZERO ,
@@ -324,6 +329,7 @@ def check_result(self):
324329 "bs" : 4096 ,
325330 "rw" : "randwrite" ,
326331 "output-format" : "json" ,
332+ "verify_fatal" : 1 ,
327333 },
328334 "test_class" : VerifyCSUMTest ,
329335 "success" : SUCCESS_NONZERO ,
@@ -508,10 +514,20 @@ def verify_test_header(test_env, args, csum, mode, sequence):
508514 test ['force_skip' ] = False
509515
510516 test ['fio_opts' ]['verify' ] = csum
511- if csum == 'pattern' :
517+ if csum in ( 'pattern' , 'pattern_hdr' ) :
512518 test ['fio_opts' ]['verify_pattern' ] = '"abcd"-120xdeadface'
519+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
520+ elif csum == 'pattern_interval' :
521+ test ['fio_opts' ]['verify' ] = "pattern_hdr"
522+ test ['fio_opts' ]['verify_pattern' ] = '%o'
523+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
524+ elif csum == 'pattern_interval_nohdr' :
525+ test ['fio_opts' ]['verify' ] = "pattern"
526+ test ['fio_opts' ]['verify_pattern' ] = '%o'
527+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
513528 else :
514529 test ['fio_opts' ].pop ('verify_pattern' , None )
530+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
515531
516532 if 'norandommap' in sequence :
517533 test ['fio_opts' ]['norandommap' ] = 1
@@ -579,10 +595,20 @@ def verify_test_csum(test_env, args, mbs, csum):
579595 test ['force_skip' ] = False
580596 test ['fio_opts' ]['verify' ] = csum
581597
582- if csum == 'pattern' :
598+ if csum in ( 'pattern' , 'pattern_hdr' ) :
583599 test ['fio_opts' ]['verify_pattern' ] = '"abcd"-120xdeadface'
600+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
601+ elif csum == 'pattern_interval' :
602+ test ['fio_opts' ]['verify' ] = "pattern_hdr"
603+ test ['fio_opts' ]['verify_pattern' ] = '%o'
604+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
605+ elif csum == 'pattern_interval_nohdr' :
606+ test ['fio_opts' ]['verify' ] = "pattern"
607+ test ['fio_opts' ]['verify_pattern' ] = '%o'
608+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
584609 else :
585610 test ['fio_opts' ].pop ('verify_pattern' , None )
611+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
586612
587613 if mbs == MANGLE_JOB_BS :
588614 test ['fio_opts' ]['mangle_bs' ] = test ['fio_opts' ]['bs' ]
@@ -610,10 +636,20 @@ def verify_test(test_env, args, ddir, csum):
610636 test ['fio_opts' ]['rw' ] = ddir
611637 test ['fio_opts' ]['verify' ] = csum
612638
613- if csum == 'pattern' :
639+ if csum in ( 'pattern' , 'pattern_hdr' ) :
614640 test ['fio_opts' ]['verify_pattern' ] = '"abcd"-120xdeadface'
641+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
642+ elif csum == 'pattern_interval' :
643+ test ['fio_opts' ]['verify' ] = "pattern_hdr"
644+ test ['fio_opts' ]['verify_pattern' ] = '%o'
645+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
646+ elif csum == 'pattern_interval_nohdr' :
647+ test ['fio_opts' ]['verify' ] = "pattern"
648+ test ['fio_opts' ]['verify_pattern' ] = '%o'
649+ test ['fio_opts' ]['verify_pattern_interval' ] = 512
615650 else :
616651 test ['fio_opts' ].pop ('verify_pattern' , None )
652+ test ['fio_opts' ].pop ('verify_pattern_interval' , None )
617653
618654 # For 100% read data directions we need the write file that was written with
619655 # verify enabled. Use a previous test case for this by telling fio to
@@ -664,6 +700,9 @@ def verify_test(test_env, args, ddir, csum):
664700 'sha3-384' ,
665701 'sha3-512' ,
666702 'pattern' ,
703+ 'pattern_hdr' ,
704+ 'pattern_interval' ,
705+ 'pattern_interval_nohdr' ,
667706 'null' ,
668707 ]
669708
0 commit comments