Hi Robert, Since I want to use blocksize_unaligned=1 , I had to get rid of direct=1 : Per man page : blocksize_unaligned, bs_unaligned If set, any size in blocksize_range may be used. This typically won't work with direct I/O, as that normally requires sector alignment. # fio --name=job1 --filename=/dev/nvme0n1 --rw=randwrite --ioengine=libaio --number_ios=1 --debug=io --bs_unaligned=1 --bs=1029 --direct=1 fio: set debug option io fio: bs_unaligned may not work with raw io Thanks smitha On Wed, Oct 16, 2019 at 8:12 AM Elliott, Robert (Servers) <elliott@xxxxxxx> wrote: > > > > > -----Original Message----- > > From: fio-owner@xxxxxxxxxxxxxxx [mailto:fio-owner@xxxxxxxxxxxxxxx] On Behalf Of smitha sunder > > Sent: Tuesday, October 15, 2019 4:37 PM > > To: fio <fio@xxxxxxxxxxxxxxx> > > Subject: unaligned IO and starting LBA > > > > Hello, > > > > > > > > I have a 512 byte formatted nvme drive and I want to send an unaligned > > IO and here’s the fio command line I am using , fio version fio-3.7 > > > > # fio --name=job1 --filename=/dev/nvme0n1 --rw=randwrite > > --ioengine=libaio --number_ios=1 --debug=io --bs_unaligned=1 > > --bs=1029 > ... > > Shouldn’t I see D7BD7CE as the starting LBA for the write based on the > > above offset (0x1af7af9cec) ? > > Without direct=1 you're exercising the OS page cache logic, > not directly accessing the drive. >