[libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters

Martin Kletzander posted 6 patches 4 years, 11 months ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1555334034.git.mkletzan@redhat.com
docs/formatdomain.html.in               |  25 +++--
docs/news.xml                           |  12 +++
docs/schemas/domaincommon.rng           |   5 +
src/conf/domain_conf.c                  | 136 +++++++++++++++++-------
src/conf/domain_conf.h                  |   1 +
src/qemu/qemu_process.c                 |   2 +-
tests/genericxml2xmlindata/cputune.xml  |  37 +++++++
tests/genericxml2xmloutdata/cputune.xml |  40 +++++++
tests/genericxml2xmltest.c              |   2 +
9 files changed, 212 insertions(+), 48 deletions(-)
create mode 100644 tests/genericxml2xmlindata/cputune.xml
create mode 100644 tests/genericxml2xmloutdata/cputune.xml
[libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Martin Kletzander 4 years, 11 months ago
I/O threads and vCPU threads already support setting schedulers, but until now
it was impossible to do so for the main QEMU thread (emulator thread in the
libvirt naming).  This is, however, requested for some very specific scenarios,
for example when vCPU threads are running at such priority that could starve the
main thread.

v2:
 - news.xml addition in a separate patch

Martin Kletzander (6):
  conf: Parse common scheduler attributes in separate function
  conf: Format thread IDs optionally
  docs: Mention iothreadsched element in the docs and reword
  conf: Add support for emulatorsched
  qemu: Add support for emulatorsched
  docs: Add emulatorsched support to news.xml

 docs/formatdomain.html.in               |  25 +++--
 docs/news.xml                           |  12 +++
 docs/schemas/domaincommon.rng           |   5 +
 src/conf/domain_conf.c                  | 136 +++++++++++++++++-------
 src/conf/domain_conf.h                  |   1 +
 src/qemu/qemu_process.c                 |   2 +-
 tests/genericxml2xmlindata/cputune.xml  |  37 +++++++
 tests/genericxml2xmloutdata/cputune.xml |  40 +++++++
 tests/genericxml2xmltest.c              |   2 +
 9 files changed, 212 insertions(+), 48 deletions(-)
 create mode 100644 tests/genericxml2xmlindata/cputune.xml
 create mode 100644 tests/genericxml2xmloutdata/cputune.xml

-- 
2.21.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Ján Tomko 4 years, 11 months ago
On Mon, Apr 15, 2019 at 03:14:21PM +0200, Martin Kletzander wrote:
>I/O threads and vCPU threads already support setting schedulers, but until now
>it was impossible to do so for the main QEMU thread (emulator thread in the
>libvirt naming).  This is, however, requested for some very specific scenarios,
>for example when vCPU threads are running at such priority that could starve the
>main thread.
>

I don't like the XML format, but it's consistent with the existing
scheds.

>v2:
> - news.xml addition in a separate patch
>
>Martin Kletzander (6):
>  conf: Parse common scheduler attributes in separate function
>  conf: Format thread IDs optionally
>  docs: Mention iothreadsched element in the docs and reword
>  conf: Add support for emulatorsched
>  qemu: Add support for emulatorsched
>  docs: Add emulatorsched support to news.xml
>
> docs/formatdomain.html.in               |  25 +++--
> docs/news.xml                           |  12 +++
> docs/schemas/domaincommon.rng           |   5 +
> src/conf/domain_conf.c                  | 136 +++++++++++++++++-------
> src/conf/domain_conf.h                  |   1 +
> src/qemu/qemu_process.c                 |   2 +-
> tests/genericxml2xmlindata/cputune.xml  |  37 +++++++
> tests/genericxml2xmloutdata/cputune.xml |  40 +++++++
> tests/genericxml2xmltest.c              |   2 +
> 9 files changed, 212 insertions(+), 48 deletions(-)
> create mode 100644 tests/genericxml2xmlindata/cputune.xml
> create mode 100644 tests/genericxml2xmloutdata/cputune.xml
>

With at least the commit message in 2/6 fixed:
Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Martin Kletzander 4 years, 11 months ago
On Mon, Apr 15, 2019 at 03:59:27PM +0200, Ján Tomko wrote:
>On Mon, Apr 15, 2019 at 03:14:21PM +0200, Martin Kletzander wrote:
>>I/O threads and vCPU threads already support setting schedulers, but until now
>>it was impossible to do so for the main QEMU thread (emulator thread in the
>>libvirt naming).  This is, however, requested for some very specific scenarios,
>>for example when vCPU threads are running at such priority that could starve the
>>main thread.
>>
>
>I don't like the XML format,

me neither

>but it's consistent with the existing scheds.
>

yes, unfortunately

>>v2:
>> - news.xml addition in a separate patch
>>
>>Martin Kletzander (6):
>>  conf: Parse common scheduler attributes in separate function
>>  conf: Format thread IDs optionally
>>  docs: Mention iothreadsched element in the docs and reword
>>  conf: Add support for emulatorsched
>>  qemu: Add support for emulatorsched
>>  docs: Add emulatorsched support to news.xml
>>
>> docs/formatdomain.html.in               |  25 +++--
>> docs/news.xml                           |  12 +++
>> docs/schemas/domaincommon.rng           |   5 +
>> src/conf/domain_conf.c                  | 136 +++++++++++++++++-------
>> src/conf/domain_conf.h                  |   1 +
>> src/qemu/qemu_process.c                 |   2 +-
>> tests/genericxml2xmlindata/cputune.xml  |  37 +++++++
>> tests/genericxml2xmloutdata/cputune.xml |  40 +++++++
>> tests/genericxml2xmltest.c              |   2 +
>> 9 files changed, 212 insertions(+), 48 deletions(-)
>> create mode 100644 tests/genericxml2xmlindata/cputune.xml
>> create mode 100644 tests/genericxml2xmloutdata/cputune.xml
>>
>
>With at least the commit message in 2/6 fixed:
>Reviewed-by: Ján Tomko <jtomko@redhat.com>
>

I'll fix other things you mentioned and send a v3 if you want, just let me know.

>Jano


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Ján Tomko 4 years, 11 months ago
On Mon, Apr 15, 2019 at 04:23:18PM +0200, Martin Kletzander wrote:
>On Mon, Apr 15, 2019 at 03:59:27PM +0200, Ján Tomko wrote:
>>On Mon, Apr 15, 2019 at 03:14:21PM +0200, Martin Kletzander wrote:
>>>I/O threads and vCPU threads already support setting schedulers, but until now
>>>it was impossible to do so for the main QEMU thread (emulator thread in the
>>>libvirt naming).  This is, however, requested for some very specific scenarios,
>>>for example when vCPU threads are running at such priority that could starve the
>>>main thread.
>>>
>>
>>I don't like the XML format,
>
>me neither
>
>>but it's consistent with the existing scheds.
>>
>
>yes, unfortunately
>
>>>v2:
>>>- news.xml addition in a separate patch
>>>
>>>Martin Kletzander (6):
>>> conf: Parse common scheduler attributes in separate function
>>> conf: Format thread IDs optionally
>>> docs: Mention iothreadsched element in the docs and reword
>>> conf: Add support for emulatorsched
>>> qemu: Add support for emulatorsched
>>> docs: Add emulatorsched support to news.xml
>>>
>>>docs/formatdomain.html.in               |  25 +++--
>>>docs/news.xml                           |  12 +++
>>>docs/schemas/domaincommon.rng           |   5 +
>>>src/conf/domain_conf.c                  | 136 +++++++++++++++++-------
>>>src/conf/domain_conf.h                  |   1 +
>>>src/qemu/qemu_process.c                 |   2 +-
>>>tests/genericxml2xmlindata/cputune.xml  |  37 +++++++
>>>tests/genericxml2xmloutdata/cputune.xml |  40 +++++++
>>>tests/genericxml2xmltest.c              |   2 +
>>>9 files changed, 212 insertions(+), 48 deletions(-)
>>>create mode 100644 tests/genericxml2xmlindata/cputune.xml
>>>create mode 100644 tests/genericxml2xmloutdata/cputune.xml
>>>
>>
>>With at least the commit message in 2/6 fixed:
>>Reviewed-by: Ján Tomko <jtomko@redhat.com>
>>
>
>I'll fix other things you mentioned and send a v3 if you want, just let me know.
>

Depending on your opinion on the refactor:
https://www.redhat.com/archives/libvir-list/2019-April/msg00996.html

Jano
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Ján Tomko 4 years, 11 months ago
On Mon, Apr 15, 2019 at 04:59:30PM +0200, Ján Tomko wrote:
>On Mon, Apr 15, 2019 at 04:23:18PM +0200, Martin Kletzander wrote:
>>
>>I'll fix other things you mentioned and send a v3 if you want, just let me know.
>>
>
>Depending on your opinion on the refactor:
>https://www.redhat.com/archives/libvir-list/2019-April/msg00996.html
>

Given Andrea's comments on that series I withdraw my virXMLFormatElement
suggestion.

Jano
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 0/6] Add support for setting the emulator scheduler parameters
Posted by Martin Kletzander 4 years, 11 months ago
On Tue, Apr 16, 2019 at 12:59:34PM +0200, Ján Tomko wrote:
>On Mon, Apr 15, 2019 at 04:59:30PM +0200, Ján Tomko wrote:
>>On Mon, Apr 15, 2019 at 04:23:18PM +0200, Martin Kletzander wrote:
>>>
>>>I'll fix other things you mentioned and send a v3 if you want, just let me know.
>>>
>>
>>Depending on your opinion on the refactor:
>>https://www.redhat.com/archives/libvir-list/2019-April/msg00996.html
>>
>
>Given Andrea's comments on that series I withdraw my virXMLFormatElement
>suggestion.
>

Based on the fact virDomainSchedulerParse() callers utilize the return value
(which would not be used in the new one) nicely, I'll leave that function as is
in this series so that the refactor discussion takes place in a separate thread
(if anyone cares enough to do that).  I think this way it actually is better as
one function serves one purpose and not two slightly different ones based on
variable parameter.

Thanks.

>Jano


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list