[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine |
Date: |
Tue, 5 Jun 2018 14:51:52 +0100 |
User-agent: |
Mutt/1.9.5 (2018-04-13) |
On Tue, Jun 05, 2018 at 03:44:14PM +0200, Laszlo Ersek wrote:
> On 06/05/18 15:29, Daniel P. Berrangé wrote:
> > On Tue, Jun 05, 2018 at 04:20:46PM +0300, Marcel Apfelbaum wrote:
> >>
> >>
> >> On 06/05/2018 11:43 AM, Daniel P. Berrangé wrote:
> >>> On Tue, Jun 05, 2018 at 09:27:46AM +0200, Gerd Hoffmann wrote:
> >>>> Hi,
> >>>>
> >>>>>> Add to that shortcuts like -cdrom
> >>>>>> stop working,
> >>>>> Maybe is fixable.
> >>>> Already fixed for ages.
> >>>>
> >>>>> I see marking Q35 as the default machine a first step.
> >>>> Maybe the better option is to go the arm route: Just don't define a
> >>>> default, so users have to specify pc or q35. That will make them notice
> >>>> there is a world beside 'pc', and we also avoid breaking things
> >>>> silently.
> >>
> >> It can work, sure. And we can add user hints: "Use q35 for ...., select pc
> >> if..."
> >>
> >>> If QEMU removes the default, then libvirt will have to hardcode
> >>> 'pc' as the default to maintain back compatibility, so I don't
> >>> think that ends up as a net win
> >>
> >> Can't libvirt preserve 'pc' for existing domains, while defaulting to q35
> >> the creation of new domains ? This way it aligns with Gerd's proposal of no
> >> default x86 machine.
> >
> > Existing domains wasn't the case I was concerned about. Consider you have
> > libvirt 4.4.0 intsalled and you deploy a *new* domain from a prebuilt
> > disk image "foo". Now update to a libvirt or QEMU which changes to q35
> > and try to deploy another new domain from the same prebuilt disk
> > image "foo". It may not work now if that disk image doesn't support
> > q35. That would be a regression from the user's POV, whether libvirt or
> > qemu has changed the default.
>
> How about:
> - "create new domain with empty disk" --> i440fx now, q35 later
"empty disk" is not something that can be determined by the
host - libvirt might not even have direct access to the disk
at the time this info would be needed.
> - "create new domain from domain XML and disk image" --> whatever the
> domain definition dictates
> - "create new domain from disk image and no domain XML" --> assume
> i440fx forever (with a detailed board / device config that's used for
> all legacy (definition-less) disk images)
> - convince disk image distributors to provide their domain definitions
> with their disks (need not be libvirt domain XML, other definitions
> might work)
Libvirt domain XML is absolutely not suitable - it is a host specific
instantiation of a guest, that is not guaranteed to be portable to
any other host.
Funnily enough though, I just remembered that 10 years ago we invented
another XML format called "virt-image XML", that went along with a
"virt-image" command line tool
https://github.com/virt-manager/virt-manager/blob/2e7d477156e9d0f6fb218fa19fc00d6229d33e85/man/virt-image-xml.pod
This was rarely used because the "virt-image" tool itself was rather
broken by design, so we eventually deleted this entirely.
The virt-image XML description though could be resurrected as it
is largely relevant to the conversation.
> - write converters from those other definition formats to libvirt XML,
> or QEMU cfg file?
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 :|
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), (continued)
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Pavel Hrdina, 2018/06/05
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Eduardo Habkost, 2018/06/05
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Daniel P . Berrangé, 2018/06/05
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Pavel Hrdina, 2018/06/05
- Re: [Qemu-devel] [libvirt] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Pavel Hrdina, 2018/06/05
- Re: [Qemu-devel] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Michael S. Tsirkin, 2018/06/05
- Re: [Qemu-devel] libvirt default machine-type guarantees? (was Re: [PATCH RFC] hw/pc: set q35 as the default x86 machine), Daniel P . Berrangé, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Marcel Apfelbaum, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Daniel P . Berrangé, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Laszlo Ersek, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine,
Daniel P . Berrangé <=
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Michael S. Tsirkin, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Marcel Apfelbaum, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Daniel P . Berrangé, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Michael S. Tsirkin, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Daniel P . Berrangé, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Michael S. Tsirkin, 2018/06/05
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Eduardo Habkost, 2018/06/13
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Daniel P . Berrangé, 2018/06/14
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Eduardo Habkost, 2018/06/14
- Re: [Qemu-devel] [PATCH RFC] hw/pc: set q35 as the default x86 machine, Daniel P . Berrangé, 2018/06/15