* Buggy behavior with zone, random IOs since specific commit
@ 2015-03-19 4:24 Akash Verma
2015-03-20 16:37 ` Jens Axboe
0 siblings, 1 reply; 4+ messages in thread
From: Akash Verma @ 2015-03-19 4:24 UTC (permalink / raw)
To: fio; +Cc: Brian Fulton
This commit seems to have broken the behavior of random IOs with zone options:
4c8be5b1569f0aca8c7769803e57b79280d1f668
Using this example job file:
[zoned_out]
rw=read
bs=1k
offset=510k
ioengine=sync
zonesize=1k
zonerange=512k
zoneskip=512k
write_iolog=ios_meec.iolog
filename=10MFile
where 10M file was created as:
dd if=/dev/zero of=./10MFile bs=1M count=10
Prior to the above commit, FIO does one read per zone, and the job
exits after the last zone. This is as expected.
Post the above commit, FIO loops back to the first zone and may or may
not succeed in finding a valid offset to seek to. With offset=510k, it
fails on the first loop-back. With offset=100k, it fails on the
second; with no offset, it did about a 100 loops. With --debug=random,
I see messages like:
file 1885 get file 10MFile, ref=1
random 1885 off rand 1823528783
io 1885 get_next_offset: offset 18446744073708827648 >= size 10485760
io 1885 io_u 0x8c8e80, failed getting offset
There should be no loop-back happening at all unless this is specified
as desired (e.g. using runtime and time_based, or io_limit, or
number_ios).
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Buggy behavior with zone, random IOs since specific commit
2015-03-19 4:24 Buggy behavior with zone, random IOs since specific commit Akash Verma
@ 2015-03-20 16:37 ` Jens Axboe
2015-03-28 1:25 ` Akash Verma
2015-03-28 1:26 ` Akash Verma
0 siblings, 2 replies; 4+ messages in thread
From: Jens Axboe @ 2015-03-20 16:37 UTC (permalink / raw)
To: Akash Verma, fio; +Cc: Brian Fulton
On 03/18/2015 10:24 PM, Akash Verma wrote:
> This commit seems to have broken the behavior of random IOs with zone options:
>
> 4c8be5b1569f0aca8c7769803e57b79280d1f668
>
> Using this example job file:
> [zoned_out]
> rw=read
> bs=1k
> offset=510k
> ioengine=sync
> zonesize=1k
> zonerange=512k
> zoneskip=512k
> write_iolog=ios_meec.iolog
> filename=10MFile
>
> where 10M file was created as:
> dd if=/dev/zero of=./10MFile bs=1M count=10
>
> Prior to the above commit, FIO does one read per zone, and the job
> exits after the last zone. This is as expected.
>
> Post the above commit, FIO loops back to the first zone and may or may
> not succeed in finding a valid offset to seek to. With offset=510k, it
> fails on the first loop-back. With offset=100k, it fails on the
> second; with no offset, it did about a 100 loops. With --debug=random,
> I see messages like:
>
> file 1885 get file 10MFile, ref=1
> random 1885 off rand 1823528783
> io 1885 get_next_offset: offset 18446744073708827648 >= size 10485760
> io 1885 io_u 0x8c8e80, failed getting offset
>
> There should be no loop-back happening at all unless this is specified
> as desired (e.g. using runtime and time_based, or io_limit, or
> number_ios).
It might be more work, but yes, that I think is a good start. Care to
send a patch to stop looping unless we're forced to? At least that will
fix the case of buggy looping.
--
Jens Axboe
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Buggy behavior with zone, random IOs since specific commit
2015-03-20 16:37 ` Jens Axboe
@ 2015-03-28 1:25 ` Akash Verma
2015-03-28 1:26 ` Akash Verma
1 sibling, 0 replies; 4+ messages in thread
From: Akash Verma @ 2015-03-28 1:25 UTC (permalink / raw)
To: Jens Axboe; +Cc: fio, Brian Fulton
[-- Attachment #1: Type: text/plain, Size: 1676 bytes --]
Hi Jens,
Apologies for the late response - it doesn't look like we'll be able to
work on this bug anytime soon.
On Fri, Mar 20, 2015 at 9:37 AM, Jens Axboe <axboe@kernel.dk> wrote:
> On 03/18/2015 10:24 PM, Akash Verma wrote:
>
>> This commit seems to have broken the behavior of random IOs with zone
>> options:
>>
>> 4c8be5b1569f0aca8c7769803e57b79280d1f668
>>
>> Using this example job file:
>> [zoned_out]
>> rw=read
>> bs=1k
>> offset=510k
>> ioengine=sync
>> zonesize=1k
>> zonerange=512k
>> zoneskip=512k
>> write_iolog=ios_meec.iolog
>> filename=10MFile
>>
>> where 10M file was created as:
>> dd if=/dev/zero of=./10MFile bs=1M count=10
>>
>> Prior to the above commit, FIO does one read per zone, and the job
>> exits after the last zone. This is as expected.
>>
>> Post the above commit, FIO loops back to the first zone and may or may
>> not succeed in finding a valid offset to seek to. With offset=510k, it
>> fails on the first loop-back. With offset=100k, it fails on the
>> second; with no offset, it did about a 100 loops. With --debug=random,
>> I see messages like:
>>
>> file 1885 get file 10MFile, ref=1
>> random 1885 off rand 1823528783
>> io 1885 get_next_offset: offset 18446744073708827648 >= size
>> 10485760
>> io 1885 io_u 0x8c8e80, failed getting offset
>>
>> There should be no loop-back happening at all unless this is specified
>> as desired (e.g. using runtime and time_based, or io_limit, or
>> number_ios).
>>
>
> It might be more work, but yes, that I think is a good start. Care to send
> a patch to stop looping unless we're forced to? At least that will fix the
> case of buggy looping.
>
> --
> Jens Axboe
>
>
[-- Attachment #2: Type: text/html, Size: 2326 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Buggy behavior with zone, random IOs since specific commit
2015-03-20 16:37 ` Jens Axboe
2015-03-28 1:25 ` Akash Verma
@ 2015-03-28 1:26 ` Akash Verma
1 sibling, 0 replies; 4+ messages in thread
From: Akash Verma @ 2015-03-28 1:26 UTC (permalink / raw)
To: Jens Axboe; +Cc: fio, Brian Fulton
Hi Jens,
Apologies for the late response - it doesn't look like we'll be able
to work on this bug anytime soon.
On Fri, Mar 20, 2015 at 9:37 AM, Jens Axboe <axboe@kernel.dk> wrote:
> On 03/18/2015 10:24 PM, Akash Verma wrote:
>>
>> This commit seems to have broken the behavior of random IOs with zone
>> options:
>>
>> 4c8be5b1569f0aca8c7769803e57b79280d1f668
>>
>> Using this example job file:
>> [zoned_out]
>> rw=read
>> bs=1k
>> offset=510k
>> ioengine=sync
>> zonesize=1k
>> zonerange=512k
>> zoneskip=512k
>> write_iolog=ios_meec.iolog
>> filename=10MFile
>>
>> where 10M file was created as:
>> dd if=/dev/zero of=./10MFile bs=1M count=10
>>
>> Prior to the above commit, FIO does one read per zone, and the job
>> exits after the last zone. This is as expected.
>>
>> Post the above commit, FIO loops back to the first zone and may or may
>> not succeed in finding a valid offset to seek to. With offset=510k, it
>> fails on the first loop-back. With offset=100k, it fails on the
>> second; with no offset, it did about a 100 loops. With --debug=random,
>> I see messages like:
>>
>> file 1885 get file 10MFile, ref=1
>> random 1885 off rand 1823528783
>> io 1885 get_next_offset: offset 18446744073708827648 >= size
>> 10485760
>> io 1885 io_u 0x8c8e80, failed getting offset
>>
>> There should be no loop-back happening at all unless this is specified
>> as desired (e.g. using runtime and time_based, or io_limit, or
>> number_ios).
>
>
> It might be more work, but yes, that I think is a good start. Care to send a
> patch to stop looping unless we're forced to? At least that will fix the
> case of buggy looping.
>
> --
> Jens Axboe
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-03-28 1:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-19 4:24 Buggy behavior with zone, random IOs since specific commit Akash Verma
2015-03-20 16:37 ` Jens Axboe
2015-03-28 1:25 ` Akash Verma
2015-03-28 1:26 ` Akash Verma
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.