On 7/6/18 3:15 PM, Jeff Furlong wrote: > Hi All, > Currently it looks like fio has a max blocksize of uint32_t. So commands such as > > # fio --name=test --ioengine=libaio --direct=1 --rw=trim --iodepth=1 --bs=4g --filename=/dev/nvme1n1 --number_ios=1 max value out of range: 4294967296 (4294967295 max) > fio: failed parsing bs=4g > > will fail. While I wouldn't normally do 4GB reads/writes, I would like to issue 4GB trims. Otherwise I need to invoke a tool such as blkdiscard, but then summarizing all job IO is very difficult. I went through the process of unsuccessfully changing the blocksize variables to uint64_t (failed getting buflen), but not sure if I missed a minor detail or a major roadblock that would prevent it. How could >4GB blocksizes be supported? Thanks. You'd just need to change the type of the bs related options, and all of the structs that hold it. Not impossible at all, an pretty straight forward. So I'd say that what you did would likely work, though it's hard to ensure that you didn't miss a conversion somewhere. Post the patch and we can take a look at it. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html