All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/38] ZBD fixes and improvements
@ 2021-01-27  4:19 Dmitry Fomichev
  2021-01-27  4:19 ` [PATCH v4 01/38] zbd: return ENOMEM if zone buffer allocation fails Dmitry Fomichev
                   ` (39 more replies)
  0 siblings, 40 replies; 43+ messages in thread
From: Dmitry Fomichev @ 2021-01-27  4:19 UTC (permalink / raw)
  To: Jens Axboe, fio
  Cc: Damien Le Moal, Shinichiro Kawasaki, Aravind Ramesh,
	Bart Van Assche, Naohiro Aota, Niklas Cassel, Dmitry Fomichev

Jens,

This series has gone through a few iterations without raising any major
objections and this version only includes cosmetic changes (see below).
Please consider applying this series to fio master branch.

Best regards,
Dmitry

v3 -> v4:

 - address Shinichiro's review feedback:
   * make style improvements in t/zbd/run-tests-against-nullb.
   * correct naming of one of test sections in the same script.
   * improve commit message in "zbd: improve replay range validation"
     patch.
 - add Reviewed-by and Signed-off annotations.

v2 -> v3:

 - fix two libzbc-related bugs in test scripts (found by Shinichiro).
 - modify libzbc ioengine code to allow fio to operate successfully
   against null_blk devices while using this ioengine.
 - add -l option to run-tests-against-nullb script to allow running
   the tests while using libzbc ioengine.
 - add -n option to run-tests-against-nullb to allow running the
   specified tests multiple times. This option is the most useful
   in combination with the existing -s and -t options.
 - fix sporadic failed assertion in test #51 that is easily triggered
   by running run-tests-against-nullb script with -l and -n options.
 - make minor coding style improvements in run-tests-against-nullb.

v1 -> v2:

 - replace both run-tests-against-conventional-nullb and 
   run-tests-against-conventional-nullb with a single script,
   run-tests-against-nullb, that runs test-zbd-support unit tests
   over a variety on different zoned configurations.
 - add five new test cases to test-zbd-support to cover the code
   changes made in zbd.c as a part of this series.
 - mark all test cases in test-zbd-support script that are not
   applicable for the device configuration as SKIP instead of
   reporting them as passed.
 - properly handle writes to conventional zones that cross over
   to sequential zones.
 - make additional improvements in zone locking parts of zbd.c.
 - implement miscellaneous test script enhancements.

This patch series contains bug fixes and refactoring changes
related to support for Zoned Block Devices (ZBD) in fio.
The highlights:

 - fix several errors related to running workloads that span
   a mix of conventional zones and write pointer zones.
 - improve counting of sectors with data (SWD).
 - remove dependencies on particular zone types in the code.
 - add code to gracefully handle offline zones.

Aravind Ramesh (1):
  zbd: initialize sectors with data at start time

Dmitry Fomichev (25):
  zbd: return ENOMEM if zone buffer allocation fails
  zbd: use zbd_zone_nr() more actively in the code
  zbd: add get_zone() helper function
  zbd: introduce zone_unlock()
  zbd: engines/libzbc: don't fail on assert for offline zones
  zbd: remove dependency on zone type during i/o
  zbd: skip offline zones in zbd_convert_to_open_zone()
  zbd: avoid zone buffer overrun
  zbd: don't unlock zone mutex after verify replay
  zbd: use zone_lock() in zbd_process_swd()
  zbd: don't log "zone nnnn is not open" message
  zbd: handle conventional start zone in zbd_convert_to_open_zone()
  zbd: improve replay range validation
  engines/libzbc: enable block backend
  zbd: avoid failing assertion in zbd_convert_to_open_zone()
  zbd: set thread errors in zbd_adjust_block()
  t/zbd: check for error in test #2
  t/zbd: add run-tests-against-nullb script
  t/zbd: add an option to bail on a failed test
  t/zbd: prevent test #31 from looping
  t/zbd: add checks for offline zone condition
  t/zbd: add test #54 to exercise ZBD verification
  t/zbd: show elapsed time in test-zbd-support
  t/zbd: increase timeout in test #48
  t/zbd: avoid looping on invalid command line options

