All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: peter.maydell@linaro.org, ehabkost@redhat.com,
	libvir-list@redhat.com, Michal Privoznik <mprivozn@redhat.com>,
	qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>,
	qemu-arm@nongnu.org, qemu-ppc@nongnu.org, pbonzini@redhat.com,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	david@gibson.dropbear.id.au
Subject: Re: [Qemu-arm] [Qemu-devel] [libvirt] [PATCH 1/2] numa: deprecate 'mem' parameter of '-numa node' option
Date: Thu, 7 Mar 2019 09:59:01 +0000	[thread overview]
Message-ID: <20190307095901.GF32268@redhat.com> (raw)
In-Reply-To: <20190306200348.11e9eece@Igors-MacBook-Pro.local>

On Wed, Mar 06, 2019 at 08:03:48PM +0100, Igor Mammedov wrote:
> On Mon, 4 Mar 2019 16:35:16 +0000
> Daniel P. Berrangé <berrange@redhat.com> wrote:
> 
> > On Mon, Mar 04, 2019 at 05:20:13PM +0100, Michal Privoznik wrote:
> > > We couldn't have done that. How we would migrate from older qemu?
> > > 
> > > Anyway, now that I look into this (esp. git log) I came accross:
> > > 
> > > commit f309db1f4d51009bad0d32e12efc75530b66836b
> > > Author:     Michal Privoznik <mprivozn@redhat.com>
> > > AuthorDate: Thu Dec 18 12:36:48 2014 +0100
> > > Commit:     Michal Privoznik <mprivozn@redhat.com>
> > > CommitDate: Fri Dec 19 07:44:44 2014 +0100
> > > 
> > >     qemu: Create memory-backend-{ram,file} iff needed
> > > 
> > > Or this 7832fac84741d65e851dbdbfaf474785cbfdcf3c. We did try to generated
> > > newer cmd line but then for various reasong (e.g. avoiding triggering a qemu
> > > bug) we turned it off and make libvirt default to older (now deprecated) cmd
> > > line.
> > > 
> > > Frankly, I don't know how to proceed. Unless qemu is fixed to allow
> > > migration from deprecated to new cmd line (unlikely, if not impossible,
> > > right?) then I guess the only approach we can have is that:
> > > 
> > > 1) whenever so called cold booting a new machine (fresh, brand new start of
> > > a new domain) libvirt would default to modern cmd line,
> > > 
> > > 2) on migration, libvirt would record in the migration stream (or status XML
> > > or wherever) that modern cmd line was generated and thus it'll make the
> > > destination generate modern cmd line too.
> > > 
> > > This solution still suffers a couple of problems:
> > > a) migration to older libvirt will fail as older libvirt won't recognize the
> > > flag set in 2) and therefore would default to deprecated cmd line
> > > b) migrating from one host to another won't modernize the cmd line
> > > 
> > > But I guess we have to draw a line somewhere (if we are not willing to write
> > > those migration patches).
> > 
> > Yeah supporting backwards migration is a non-optional requirement from at
> > least one of the mgmt apps using libvirt, so breaking the new to old case
> > is something we always aim to avoid.
> Aiming for support of 
> "new QEMU + new machine type" => "old QEMU + non-existing machine type"
> seems a bit difficult.

That's not the scenario that's the problem. The problem is

   new QEMU + new machine type + new libvirt   -> new QEMU + new machine type + old libvirt

Previously released versions of libvirt will happily use any new machine
type that QEMU introduces. So we can't make new libvirt use a different
options, only for new machine types, as old libvirt supports those machine
types too.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

WARNING: multiple messages have this Message-ID (diff)
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: Michal Privoznik <mprivozn@redhat.com>,
	Markus Armbruster <armbru@redhat.com>,
	peter.maydell@linaro.org, ehabkost@redhat.com,
	libvir-list@redhat.com, qemu-devel@nongnu.org,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	qemu-arm@nongnu.org, qemu-ppc@nongnu.org, pbonzini@redhat.com,
	david@gibson.dropbear.id.au
Subject: Re: [Qemu-devel] [libvirt] [PATCH 1/2] numa: deprecate 'mem' parameter of '-numa node' option
Date: Thu, 7 Mar 2019 09:59:01 +0000	[thread overview]
Message-ID: <20190307095901.GF32268@redhat.com> (raw)
In-Reply-To: <20190306200348.11e9eece@Igors-MacBook-Pro.local>

On Wed, Mar 06, 2019 at 08:03:48PM +0100, Igor Mammedov wrote:
> On Mon, 4 Mar 2019 16:35:16 +0000
> Daniel P. Berrangé <berrange@redhat.com> wrote:
> 
> > On Mon, Mar 04, 2019 at 05:20:13PM +0100, Michal Privoznik wrote:
> > > We couldn't have done that. How we would migrate from older qemu?
> > > 
> > > Anyway, now that I look into this (esp. git log) I came accross:
> > > 
> > > commit f309db1f4d51009bad0d32e12efc75530b66836b
> > > Author:     Michal Privoznik <mprivozn@redhat.com>
> > > AuthorDate: Thu Dec 18 12:36:48 2014 +0100
> > > Commit:     Michal Privoznik <mprivozn@redhat.com>
> > > CommitDate: Fri Dec 19 07:44:44 2014 +0100
> > > 
> > >     qemu: Create memory-backend-{ram,file} iff needed
> > > 
> > > Or this 7832fac84741d65e851dbdbfaf474785cbfdcf3c. We did try to generated
> > > newer cmd line but then for various reasong (e.g. avoiding triggering a qemu
> > > bug) we turned it off and make libvirt default to older (now deprecated) cmd
> > > line.
> > > 
> > > Frankly, I don't know how to proceed. Unless qemu is fixed to allow
> > > migration from deprecated to new cmd line (unlikely, if not impossible,
> > > right?) then I guess the only approach we can have is that:
> > > 
> > > 1) whenever so called cold booting a new machine (fresh, brand new start of
> > > a new domain) libvirt would default to modern cmd line,
> > > 
> > > 2) on migration, libvirt would record in the migration stream (or status XML
> > > or wherever) that modern cmd line was generated and thus it'll make the
> > > destination generate modern cmd line too.
> > > 
> > > This solution still suffers a couple of problems:
> > > a) migration to older libvirt will fail as older libvirt won't recognize the
> > > flag set in 2) and therefore would default to deprecated cmd line
> > > b) migrating from one host to another won't modernize the cmd line
> > > 
> > > But I guess we have to draw a line somewhere (if we are not willing to write
> > > those migration patches).
> > 
> > Yeah supporting backwards migration is a non-optional requirement from at
> > least one of the mgmt apps using libvirt, so breaking the new to old case
> > is something we always aim to avoid.
> Aiming for support of 
> "new QEMU + new machine type" => "old QEMU + non-existing machine type"
> seems a bit difficult.

That's not the scenario that's the problem. The problem is

   new QEMU + new machine type + new libvirt   -> new QEMU + new machine type + old libvirt

