[PATCH blktests v3 04/12] common/xfs: Limit fio size job to fit into xfs fs

Daniel Wagner dwagner at suse.de
Wed May 3 02:42:26 PDT 2023


On Wed, May 03, 2023 at 09:29:04AM +0000, Chaitanya Kulkarni wrote:
> On 5/3/23 01:02, Daniel Wagner wrote:
> > The usable capacity of the filesystem is less than the raw
> > partition/device size due to the additional meta/log data.
> >
> > Ensure that the job size for fio is not exceeding the limits.
> >
> > Because we have hard coded the path where we mount the filesystem
> > and don't want to expose this, we just update max size inside
> > _xfs_run_fio_verify_io(). No need to leak this into the caller.
> >
> > Signed-off-by: Daniel Wagner <dwagner at suse.de>
> > ---
> >   common/xfs | 3 +++
> >   1 file changed, 3 insertions(+)
> >
> > diff --git a/common/xfs b/common/xfs
> > index 413c2820ffaf..37ce85878df2 100644
> > --- a/common/xfs
> > +++ b/common/xfs
> > @@ -37,6 +37,9 @@ _xfs_run_fio_verify_io() {
> >   		sz_mb="${avail_mb}"
> >   	else
> >   		sz_mb="$(convert_to_mb "${sz}")"
> > +		if [[ "${sz_mb}" -gt "${avail_mb}" ]]; then
> > +			sz_mb="${avail_mb}"
> > +		fi
> >   	fi
> >   
> >   	_run_fio_verify_io --size="${sz_mb}m" --directory="${mount_dir}/"
> 
> 
> this is exactly how it should to start with, the only
> is now we are silently reducing the fio job size maybe that is okay ?
> 
> or we should error out here instead of being smart ?

The problem I try to solve here is that on the caller side (nvme/035) we don't
know yet the usable filesystem size. We only the size of the nvme_img_size.

If we want to move this logic to the caller side we need split
_xfs_run_fio_verify_io() into steps. The first step which creates the fileystem
and the second one which runs fio.

I don't know if this is worth doing it though.



More information about the Linux-nvme mailing list