Shin'ichiro Kawasaki (12):
  zbd: do not lock conventional zones on I/O adjustment
  zbd: do not set zbd handlers for conventional zones
  zbd: count sectors with data for write pointer zones
  zbd: initialize min_zone and max_zone for all zone types
  zbd: disable crossing from conventional to sequential zones
  t/zbd: add -t option to run-tests-against-nullb
  t/zbd: skip tests when test prerequisites are not met
  t/zbd: skip tests that need too many sequential zones
  t/zbd: test that conventional zones are not locked during random i/o
  t/zbd: test that zone_reset_threshold calculation is correct
  t/zbd: test random I/O direction in all-conventional case
  t/zbd: fix wrong units in test case #37

 Makefile                              |   5 +-
 engines/libzbc.c                      |   5 +-
 oslib/linux-blkzoned.c                |   2 +-
 t/run-fio-tests.py                    |   8 +-
 t/zbd/functions                       |  56 +++-
 t/zbd/run-tests-against-nullb         | 354 +++++++++++++++++++++++++
 t/zbd/run-tests-against-regular-nullb |  27 --
 t/zbd/run-tests-against-zoned-nullb   |  53 ----
 t/zbd/test-zbd-support                | 301 +++++++++++++++++++---
 zbd.c                                 | 357 ++++++++++++++++----------
 zbd.h                                 |   5 +
 11 files changed, 912 insertions(+), 261 deletions(-)
 create mode 100755 t/zbd/run-tests-against-nullb
 delete mode 100755 t/zbd/run-tests-against-regular-nullb
 delete mode 100755 t/zbd/run-tests-against-zoned-nullb

-- 
2.28.0



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

end of thread, other threads:[~2021-01-30  3:44 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-27  4:19 [PATCH v4 00/38] ZBD fixes and improvements Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 01/38] zbd: return ENOMEM if zone buffer allocation fails Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 02/38] zbd: use zbd_zone_nr() more actively in the code Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 03/38] zbd: add get_zone() helper function Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 04/38] zbd: introduce zone_unlock() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 05/38] zbd: engines/libzbc: don't fail on assert for offline zones Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 06/38] zbd: remove dependency on zone type during i/o Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 07/38] zbd: skip offline zones in zbd_convert_to_open_zone() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 08/38] zbd: avoid zone buffer overrun Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 09/38] zbd: don't unlock zone mutex after verify replay Dmitry Fomichev
2021-01-29 16:13   ` Bart Van Assche
2021-01-30  3:44     ` Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 10/38] zbd: do not lock conventional zones on I/O adjustment Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 11/38] zbd: do not set zbd handlers for conventional zones Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 12/38] zbd: count sectors with data for write pointer zones Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 13/38] zbd: initialize min_zone and max_zone for all zone types Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 14/38] zbd: initialize sectors with data at start time Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 15/38] zbd: use zone_lock() in zbd_process_swd() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 16/38] zbd: disable crossing from conventional to sequential zones Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 17/38] zbd: don't log "zone nnnn is not open" message Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 18/38] zbd: handle conventional start zone in zbd_convert_to_open_zone() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 19/38] zbd: improve replay range validation Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 20/38] engines/libzbc: enable block backend Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 21/38] zbd: avoid failing assertion in zbd_convert_to_open_zone() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 22/38] zbd: set thread errors in zbd_adjust_block() Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 23/38] t/zbd: check for error in test #2 Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 24/38] t/zbd: add run-tests-against-nullb script Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 25/38] t/zbd: add -t option to run-tests-against-nullb Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 26/38] t/zbd: skip tests when test prerequisites are not met Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 27/38] t/zbd: skip tests that need too many sequential zones Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 28/38] t/zbd: test that conventional zones are not locked during random i/o Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 29/38] t/zbd: test that zone_reset_threshold calculation is correct Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 30/38] t/zbd: test random I/O direction in all-conventional case Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 31/38] t/zbd: fix wrong units in test case #37 Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 32/38] t/zbd: add an option to bail on a failed test Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 33/38] t/zbd: prevent test #31 from looping Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 34/38] t/zbd: add checks for offline zone condition Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 35/38] t/zbd: add test #54 to exercise ZBD verification Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 36/38] t/zbd: show elapsed time in test-zbd-support Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 37/38] t/zbd: increase timeout in test #48 Dmitry Fomichev
2021-01-27  4:19 ` [PATCH v4 38/38] t/zbd: avoid looping on invalid command line options Dmitry Fomichev
2021-01-29  0:03 ` [PATCH v4 00/38] ZBD fixes and improvements Damien Le Moal
2021-01-29 15:15 ` Jens Axboe

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.