qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
To: Max Reitz <mreitz@redhat.com>, qemu-block@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [PATCH 6/7] iotests/129: Limit mirror job's buffer size
Date: Wed, 13 Jan 2021 20:02:57 +0300	[thread overview]
Message-ID: <5837fc24-e89c-a979-9a8b-03d0d218466c@virtuozzo.com> (raw)
In-Reply-To: <20210113140616.150283-7-mreitz@redhat.com>

13.01.2021 17:06, Max Reitz wrote:
> Issuing 'stop' on the VM drains all nodes.  If the mirror job has many
> large requests in flight, this may lead to significant I/O that looks a
> bit like the job is being drained.

what do you mean by "looks like the job is being drained"? If "drain"
in Qemu means "flush all in-flight requests, and don't create more during
the drain", then job is exactly "drained" during the drain..

do you mean, that it looks like "job trying to finish copying the whole drive"? Or "job hangs", or "stop hangs"...

> 
> We can limit the I/O in flight by limiting the buffer size, so mirror
> will make very little progress during the 'stop' drain.
> 
> (We do not need to do anything about commit, which has a buffer size of
> 512 kB by default; or backup, which goes cluster by cluster.  Once we
> have asynchronous requests for backup, that will change, but then we can
> fine-tune the backup job to only perform a single request on a very
> small chunk, too.)

OK

> 
> Signed-off-by: Max Reitz <mreitz@redhat.com>

Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>

> ---
>   tests/qemu-iotests/129 | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tests/qemu-iotests/129 b/tests/qemu-iotests/129
> index e6753c90ef..c3ad584ba2 100755
> --- a/tests/qemu-iotests/129
> +++ b/tests/qemu-iotests/129
> @@ -69,7 +69,7 @@ class TestStopWithBlockJob(iotests.QMPTestCase):
>       def test_drive_mirror(self):
>           self.do_test_stop("drive-mirror", device="drive0",
>                             target=self.target_img, format=iotests.imgfmt,
> -                          sync="full")
> +                          sync="full", buf_size=65536)
>   
>       def test_drive_backup(self):
>           self.do_test_stop("drive-backup", device="drive0",
> 


-- 
Best regards,
Vladimir


  parent reply	other threads:[~2021-01-13 17:11 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-13 14:06 [PATCH 0/7] iotests/129: Fix it Max Reitz
2021-01-13 14:06 ` [PATCH 1/7] iotests: Move try_remove to iotests.py Max Reitz
2021-01-13 14:25   ` Eric Blake
2021-01-13 14:06 ` [PATCH 2/7] iotests/129: Remove test images in tearDown() Max Reitz
2021-01-13 14:34   ` Vladimir Sementsov-Ogievskiy
2021-01-13 14:43   ` Eric Blake
2021-01-13 14:06 ` [PATCH 3/7] iotests/129: Do not check @busy Max Reitz
2021-01-13 14:48   ` Eric Blake
2021-01-13 15:01   ` Vladimir Sementsov-Ogievskiy
2021-01-13 14:06 ` [PATCH 4/7] iotests/129: Use throttle node Max Reitz
2021-01-13 14:10   ` Max Reitz
2021-01-13 14:53     ` Eric Blake
2021-01-13 15:07     ` Vladimir Sementsov-Ogievskiy
2021-01-13 15:15       ` Max Reitz
2021-01-13 16:46   ` Vladimir Sementsov-Ogievskiy
2021-01-13 17:02     ` Max Reitz
2021-01-13 17:05       ` Vladimir Sementsov-Ogievskiy
2021-01-13 14:06 ` [PATCH 5/7] iotests/129: Actually test a commit job Max Reitz
2021-01-13 15:58   ` Eric Blake
2021-01-13 16:52   ` Vladimir Sementsov-Ogievskiy
2021-01-13 14:06 ` [PATCH 6/7] iotests/129: Limit mirror job's buffer size Max Reitz
2021-01-13 16:03   ` Eric Blake
2021-01-13 17:02   ` Vladimir Sementsov-Ogievskiy [this message]
2021-01-13 14:06 ` [PATCH 7/7] iotests/129: Clean up pylint and mypy complaints Max Reitz
2021-01-13 16:04   ` Eric Blake
2021-01-13 14:31 ` [PATCH 0/7] iotests/129: Fix it Vladimir Sementsov-Ogievskiy
2021-01-13 15:19   ` Max Reitz
2021-01-13 15:29     ` Vladimir Sementsov-Ogievskiy
2021-01-13 14:38 ` Kevin Wolf
2021-01-13 14:59   ` Vladimir Sementsov-Ogievskiy
2021-01-13 15:26   ` Max Reitz
2021-01-13 15:43     ` Kevin Wolf

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=5837fc24-e89c-a979-9a8b-03d0d218466c@virtuozzo.com \
    --to=vsementsov@virtuozzo.com \
    --cc=kwolf@redhat.com \
    --cc=mreitz@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /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 NNTP newsgroup(s).