Re: [PATCH] Fixes bug: stale LAST_POS(f) is not being reset.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/19/2013 03:07 PM, Juan Casse wrote:
> Problem:
> When running fio with ioengine=sync, LAST_POS(f) state is not
> reset after the file is closed. This causes workloads with
> readwrite=randread and loops > 1 to fail verification if the
> state of LAST_POS(f) at the beginning of the next loop is the
> same as the io_u->offset. If that is the case, lseek in not
> invoked, but the file position is at 0 and not at io_u->offset.
> 
> Proposed Solution:
> Other ioengines, such as binject and fusion-aw, set f->engine_data
> to 0 when closing the file. The sync ioengin uses f->engine_data to
> store the LAST_POS(f) state. The proposed solution is to set
> f->engine_data = 0 when closing a file in generic_close_file().

Thanks, good catch and fix. Applied.

-- 
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




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux