Recent changes (master)

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

  verify: bump up verify state file version (2025-08-09 08:27:59 -0600)

are available in the Git repository at:

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

for you to fetch changes up to fef641096d925d737d81683626eca52b6e358e52:

  configure: skip isal64 check when isal check fails (2025-08-11 12:42:06 -0400)

----------------------------------------------------------------
Vincent Fu (3):
      engines/io_uring: fix error value
      engines/io_uring: fix memory leaks during init
      configure: skip isal64 check when isal check fails

 configure          | 1 +
 engines/io_uring.c | 5 ++++-
 2 files changed, 5 insertions(+), 1 deletion(-)

---

Diff of recent changes:

diff --git a/configure b/configure
index 7a295eab..3209e225 100755
--- a/configure
+++ b/configure
@@ -2692,6 +2692,7 @@ if test "$isal" != "no" ; then
     LIBS="-lisal $LIBS"
   else
     isal="no"
+    isal64="no"
   fi
 fi
 print_config "isal" "$isal"
diff --git a/engines/io_uring.c b/engines/io_uring.c
index 5d05f5c0..02f80bda 100644
--- a/engines/io_uring.c
+++ b/engines/io_uring.c
@@ -663,7 +663,7 @@ static void fio_ioring_validate_md(struct thread_data *td, struct io_u *io_u)
 	if (data->pi_type && (io_u->ddir == DDIR_READ) && !o->pi_act) {
 		ret = fio_nvme_pi_verify(data, io_u);
 		if (ret)
-			io_u->error = ret;
+			io_u->error = -ret;
 	}
 
 	return;
@@ -1499,6 +1499,7 @@ static int fio_ioring_init(struct thread_data *td)
 	if (!ld->is_uring_cmd_eng && o->md_per_io_size) {
 		if (o->apptag_mask != 0xffff) {
 			log_err("fio: io_uring with metadata requires an apptag_mask of 0xffff\n");
+			free(ld->io_u_index);
 			free(ld);
 			return 1;
 		}
@@ -1517,6 +1518,7 @@ static int fio_ioring_init(struct thread_data *td)
 			md_size += td->o.mem_align - page_size;
 		ld->md_buf = malloc(md_size);
 		if (!ld->md_buf) {
+			free(ld->io_u_index);
 			free(ld);
 			return 1;
 		}
@@ -1524,6 +1526,7 @@ static int fio_ioring_init(struct thread_data *td)
 		if (!ld->is_uring_cmd_eng) {
 			ld->pi_attr = calloc(ld->iodepth, sizeof(struct io_uring_attr_pi));
 			if (!ld->pi_attr) {
+				free(ld->io_u_index);
 				free(ld->md_buf);
 				free(ld);
 				return 1;