Skip to content

Commit

Permalink
zvol_os.c: Increase optimal IO size
Browse files Browse the repository at this point in the history
Since zvol read and write operations can process up to (DMU_MAX_ACCESS /
2) bytes in a single operation, the current optimal I/O size is set too
low. SCST directly reports this value as the optimal transfer length for
the target SCSI device. Increasing it from the previous volblocksize
significantly improves performance for VDIv2 workloads.

Signed-off-by: Ameer Hamza <[email protected]>
  • Loading branch information
ixhamza committed Nov 13, 2024
1 parent ce92af2 commit a42ca2c
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion module/os/linux/zfs/zvol_os.c
Original file line number Diff line number Diff line change
Expand Up @@ -1193,7 +1193,7 @@ zvol_queue_limits_init(zvol_queue_limits_t *limits, zvol_state_t *zv,
limits->zql_max_segment_size = UINT_MAX;
}

limits->zql_io_opt = zv->zv_volblocksize;
limits->zql_io_opt = DMU_MAX_ACCESS/2;

limits->zql_physical_block_size = zv->zv_volblocksize;
limits->zql_max_discard_sectors =
Expand Down

0 comments on commit a42ca2c

Please sign in to comment.