From: Gavin Shan <gshan@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>,
Markus Armbruster <armbru@redhat.com>
Cc: Zhenyu Zhang <zhenyzha@redhat.com>,
qemu-devel@nongnu.org, philmd@linaro.org, shan.gavin@gmail.com,
eric.auger@redhat.com, lijin@redhat.com
Subject: Re: [PATCH v3] qapi/qom: Memory backend property prealloc-threads doc fix
Date: Fri, 11 Nov 2022 17:34:04 +0800 [thread overview]
Message-ID: <98a4d569-b81e-b3e3-f011-82ef19eeb5df@redhat.com> (raw)
In-Reply-To: <20221111101310.47bdced9@imammedo.users.ipa.redhat.com>
On 11/11/22 5:13 PM, Igor Mammedov wrote:
> On Fri, 11 Nov 2022 07:47:16 +0100
> Markus Armbruster <armbru@redhat.com> wrote:
>> Gavin Shan <gshan@redhat.com> writes:
>>> On 11/11/22 11:05 AM, Zhenyu Zhang wrote:
>>>> Commit ffac16fab3 "hostmem: introduce "prealloc-threads" property"
>>>> (v5.0.0) changed the default number of threads from number of CPUs
>>>> to 1. This was deemed a regression, and fixed in commit f8d426a685
>>>> "hostmem: default the amount of prealloc-threads to smp-cpus".
>>>> Except the documentation remained unchanged. Update it now.
>>>> Signed-off-by: Zhenyu Zhang <zhenyzha@redhat.com>
>>>> ---
>>>> v3: Covers historical descriptions (Markus)
>>>> v2: The property is changed to smp-cpus since 5.0 (Phild)
>>>> ---
>>>> qapi/qom.json | 2 +-
>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>
>>> With the following comments addressed:
>>>
>>> Reviewed-by: Gavin Shan <gshan@redhat.com>
>>>
>>> ---
>>>
>>> Please consider amending the commit log to something like below.
>>>
>>> The default "prealloc-threads" value is set to 1 when the property is
>>> added by commit ffac16fab33b ("hostmem: introduce "prealloc-threads"
>>> property") in v5.0.0. The default value is conflicting with the sugar
>>> property as the value provided by the sugar property is number of CPUs.
>>
>> What is the sugar property? Can you explain the conflict in a bit more
>> detail?
>
> my guess is that Gavin means mem_prealloc compat glue in qemu_process_sugar_options()
>
> property value should be set according to following order
> default -> compat -> explicit value
> so I don't see any conflict here.
>
> PS:
> if it we up to me, default would have stayed 1,
> and prealloc-threads fixup to vCPUs number would happen in vl.c
> similar to what is done in qemu_process_sugar_options(),
> keeping backend clean of external dependencies.
>
Yes, it's the sugar property I was talking about. I'm not sure if
we have a more popular name for this property: compat property or
sugar property.
When 'mem-prealloc=on' and 'prealloc-threads=xxx' aren't provided,
the value is 1 before commit f8d426a6852c is applied. It's not
inconsistent with 'mem-prealloc=on'. It's the conflict I was talking
about and it's fixed by commit f8d426a6852c
>>
>>> The conflict has been fixed by commit f8d426a6852c ("hostmem: default
>>> the amount of prealloc-threads to smp-cpus"). However, 'qapi/qom.json'
>>> was missed to be updated accordingly in the commit.
>>>
>>> Update 'qapi/qom.json' to reflect the change in commit f8d426a6852c.
>>>
>>> Signed-off-by: Zhenyu Zhang <zhenyzha@redhat.com>
>>>
>>> When a specific commit is mentioned in the commit log, we usually have
>>> fixed format like below.
>>>
>>> commit ffac16fab33b ("hostmem: introduce "prealloc-threads" property")
>>> commit f8d426a6852c ("hostmem: default the amount of prealloc-threads to smp-cpus")
>>
>> This is certainly a common format, but the other one is also in use.
>>
>>>> diff --git a/qapi/qom.json b/qapi/qom.json
>>>> index 30e76653ad..dfd89bc6d4 100644
>>>> --- a/qapi/qom.json
>>>> +++ b/qapi/qom.json
>>>> @@ -576,7 +576,7 @@
>>>> #
>>>> # @prealloc: if true, preallocate memory (default: false)
>>>> #
>>>> -# @prealloc-threads: number of CPU threads to use for prealloc (default: 1)
>>>> +# @prealloc-threads: number of CPU threads to use for prealloc (default: number of CPUs) (since 5.0)
>>>> #
>>>> # @prealloc-context: thread context to use for creation of preallocation threads
>>>> # (default: none) (since 7.2)
>>>>
>>>
>>> The line seems exceeding 80 characters. It'd better to limit each line in 75 characters.
>>> So you probably need:
>>>
>>> # @prealloc-threads: number of CPU threads to use for prealloc (default: number of CPUs)
>>> # (since 5.0)
>>
>> Still exceeds :)
>>
>> I suggested
>>
>> # @prealloc-threads: number of CPU threads to use for prealloc
>> # (default: number of CPUs) (since 5.0)
>>
>
Markus's suggestion works :)
Thanks,
Gavin
next prev parent reply other threads:[~2022-11-11 9:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-11 3:05 [PATCH v3] qapi/qom: Memory backend property prealloc-threads doc fix Zhenyu Zhang
2022-11-11 4:58 ` Gavin Shan
2022-11-11 6:47 ` Markus Armbruster
2022-11-11 9:13 ` Igor Mammedov
2022-11-11 9:34 ` Gavin Shan [this message]
2022-11-11 10:54 ` Igor Mammedov
2022-11-11 22:05 ` Gavin Shan
2022-11-14 1:27 ` Zhenyu Zhang
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=98a4d569-b81e-b3e3-f011-82ef19eeb5df@redhat.com \
--to=gshan@redhat.com \
--cc=armbru@redhat.com \
--cc=eric.auger@redhat.com \
--cc=imammedo@redhat.com \
--cc=lijin@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=shan.gavin@gmail.com \
--cc=zhenyzha@redhat.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 NNTP newsgroup(s).