Previously released versions of libvirt will happily use any new machine
type that QEMU introduces. So we can't make new libvirt use a different
options, only for new machine types, as old libvirt supports those machine
types too.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

  reply	other threads:[~2019-03-07  9:59 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-01 15:42 [Qemu-devel] [PATCH 0/2] numa: deprecate -numa node, mem and default memory distribution Igor Mammedov
2019-03-01 15:42 ` Igor Mammedov
2019-03-01 15:42 ` [Qemu-arm] [PATCH 1/2] numa: deprecate 'mem' parameter of '-numa node' option Igor Mammedov
2019-03-01 15:42   ` [Qemu-devel] " Igor Mammedov
2019-03-01 15:49   ` [Qemu-devel] [libvirt] " Daniel P. Berrangé
2019-03-01 15:49     ` Daniel P. Berrangé
2019-03-01 17:33     ` [Qemu-arm] " Igor Mammedov
2019-03-01 17:33       ` Igor Mammedov
2019-03-01 17:48       ` [Qemu-arm] " Daniel P. Berrangé
2019-03-01 17:48         ` Daniel P. Berrangé
2019-03-04  7:13         ` [Qemu-arm] " Markus Armbruster
2019-03-04  7:13           ` Markus Armbruster
2019-03-04 10:19           ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 10:19             ` Daniel P. Berrangé
2019-03-04 11:45             ` [Qemu-arm] " Markus Armbruster
2019-03-04 11:45               ` Markus Armbruster
2019-03-04 15:28               ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 15:28                 ` Daniel P. Berrangé
2019-03-04 15:46                 ` [Qemu-arm] " Igor Mammedov
2019-03-04 15:46                   ` Igor Mammedov
2019-03-10 10:14                 ` [Qemu-arm] " Markus Armbruster
2019-03-10 10:14                   ` Markus Armbruster
2019-03-19 14:17                   ` [Qemu-arm] " Igor Mammedov
2019-03-04 14:24             ` Michal Privoznik
2019-03-04 14:24               ` Michal Privoznik
2019-03-04 15:03               ` [Qemu-arm] [libvirt] [Qemu-devel] " Igor Mammedov
2019-03-04 15:03                 ` [Qemu-devel] [libvirt] " Igor Mammedov
2019-03-04 12:25           ` [Qemu-arm] " Igor Mammedov
2019-03-04 12:25             ` Igor Mammedov
2019-03-04 12:39             ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 12:39               ` Daniel P. Berrangé
2019-03-04 14:16               ` [Qemu-arm] " Igor Mammedov
2019-03-04 14:16                 ` Igor Mammedov
2019-03-04 14:24                 ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 14:24                   ` Daniel P. Berrangé
2019-03-04 15:19                   ` [Qemu-arm] " Igor Mammedov
2019-03-04 15:19                     ` Igor Mammedov
2019-03-04 16:12                     ` [Qemu-arm] " Michal Privoznik
2019-03-04 16:12                       ` Michal Privoznik
2019-03-04 16:27                       ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 16:27                         ` Daniel P. Berrangé
2019-03-04 16:20                   ` Michal Privoznik
2019-03-04 16:20                     ` Michal Privoznik
2019-03-04 16:31                     ` Dr. David Alan Gilbert
2019-03-04 16:31                       ` Dr. David Alan Gilbert
2019-03-04 16:35                     ` [Qemu-arm] " Daniel P. Berrangé
2019-03-04 16:35                       ` Daniel P. Berrangé
2019-03-06 19:03                       ` [Qemu-arm] " Igor Mammedov
2019-03-06 19:03                         ` Igor Mammedov
2019-03-07  9:59                         ` Daniel P. Berrangé [this message]
2019-03-07  9:59                           ` Daniel P. Berrangé
2019-03-10 10:16                           ` [Qemu-arm] " Markus Armbruster
2019-03-10 10:16                             ` Markus Armbruster
2019-03-14 14:52                             ` Igor Mammedov
2019-03-06 19:56                     ` [Qemu-arm] " Igor Mammedov
2019-03-06 19:56                       ` Igor Mammedov
2019-03-04 14:34                 ` Michal Privoznik
2019-03-04 14:34                   ` Michal Privoznik
2019-03-04  8:11         ` [Qemu-arm] [Qemu-ppc] " Thomas Huth
2019-03-04  8:11           ` [Qemu-devel] [Qemu-ppc] " Thomas Huth
2019-03-04 13:55           ` [Qemu-arm] [Qemu-ppc] [Qemu-devel] " Igor Mammedov
2019-03-04 13:55             ` [Qemu-devel] [Qemu-ppc] " Igor Mammedov
2019-03-04 13:59             ` [Qemu-arm] [Qemu-ppc] [Qemu-devel] " Daniel P. Berrangé
2019-03-04 13:59               ` [Qemu-devel] [Qemu-ppc] " Daniel P. Berrangé
2019-03-04 14:54               ` [Qemu-arm] [Qemu-ppc] [Qemu-devel] " Igor Mammedov
2019-03-04 14:54                 ` [Qemu-devel] [Qemu-ppc] " Igor Mammedov
2019-03-04 15:02                 ` [Qemu-arm] [Qemu-ppc] [Qemu-devel] " Daniel P. Berrangé
2019-03-04 15:02                   ` [Qemu-devel] [Qemu-ppc] " Daniel P. Berrangé
2019-03-04 16:45                   ` [Qemu-arm] [Qemu-ppc] [Qemu-devel] " Igor Mammedov
2019-03-04 16:45                     ` [Qemu-devel] [Qemu-ppc] " Igor Mammedov
2019-03-01 18:01       ` [Qemu-arm] [Qemu-devel] " Dr. David Alan Gilbert
2019-03-01 18:01         ` Dr. David Alan Gilbert
2019-03-04 13:52         ` [Qemu-arm] " Igor Mammedov
2019-03-04 13:52           ` Igor Mammedov
2019-03-18 16:44           ` [Qemu-arm] " Igor Mammedov
2019-03-01 15:42 ` [Qemu-arm] [PATCH 2/2] numa: deprecate implict memory distribution between nodes Igor Mammedov
2019-03-01 15:42   ` [Qemu-devel] " Igor Mammedov

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=20190307095901.GF32268@redhat.com \
    --to=berrange@redhat.com \
    --cc=armbru@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=dgilbert@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=imammedo@redhat.com \
    --cc=libvir-list@redhat.com \
    --cc=mprivozn@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.