X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=blkrawverify.c;h=ed5d258da438dc1b3b9c5242ae7b404079563932;hb=2cf87e6092da7b36d5ef10c830ddf12d9e18121d;hp=984dbffcddf66bc191154360fc323f4f2efaadec;hpb=37081bf5636d1bef1dd141a03a64b3c516867ac9;p=blktrace.git diff --git a/blkrawverify.c b/blkrawverify.c index 984dbff..ed5d258 100644 --- a/blkrawverify.c +++ b/blkrawverify.c @@ -39,7 +39,7 @@ int data_is_native = -1; static struct trace_info traces[] = { TRACE_TO_STRING( BLK_TC_READ ), TRACE_TO_STRING( BLK_TC_WRITE ), - TRACE_TO_STRING( BLK_TC_BARRIER ), + TRACE_TO_STRING( BLK_TC_FLUSH ), TRACE_TO_STRING( BLK_TC_SYNC ), TRACE_TO_STRING( BLK_TC_QUEUE ), TRACE_TO_STRING( BLK_TC_REQUEUE ), @@ -50,6 +50,7 @@ static struct trace_info traces[] = { TRACE_TO_STRING( BLK_TC_AHEAD ), TRACE_TO_STRING( BLK_TC_META ), TRACE_TO_STRING( BLK_TC_DISCARD ), + TRACE_TO_STRING( BLK_TC_FUA ), }; #define N_TRACES (sizeof(traces) / sizeof(struct trace_info)) @@ -86,7 +87,7 @@ static char *act_to_str(__u32 action) unsigned int act = action & 0xffff; unsigned int trace = (action >> BLK_TC_SHIFT) & 0xffff; - if (act <= N_ACTS) { + if (act < N_ACTS) { sprintf(buf, "%s ", acts[act].string); for (i = 0; i < N_TRACES; i++) if (trace & (1 << i)) { @@ -200,6 +201,7 @@ static int process(FILE **fp, char *devname, char *file, unsigned int cpu) if (n == 0) { INC_BAD("bad pdu"); nbad_seq++; + free(pdu_buf); break; } free(pdu_buf); @@ -296,8 +298,14 @@ int main(int argc, char *argv[]) printf("Verifying %s\n", devname); fflush(stdout); for (cpu = 0; ; cpu++) { sprintf(fname, "%s.blktrace.%d", devname, cpu); - if (stat(fname, &st) < 0) + if (stat(fname, &st) < 0) { + if (cpu == 0) { + fprintf(stderr, "No tracefiles found for %s\n", + devname); + rval = 1; + } break; + } printf(" CPU %d ", cpu); fflush(stdout); nbad = process(&ofp, devname, fname, cpu); if (nbad) {