Recent changes (master)

Jens Axboe <[email protected]> Fri, 5 Sep 2025 06:00:01 -0600 (MDT)
Newsgroups org.kernel.vger.fio
Message-ID <[email protected]>
The following changes since commit d4b1dce71cf9fa0f0ba1f53286315a3ebb2147dd:

  Merge branch 'sprandom-fixes' of https://github.com/tomas-winkler-sndk/fio (2025-09-03 20:33:23 -0400)

are available in the Git repository at:

  git://git.kernel.dk/fio.git master

for you to fetch changes up to 83a809bea583b06f9893003fd76eab7c36c212b1:

  Merge branch 'fix_verify-state' of https://github.com/sitsofe/fio (2025-09-04 17:27:53 -0600)

----------------------------------------------------------------
Jens Axboe (1):
      Merge branch 'fix_verify-state' of https://github.com/sitsofe/fio

Sitsofe Wheeler (2):
      t/verify-state: synchronise verify state version
      t/verify-state: improve verify state inflight output

Vincent Fu (1):
      sprandom: wait to free validity_dist

 fio.h            |  2 --
 sprandom.c       |  3 +--
 t/verify-state.c | 11 ++++++++---
 verify-state.h   |  2 ++
 4 files changed, 11 insertions(+), 7 deletions(-)

---

Diff of recent changes:

diff --git a/fio.h b/fio.h
index 44788899..037678d1 100644
--- a/fio.h
+++ b/fio.h
@@ -73,8 +73,6 @@ struct fio_sem;
 
 #define MAX_TRIM_RANGE	256
 
-#define INVALID_NUMBERIO UINT64_MAX
-
 /*
  * Range for trim command
  */
diff --git a/sprandom.c b/sprandom.c
index 05e8c88a..7262eee3 100644
--- a/sprandom.c
+++ b/sprandom.c
@@ -602,8 +602,6 @@ static int sprandom_setup(struct sprandom_info *spr_info, uint64_t logical_size,
 		double inv = (1.0 - validity_dist[i]) * (double)PCT_PRECISION;
 		spr_info->invalid_pct[i] = (int)round(inv);
 	}
-	free(validity_dist);
-	validity_dist = NULL;
 
 	region_sz = physical_size / spr_info->num_regions;
 	region_write_count = region_sz / align_bs;
@@ -641,6 +639,7 @@ static int sprandom_setup(struct sprandom_info *spr_info, uint64_t logical_size,
 		total_alloc,
 		bytes2str_simple(bytes2str_buf, sizeof(bytes2str_buf), total_alloc));
 
+	free(validity_dist);
 	return 0;
 err:
 	free(validity_dist);
diff --git a/t/verify-state.c b/t/verify-state.c
index e1b92ee8..9d76e501 100644
--- a/t/verify-state.c
+++ b/t/verify-state.c
@@ -29,8 +29,13 @@ static void show_s(struct thread_io_list *s, unsigned int no_s)
 	if (!s->depth)
 		return;
 	for (i = s->depth - 1; i >= 0; i--) {
-		printf("\t%llu\n",
-				(unsigned long long) s->inflight[i].numberio);
+		uint64_t numberio;
+		numberio = s->inflight[i].numberio;
+		if (numberio == INVALID_NUMBERIO)
+			printf("\tNot inflight\n");
+		else
+			printf("\t%llu\n",
+			       (unsigned long long) s->inflight[i].numberio);
 	}
 }
 
@@ -84,7 +89,7 @@ static void show_verify_state(void *buf, size_t size)
 		return;
 	}
 
-	if (hdr->version == 0x04)
+	if (hdr->version == VSTATE_HDR_VERSION)
 		show(s, size);
 	else
 		log_err("Unsupported version %d\n", (int) hdr->version);
diff --git a/verify-state.h b/verify-state.h
index d8997ace..27eb9e9a 100644
--- a/verify-state.h
+++ b/verify-state.h
@@ -101,4 +101,6 @@ static inline void verify_state_gen_name(char *out, size_t size,
 	out[size - 1] = '\0';
 }
 
+#define INVALID_NUMBERIO UINT64_MAX
+
 #endif