qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-stable] [Qemu-devel] [PATCH 5/7] qdev: Protect device-list-pro


From: Eduardo Habkost
Subject: Re: [Qemu-stable] [Qemu-devel] [PATCH 5/7] qdev: Protect device-list-properties against broken devices
Date: Mon, 21 Sep 2015 15:19:55 -0300
User-agent: Mutt/1.5.23 (2014-03-12)

On Mon, Sep 21, 2015 at 07:22:51PM +0200, Thomas Huth wrote:
> On 21/09/15 18:39, Markus Armbruster wrote:
> > Thomas Huth <address@hidden> writes:
> >> On 21/09/15 08:14, Markus Armbruster wrote:
> >>> Eduardo Habkost <address@hidden> writes:
> >>>> On Fri, Sep 18, 2015 at 08:42:54PM +0200, Thomas Huth wrote:
> >>>>> On 18/09/15 14:00, Markus Armbruster wrote:
[...]
> >>>>>> * Assert kvm_enabled(): "host-x86_64-cpu", host-i386-cpu",
> >>>>>>   "host-powerpc64-cpu", "host-embedded-powerpc-cpu",
> >>>>>>   "host-powerpc-cpu"
> >>>>>
> >>>>> I just had a look at the powerpc code - you're likely talking about
> >>>>> the "assert(kvm_enabled());" in the kvmppc_host_cpu_initfn() in
> >>>>> target-ppc/kvm.c ? That should be fine, I think, because
> >>>>> kvm_ppc_register_host_cpu_type() is only done on ppc when KVM has been
> >>>>> enabled.
> >>>
> >>> Easy to verify on a KVM-capable PPC host: try -device C,help with KVM on
> >>> and off, where C is the appropriate host CPU.
> >>
> >> In both cases (KVM on and off), I simply get:
> >>
> >> # qemu-system-ppc64 -machine accel=tcg -device host-powerpc64-cpu,help
> >> 'host-powerpc64-cpu' is not a valid device model name
> >> # qemu-system-ppc64 -machine accel=kvm -device host-powerpc64-cpu,help
> >> 'host-powerpc64-cpu' is not a valid device model name
> >>
> >> No crash/abort here.
> > 
> > No introspection, either.  Can you try the same with QMP command
> > device-list-properties?
> 
> # ppc64-softmmu/qemu-system-ppc64 -nodefaults -S -display none -qmp stdio
[...]
> { "execute": "device-list-properties", "arguments": { "typename": 
> "host-powerpc64-cpu" } }
> {"error": {"class": "DeviceNotFound", "desc": "Device 'host-powerpc64-cpu' 
> not found"}}
> 
> # ppc64-softmmu/qemu-system-ppc64 -machine accel=kvm -nodefaults -S -display 
> none -qmp stdio
[...]
> { "execute": "device-list-properties", "arguments": { "typename": 
> "host-powerpc64-cpu" } }
> {"return": [{"name": "compat", "description": "compatibility mode, 
> power6/power7/power8", "type": "str"}]}

So, introspection is already broken, but inconsistently broken (because
it depends on machine arguments). Setting
cannot_even_create_with_object_new_yet will make it more consistently
broken.

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]