Flexible I/O Tester development
 help / color / mirror / Atom feed
* [PATCH 0/8] ZBD support fixes
@ 2019-02-20  7:17 Damien Le Moal
  2019-02-20  7:17 ` [PATCH 1/8] zbd: Fix partition block device handling Damien Le Moal
                   ` (7 more replies)
  0 siblings, 8 replies; 13+ messages in thread
From: Damien Le Moal @ 2019-02-20  7:17 UTC (permalink / raw)
  To: fio, Jens Axboe
  Cc: Bart Van Assche, Matias Bjorling, Shinichiro Kawasaki,
	Dmitry Fomichev

This patch series fixes various problems with fio zbd support discovered
with extensive testing on various test targets (null_blk, iscsi/tcmu
device, SMR disk, partition devices, etc).

In more details:
* Patch 1 fixes the discovery of a block device zone model to correctly
  handle block devices that are partitions.
* Patch 2 addresses a problem with the SG engine and devices not
  supporting the READ CAPACITY(10) command.
* Patch 3 to 5 fix the zbd support tests to avoid incorrect failures
  reports.
* Patch 6 and 7 fix zone locking handling to avoid write command
  reordering with multi-jobs workloads with asynchronous I/O engines.
  These changes do have a significant impact on the performance reported
  for very small (test) devices with a high number of jobs. The worst
  degradation observed result in libaio performance being equal to that
  of the synchronous psync engine. There is however no noticeable
  performance degradation with real disks as the large number of zones
  with these drives do not cause excessive zone lock contention.

All these fixes are necessary for correctly running blktests test cases
with different target devices, and to also implement further blktests
zbd test case to improve test coverage.

As always, comments are very welcome.

Damien Le Moal (4):
  t/zbd: Fix test 2 and 3 result handling
  zbd: Fix zone locking for async I/O engines
  zbd: Avoid async I/O multi-job workload deadlock
  t/zbd: Add multi-job libaio test

Dmitry Fomichev (1):
  sg: Avoid READ CAPACITY failures

Shin'ichiro Kawasaki (3):
  zbd: Fix partition block device handling
  t/zbd: Fix handling of partition devices
  t/zbd: Default to using blkzone tool

 engines/sg.c           |  45 +++++++++-----
 io_u.c                 |  10 +---
 io_u.h                 |  17 +++++-
 ioengines.c            |   6 +-
 t/zbd/functions        |  25 ++++++--
 t/zbd/test-zbd-support |  35 ++++++++---
 zbd.c                  | 129 +++++++++++++++++++++++++++++++++++------
 zbd.h                  |  22 +++++++
 8 files changed, 226 insertions(+), 63 deletions(-)

-- 
2.20.1



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2019-02-21  1:47 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-20  7:17 [PATCH 0/8] ZBD support fixes Damien Le Moal
2019-02-20  7:17 ` [PATCH 1/8] zbd: Fix partition block device handling Damien Le Moal
2019-02-20 16:00   ` Bart Van Assche
2019-02-21  1:47     ` Damien Le Moal
2019-02-20  7:17 ` [PATCH 2/8] sg: Avoid READ CAPACITY failures Damien Le Moal
2019-02-20 16:03   ` Bart Van Assche
2019-02-20  7:17 ` [PATCH 3/8] t/zbd: Fix handling of partition devices Damien Le Moal
2019-02-20  7:17 ` [PATCH 4/8] t/zbd: Fix test 2 and 3 result handling Damien Le Moal
2019-02-20 16:06   ` Bart Van Assche
2019-02-20  7:17 ` [PATCH 5/8] t/zbd: Default to using blkzone tool Damien Le Moal
2019-02-20  7:17 ` [PATCH 6/8] zbd: Fix zone locking for async I/O engines Damien Le Moal
2019-02-20  7:17 ` [PATCH 7/8] zbd: Avoid async I/O multi-job workload deadlock Damien Le Moal
2019-02-20  7:17 ` [PATCH 8/8] t/zbd: Add multi-job libaio test Damien Le Moal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox