fio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
To: Niklas Cassel <Niklas.Cassel@wdc.com>
Cc: "fio@vger.kernel.org" <fio@vger.kernel.org>,
	Jens Axboe <axboe@kernel.dk>, Vincent Fu <vincentfu@gmail.com>,
	Damien Le Moal <dlemoal@kernel.org>,
	Dmitry Fomichev <Dmitry.Fomichev@wdc.com>
Subject: Re: [PATCH 04/13] docs: modify max_open_zones option description
Date: Wed, 19 Jul 2023 03:15:51 +0000	[thread overview]
Message-ID: <mo2a2vkwapg42nj55qil6izm2ivkmcnmhssx6utjswpmcmkh2q@7xiz32u3rsn5> (raw)
In-Reply-To: <ZLaZ+rxgwKALiHG2@x1-carbon>

On Jul 18, 2023 / 13:56, Niklas Cassel wrote:
> On Fri, Jul 07, 2023 at 12:14:56PM +0900, Shin'ichiro Kawasaki wrote:
> > A recent commit modified the max_open_zones option to improve handling
> > of zoned block devices with max_active_zones limit. Modify description
> > of the option to meet the change.
> > 
> > For that purpose, explain the relation between the max_open_zones option
> > and the device side limits max_active_zones and max_open_zones. Also
> > mention about three zone conditions 'implicit open', 'explict open' and
> > 'closed'. And replace the word 'zone state' with 'zone condition'.
> > 
> > Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
> > ---
> >  HOWTO.rst | 44 ++++++++++++++++++++++++++++----------------
> >  fio.1     | 36 ++++++++++++++++++++++++------------
> >  2 files changed, 52 insertions(+), 28 deletions(-)
> > 
> > diff --git a/HOWTO.rst b/HOWTO.rst
> > index 2e1e55c2..4d50ad41 100644
> > --- a/HOWTO.rst
> > +++ b/HOWTO.rst
> > @@ -1056,22 +1056,34 @@ Target file/device
> >  
> >  .. option:: max_open_zones=int
> >  
> > -	A zone of a zoned block device is in the open state when it is partially
> > -	written (i.e. not all sectors of the zone have been written). Zoned
> > -	block devices may have a limit on the total number of zones that can
> > -	be simultaneously in the open state, that is, the number of zones that
> > -	can be written to simultaneously. The :option:`max_open_zones` parameter
> > -	limits the number of zones to which write commands are issued by all fio
> > -	jobs, that is, limits the number of zones that will be in the open
> > -	state. This parameter is relevant only if the :option:`zonemode` =zbd is
> > -	used. The default value is always equal to maximum number of open zones
> > -	of the target zoned block device and a value higher than this limit
> > -	cannot be specified by users unless the option
> > -	:option:`ignore_zone_limits` is specified. When
> > -	:option:`ignore_zone_limits` is specified or the target device has no
> > -	limit on the number of zones that can be in an open state,
> > -	:option:`max_open_zones` can specify 0 to disable any limit on the
> > -	number of zones that can be simultaneously written to by all jobs.
> > +	When a zone of a zoned block device is partially written (i.e. not all
> > +	sectors of the zone have been written), the zone is in one of three
> > +	conditions: 'implicit open', 'explicit open' or 'closed'. Zoned block
> > +	devices may have a limit called 'max_open_zones' (same name as the
> > +	parameter) on the total number of zones that can simultaneously be in
> > +	the 'implicit open' or 'explicit open' conditions. Zoned block devices
> > +	may have another limit called 'max_active_zones', on the total number of
> > +	zones that can simultaneously be in the three conditions. The
> > +	:option:`max_open_zones` parameter limits the number of zones to which
> > +	write commands are issued by all fio jobs, that is, limits the number of
> > +	zones that will be in the conditions. When the device has the
> > +	max_open_zones limit and does not have the max_active_zones limit, the
> > +	:option:`max_open_zones` parameter limits the number of zones in the two
> > +	open conditions up to the limit. In this case, fio includes zones in the
> > +	two open conditions to the write target zones at fio start. When the
> > +	device has both the max_open_zones and the max_active_zones limits, the
> > +	:option:`max_open_zones` parameter limits the number of zones in the
> > +	three conditions up to the limit. In this case, fio includes zones in
> > +	the three conditions to the write target zones at fio start.
> > +
> > +	This parameter is relevant only if the :option:`zonemode` =zbd is used.
> > +	The default value is always equal to the max_open_zones limit of the
> > +	target zoned block device and a value higher than this limit cannot be
> > +	specified by users unless the option :option:`ignore_zone_limits` is
> > +	specified. When :option:`ignore_zone_limits` is specified or the target
> > +	device does not have the max_open_zones limit, :option:`max_open_zones`
> > +	can specify 0 to disable any limit on the number of zones that can be
> > +	simultaneously written to by all jobs.
> 
> While this is a wall of text, I don't really see a better way.
> 
> This option really controls the maximum number of zones that fio will
> issue writes to simultaneously.
> 
> For clarity, I guess we could introduce a --max_write_zones option
> and move this description there, and make --max_open_zones an alias
> for --max_write_zones... But I'm not sure if it would be worth it.

Actually, I also thought about the new option --max_write_zones. But I was not
sure either if that is good for users, and just chose to keep the current option
name. Let me keep it as it is, in v2.

  reply	other threads:[~2023-07-19  3:15 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-07  3:14 [PATCH 00/13] zbd: improve max_active_zones limit handling Shin'ichiro Kawasaki
2023-07-07  3:14 ` [PATCH 01/13] zbd: refer max_active_zones sysfs attribute Shin'ichiro Kawasaki
2023-07-18 13:55   ` Niklas Cassel
2023-07-19  3:10     ` Shinichiro Kawasaki
2023-07-07  3:14 ` [PATCH 02/13] zbd: write to closed zones on the devices with max_active_zones limit Shin'ichiro Kawasaki
2023-07-18 13:55   ` Niklas Cassel
2023-07-07  3:14 ` [PATCH 03/13] zbd: print max_active_zones limit error message Shin'ichiro Kawasaki
2023-07-18 13:55   ` Niklas Cassel
2023-07-19  3:13     ` Shinichiro Kawasaki
2023-07-07  3:14 ` [PATCH 04/13] docs: modify max_open_zones option description Shin'ichiro Kawasaki
2023-07-18 13:56   ` Niklas Cassel
2023-07-19  3:15     ` Shinichiro Kawasaki [this message]
2023-07-07  3:14 ` [PATCH 05/13] t/zbd: add close_zone helper function Shin'ichiro Kawasaki
2023-07-07  3:14 ` [PATCH 06/13] t/zbd: add max_active_zone variable Shin'ichiro Kawasaki
2023-07-07  3:14 ` [PATCH 07/13] t/zbd: add test case to check zones in closed condition Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 08/13] t/zbd: add test case to check max_active_zones limit error message Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 09/13] t/zbd: get max_open_zones from sysfs Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 10/13] t/zbd: fix fio failure check and SG node failure in test case 31 Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 11/13] t/zbd: add missing prep_write for test cases with write workloads Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 12/13] t/zbd: fix null_blk configuration in run-tests-against-nullb Shin'ichiro Kawasaki
2023-07-07  3:15 ` [PATCH 13/13] t/zbd: add max_active configs to run-tests-against-nullb Shin'ichiro Kawasaki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=mo2a2vkwapg42nj55qil6izm2ivkmcnmhssx6utjswpmcmkh2q@7xiz32u3rsn5 \
    --to=shinichiro.kawasaki@wdc.com \
    --cc=Dmitry.Fomichev@wdc.com \
    --cc=Niklas.Cassel@wdc.com \
    --cc=axboe@kernel.dk \
    --cc=dlemoal@kernel.org \
    --cc=fio@vger.kernel.org \
    --cc=vincentfu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).