From: Cole Robinson <crobinso@redhat.com>
To: Eduardo Habkost <ehabkost@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>
Cc: QEMU <qemu-devel@nongnu.org>,
"Marc-André Lureau" <marcandre.lureau@gmail.com>,
"Igor Mammedov" <imammedo@redhat.com>,
"Laszlo Ersek" <lersek@redhat.com>,
"Dave Anderson" <anderson@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v6 2/7] hw/misc: add vmcoreinfo device
Date: Tue, 17 Apr 2018 15:12:03 -0400 [thread overview]
Message-ID: <a5ff2864-f794-e728-5be1-0c1e58d9f163@redhat.com> (raw)
In-Reply-To: <20171020184820.GP2942@localhost.localdomain>
On 10/20/2017 02:48 PM, Eduardo Habkost wrote:
> On Sun, Oct 15, 2017 at 04:56:28AM +0300, Michael S. Tsirkin wrote:
>> On Tue, Oct 10, 2017 at 03:01:10PM -0300, Eduardo Habkost wrote:
>>> On Tue, Oct 10, 2017 at 04:06:28PM +0100, Daniel P. Berrange wrote:
>>>> On Tue, Oct 10, 2017 at 05:00:18PM +0200, Marc-André Lureau wrote:
>>>>> Hi
>>>>>
>>>>> On Tue, Oct 10, 2017 at 10:31 AM, Daniel P. Berrange
>>>>> <berrange@redhat.com> wrote:
>>>>>> On Tue, Oct 10, 2017 at 12:44:26AM +0300, Michael S. Tsirkin wrote:
>>>>>>> On Mon, Oct 09, 2017 at 02:02:18PM +0100, Daniel P. Berrange wrote:
>>>>>>>> On Mon, Oct 09, 2017 at 02:43:44PM +0200, Igor Mammedov wrote:
>>>>>>>>> On Mon, 9 Oct 2017 12:03:36 +0100
>>>>>>>>> "Daniel P. Berrange" <berrange@redhat.com> wrote:
>>>>>>>>>
>>>>>>>>>> On Mon, Sep 11, 2017 at 06:59:24PM +0200, Marc-André Lureau wrote:
>>>>>>>>>>> See docs/specs/vmcoreinfo.txt for details.
>>>>>>>>>>>
>>>>>>>>>>> "etc/vmcoreinfo" fw_cfg entry is added when using "-device vmcoreinfo".
>>>>>>>>>>
>>>>>>>>>> I'm wondering if you considered just adding the entry to fw_cfg by
>>>>>>>>>> default, without requiring any -device arg ? Unless I'm misunderstanding,
>>>>>>>>>> this doesn't feel like a device to me - its just a well known bucket
>>>>>>>>>> in fw_cfg IIUC ? Obviously its existance would need to be tied to
>>>>>>>>>> the latest machine type for ABI reasons though. The benefit of this
>>>>>>>>>> is that it would "just work" without us having to plumb it through to
>>>>>>>>>> all the downstream applications that use QEMU for mgmt guest (OpenStack,
>>>>>>>>>> oVirt, GNOME Boxes, virt-manager, and countless other mgmt apps).
>>>>>>>>> it follows model set by pvpanic device, it's easier to manage from migration
>>>>>>>>> POV, one could use it even for old machine types with new qemu (just by adding
>>>>>>>>> device, it makes instance not backwards migratable to old qemu but should work
>>>>>>>>> for forward migration) and if user doesn't need it, device could be just omitted
>>>>>>>>> from CLI.
>>>>>>>>
>>>>>>>> Sure but it means that in effect no one will have this functionality enabled
>>>>>>>> for several years. pvpanic has been around a long time and I rarely see it
>>>>>>>> present in configured guests :-(
>>>>>>>>
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Daniel
>>>>>>>
>>>>>>> libvirt runs with -nodefaults, right? I'd argue pretty strongly -nodefaults
>>>>>>> shouldn't add optional devices anyway.
>>>>>>
>>>>>> This isn't really adding a device though is it - it is just a well known
>>>>>> location in fw_cfg to receive data.
>>>>>
>>>>> Enabling the device on some configurations by default can be done as a
>>>>> follow-up patch. Can we get this series reviewed & merged?
>>>>
>>>> The problem with the -device approach + turning it on by default is that there
>>>> is no way to turn it off again if you don't want it. eg there's way to undo
>>>> an implicit '-device foo' except via -nodefaults, but since libvirt uses that
>>>> already it would negate the effect of enabling it by default unconditionally.
>>>
>>> It's still possible to add a -machine option that can
>>> enable/disable automatic creation of the device.
>>>
>>> But I also don't see why it needs to be implemented using -device
>>> if it's not really a device. A boolean machine or fw_cfg
>>> property is good enough for that.
>>
>> It certainly feels like a device. It has state
>> (that needs to be migrated), it has a host/guest interface.
>
> (Sorry for the late reply)
>
> That's convincing enough to me. :)
>
>
>>>>
>>>> Your previous approach of "-global fw_cfg.vmcoreinfo=on" is nicer in this
>>>> respect, as you can trivially turn it on/off, overriding the default state
>>>> in both directions.
>>>
>>> Both "-global fw_cfg.vmcoreinfo=on|off" and
>>> "-machine vmcoreinfo=on|off" sound good enough to me.
>>
>>
>> Certainly not a fw cfg flag. Can be a machine flag I guess
>> but then we'd have to open-code each such device.
>> And don't forget auto - this is what Daniel asks for.
>
> I'm not sure Daniel is really asking for "auto": he is just
> asking for a way to disable the new default. If "vmcoreinfo=off"
> and "vmcoreinfo=off" works, there's no need for a user-visible
> "auto" value.
>
> (Actually, "auto" values makes compatibility code even messier,
> because we would need one additional compat property/field to
> tell QEMU what "auto" means on each machine)
>
Reviving this... did any follow up changes happen?
Marc-André patched virt-manager a few months back to enable -device
vmcoreinfo for new VMs:
https://www.redhat.com/archives/virt-tools-list/2018-February/msg00020.html
And I see there's at least a bug tracking adding this to openstack for
new VMs:
https://bugzilla.redhat.com/show_bug.cgi?id=1555276
If this feature doesn't really have any downsides, it would be nice to
get this tied to new machine types. Saves a lot of churn for higher
levels of the stack
Thanks,
Cole
next prev parent reply other threads:[~2018-04-17 19:12 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-11 16:59 [Qemu-devel] [PATCH v6 0/7] KASLR kernel dump support Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 1/7] fw_cfg: add write callback Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 2/7] hw/misc: add vmcoreinfo device Marc-André Lureau
2017-10-09 11:03 ` Daniel P. Berrange
2017-10-09 11:46 ` Marc-André Lureau
2017-10-09 12:43 ` Igor Mammedov
2017-10-09 13:02 ` Daniel P. Berrange
2017-10-09 21:44 ` Michael S. Tsirkin
2017-10-10 8:31 ` Daniel P. Berrange
2017-10-10 15:00 ` Marc-André Lureau
2017-10-10 15:03 ` Michael S. Tsirkin
2017-10-10 15:06 ` Daniel P. Berrange
2017-10-10 15:21 ` Michael S. Tsirkin
2017-10-10 18:01 ` Eduardo Habkost
2017-10-15 1:56 ` Michael S. Tsirkin
2017-10-20 18:48 ` Eduardo Habkost
2018-04-17 19:12 ` Cole Robinson [this message]
2018-04-17 21:11 ` Eduardo Habkost
2018-04-17 22:31 ` Cole Robinson
2018-04-17 22:53 ` Eduardo Habkost
2017-10-15 2:02 ` Michael S. Tsirkin
2017-10-10 19:15 ` Eduardo Habkost
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 3/7] dump: add guest ELF note Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 4/7] dump: update phys_base header field based on VMCOREINFO content Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 5/7] kdump: set vmcoreinfo location Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 6/7] scripts/dump-guest-memory.py: add vmcoreinfo Marc-André Lureau
2017-09-11 16:59 ` [Qemu-devel] [PATCH v6 7/7] MAINTAINERS: add Dump maintainers Marc-André Lureau
2017-09-25 10:52 ` [Qemu-devel] [PATCH v6 0/7] KASLR kernel dump support Marc-André Lureau
2017-10-09 10:57 ` Marc-André Lureau
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=a5ff2864-f794-e728-5be1-0c1e58d9f163@redhat.com \
--to=crobinso@redhat.com \
--cc=anderson@redhat.com \
--cc=ehabkost@redhat.com \
--cc=imammedo@redhat.com \
--cc=lersek@redhat.com \
--cc=marcandre.lureau@gmail.com \
--cc=mst@redhat.com \
--cc=qemu-devel@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 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).