qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 0/7] iotests/129: Fix it


From: Max Reitz
Subject: Re: [PATCH 0/7] iotests/129: Fix it
Date: Wed, 13 Jan 2021 16:19:42 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.5.0

On 13.01.21 15:31, Vladimir Sementsov-Ogievskiy wrote:
13.01.2021 17:06, Max Reitz wrote:
Hi,

There are some problems with iotests 129 (perhaps more than these, but
these are the ones I know of):

1. It checks @busy to see whether a block job is still running; however,
    block jobs tend to unset @busy all the time (when they yield).
    [Fixed by patch 3]

2. It uses blockdev throttling, which quite some time ago has been moved
    to the BB level; since then, such throttling will no longer affect
    block jobs.  We can get throttling to work by using a throttle filter
    node.
    [Fixed by patch 4]

3. The mirror job has a large buffer size by default.  A simple drain
    may lead to it making significant process, which is kind of
    dangerous, because we don’t want the job to complete.

Not quite clear to me. iotest 129 wants to mirror 128M of data. Mirror by
default will have 1M chunk size and maximum of 16 parallel requests. So with
throttling (even if throttling can't correctly handle parallel requests)
we will not exceed 16M of progress.. Why we need limiting buffer size?

It does exceed 16M of progress; without the limit, I generally see something between 16M and 32M.

Now, that still is below 128M, but it’s kind of in the same magnitude. I don’t feel comfortable with that, especially given it’s so easy to limit it to much less (buf_size=64k makes the job proceed to 128k).

Also, maybe the default is increased in the future. Increasing the chunk size by 4 would mean that it might be possible to reach 128M.

I find not relying on the default better.

Max




reply via email to

[Prev in Thread] Current Thread [Next in Thread]