qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Saenz Julienne <nsaenzju@redhat.com>
To: "Stefan Hajnoczi" <stefanha@redhat.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>
Cc: kwolf@redhat.com, qemu-block@nongnu.org, mtosatti@redhat.com,
	qemu-devel@nongnu.org, hreitz@redhat.com, pbonzini@redhat.com
Subject: Re: [RFC] thread-pool: Add option to fix the pool size
Date: Fri, 11 Feb 2022 10:30:13 +0100	[thread overview]
Message-ID: <b3c4a45867c6fc452af41f91f7bda482a882c766.camel@redhat.com> (raw)
In-Reply-To: <Yfvkf1cBPGc4TR49@stefanha-x1.localdomain>

On Thu, 2022-02-03 at 14:19 +0000, Stefan Hajnoczi wrote:
> Yep, I didn't comment on this because I don't have a good suggestion.
> 
> In terms of semantics I think we should have:
> 
> 1. A global default value that all new AioContext take. The QEMU main
>    loop's qemu_aio_context will use this and all IOThread AioContext
>    will use it (unless they have been overridden).
> 
>    I would define it on --machine because that's the "global" object for
>    a guest, but that's not very satisfying.

So I tried to implement this. One problem arouse:
 - The thread pool properties are now part of the MachineState. So as to
   properly use QOM.
 - Sadly, the main loop is initialized before the machine class options are
   populated. See 'qemu_init_main_loop()' and 'qemu_apply_machine_options()' in
   'softmmu/vl.c'.
 - Short of manually parsing the options, which IMO defeats the purpose of
   using QOM, or changing the initialization order, which I'm sure won't be
   easy, I can't access the properties early enough.

Any ideas?

Thanks!

-- 
Nicolás Sáenz



  reply	other threads:[~2022-02-11  9:33 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-02 17:52 [RFC] thread-pool: Add option to fix the pool size Nicolas Saenz Julienne
2022-02-03 10:53 ` Stefan Hajnoczi
2022-02-03 10:56   ` Daniel P. Berrangé
2022-02-03 14:19     ` Stefan Hajnoczi
2022-02-11  9:30       ` Nicolas Saenz Julienne [this message]
2022-02-11 11:32       ` Kevin Wolf
2022-02-14 10:09         ` Stefan Hajnoczi
2022-02-14 11:38           ` Kevin Wolf
2022-02-14 13:10             ` Stefan Hajnoczi
2022-02-14 14:09               ` Kevin Wolf
2022-02-07 12:00   ` Nicolas Saenz Julienne
2022-02-07 15:20     ` Stefan Hajnoczi

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=b3c4a45867c6fc452af41f91f7bda482a882c766.camel@redhat.com \
    --to=nsaenzju@redhat.com \
    --cc=berrange@redhat.com \
    --cc=hreitz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@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).