Re: [PATCH v4 00/38] ZBD fixes and improvements

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

 



On 2021/01/27 13:19, Dmitry Fomichev wrote:
> 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.

Jens,

Could you pick this up please ? This fixes a few bugs that we are seeing in the
field. And the tests are improved too for us to run weekly on each kernel rc.

Thanks !


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


-- 
Damien Le Moal
Western Digital Research




[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