Re: [libvirt] [PATCH 8/9] target-i386: Use "-" instead of "_" on all feature names

2016-05-24 Thread Eduardo Habkost
On Tue, May 24, 2016 at 02:17:03PM +0200, Igor Mammedov wrote: > On Fri, 6 May 2016 15:11:31 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > This makes the feature name tables in feature_word_info all match > > the actual QOM property names we use. > >

Re: [libvirt] [RFC 12/42] pc: initialize legacy hotplug only for 2.6 and older machine types

2016-05-11 Thread Eduardo Habkost
On Wed, May 11, 2016 at 03:50:39PM +0200, Igor Mammedov wrote: > On Tue, 10 May 2016 17:24:14 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > On Mon, May 02, 2016 at 02:33:21PM +0200, Igor Mammedov wrote: > > > on old machine types CPU hotplug was unco

Re: [libvirt] [RFC 12/42] pc: initialize legacy hotplug only for 2.6 and older machine types

2016-05-12 Thread Eduardo Habkost
On Thu, May 12, 2016 at 12:29:55PM +0200, Igor Mammedov wrote: > On Thu, 12 May 2016 10:07:03 +0300 > "Michael S. Tsirkin" <m...@redhat.com> wrote: > > > On Wed, May 11, 2016 at 08:28:59PM -0300, Eduardo Habkost wrote: > > > On Thu, May 12, 2016 at 12

Re: [libvirt] [Qemu-devel] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-12 Thread Eduardo Habkost
On Thu, May 12, 2016 at 09:19:48AM +0200, Jiri Denemark wrote: > On Wed, May 11, 2016 at 16:35:50 -0300, Eduardo Habkost wrote: > > # @CpuDefinitionInfo: > > # > > # Virtual CPU definition. > > # > > # @name: the name of the CPU definition > > # @runnab

Re: [libvirt] [Qemu-devel] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-11 Thread Eduardo Habkost
On Wed, May 11, 2016 at 09:11:33AM +0200, Markus Armbruster wrote: > Eduardo Habkost <ehabk...@redhat.com> writes: > > > On Tue, May 10, 2016 at 10:23:16AM +0200, Markus Armbruster wrote: > >> Eduardo Habkost <ehabk...@redhat.com> writes: > >> >

[libvirt] [PATCH 0/9] Add runnability info to query-cpu-definitions

2016-05-06 Thread Eduardo Habkost
om> Cc: Christian Borntraeger <borntrae...@de.ibm.com> Cc: Cornelia Huck <cornelia.h...@de.ibm.com> Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Eduardo Habkost (9): target-i386: Move TCG initialization check to tcg_x86_init() target-i386: Move TCG

[libvirt] [PATCH 3/9] target-i386: Call cpu_exec_init() on realize

2016-05-06 Thread Eduardo Habkost
by cpu_exec_init() can't be reverted. Move cpu_exec_init() call to realize so a simple object_new() won't trigger it, and so that it is called after some basic validation of CPU parameters. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v1 -> v2: * Call cpu_exec_ini

[libvirt] [PATCH 8/9] target-i386: Use "-" instead of "_" on all feature names

2016-05-06 Thread Eduardo Habkost
featurestr() to keep compatibility with the old that had underscores. Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.c | 32 1 file changed, 16 insertions(+), 16 de

[libvirt] [PATCH 1/9] target-i386: Move TCG initialization check to tcg_x86_init()

2016-05-06 Thread Eduardo Habkost
Instead of requiring cpu.c to check if TCG was already initialized, simply let the function be called multiple times. Suggested-by: Igor Mammedov <imamm...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.c | 4 +--- target-i386/translate.c |

[libvirt] [PATCH 2/9] target-i386: Move TCG initialization to realize time

2016-05-06 Thread Eduardo Habkost
. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v1 -> v2: * Now the inited/tcg_initialized variable doesn't exist anymore * Move tcg_x86_init() call after basic parameter validation inside realizefn --- target-i386/cpu.c | 9 - 1 file changed, 4 inserti

[libvirt] [PATCH 6/9] target-i386: Define CPUID filtering functions before x86_cpu_list()

2016-05-06 Thread Eduardo Habkost
Just move code to another place so the it can be reused by the query-cpu-definitions code. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.c | 68 +++ 1 file changed, 34 insertions(+), 34 deletions(-) diff

[libvirt] [PATCH 5/9] target-i386: Move warning code outside x86_cpu_filter_features()

2016-05-06 Thread Eduardo Habkost
x86_cpu_filter_features() will be reused by code that shouldn't print any warning. Move the warning code to a new x86_cpu_report_filtered_features() function, and call it from x86_cpu_realizefn(). Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.

[libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-06 Thread Eduardo Habkost
mark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- qapi-schema.json | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/qapi-schema.json b/qapi-schema.json index 54634c4..450e6e7 100644 --- a/qapi-schema.j

[libvirt] [PATCH 4/9] target-i386: List CPU models using subclass list

2016-05-06 Thread Eduardo Habkost
Instead of using the builtin_x86_defs array, use the QOM subclass list to list CPU models on "-cpu ?" and "query-cpu-definitions". Signed-off-by: Andreas Färber <afaer...@suse.de> [ehabkost: copied code from a patch by Andreas: "target-i386: QOM'ify CPU", fro

[libvirt] [PATCH 9/9] target-i386: Return runnability information on query-cpu-definitions

2016-05-06 Thread Eduardo Habkost
;unavailable-features": ["fma4", "xop", "3dnowprefetch", "misalignsse", "sse4a"] }, { "runnable": false, "name": "Opteron_G3", "unavailable-features": ["misalignsse", "

Re: [libvirt] [Qemu-devel] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-10 Thread Eduardo Habkost
On Tue, May 10, 2016 at 10:23:16AM +0200, Markus Armbruster wrote: > Eduardo Habkost <ehabk...@redhat.com> writes: > > > On Mon, May 09, 2016 at 09:20:15AM -0600, Eric Blake wrote: > >> On 05/06/2016 12:11 PM, Eduardo Habkost wrote: > >> > Extend query-cpu-d

Re: [libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-10 Thread Eduardo Habkost
On Tue, May 10, 2016 at 08:32:53AM +0200, David Hildenbrand wrote: > > > > Yes, I think so. However to really make good hints, upper layers would > > > most > > > likely need more information about the exact problem with a property - > > > maybe something like an enum value per problematic

Re: [libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-09 Thread Eduardo Habkost
t;m...@linux.vnet.ibm.com> > > Cc: Christian Borntraeger <borntrae...@de.ibm.com> > > Cc: Cornelia Huck <cornelia.h...@de.ibm.com> > > Cc: Jiri Denemark <jdene...@redhat.com> > > Cc: libvir-list@redhat.com > > Signed-off-by: Eduardo Habkost <ehabk..

Re: [libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-09 Thread Eduardo Habkost
> > > > current host. > > > > > > > > Cc: David Hildenbrand <d...@linux.vnet.ibm.com> > > > > Cc: Michael Mueller <m...@linux.vnet.ibm.com> > > > > Cc: Christian Borntraeger <borntrae...@de.ibm.com> > > &

Re: [libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-09 Thread Eduardo Habkost
On Mon, May 09, 2016 at 09:20:15AM -0600, Eric Blake wrote: > On 05/06/2016 12:11 PM, Eduardo Habkost wrote: > > Extend query-cpu-definitions schema to allow it to return two new > > optional fields: "runnable" and "unavailable-features". > > "r

Re: [libvirt] [PATCH 7/9] qmp: Add runnability information to query-cpu-definitions

2016-05-09 Thread Eduardo Habkost
On Mon, May 09, 2016 at 03:06:18PM +0200, David Hildenbrand wrote: > > > > > > > > > > Just FYI, on other architectures (e.g. s390x), other conditions (e.g. > > > > > cpu > > > > > generation) also define if a CPU model is runnable, so the pure > > > > > availability of > > > > > features does

[libvirt] Examples of QEMU machine-type-specific code in libvirt?

2016-08-03 Thread Eduardo Habkost
Hi, I am collecting some material for my KVM Forum talk, and I am interested in hearing from libvirt developers about instances where machine-type-specific information is needed by libvirt, and the info is not provided by QEMU. I found some instances where machine-type capabilities are hardcoded

Re: [libvirt] [Qemu-devel] [RFC 00/28] s390x CPU models: exposing features

2016-06-30 Thread Eduardo Habkost
On Thu, Jun 30, 2016 at 09:32:04AM +0200, David Hildenbrand wrote: > > Are there any further comments, especially on patches 23-25, introducing new > QOM interfaces? > > Also, if anybody is planning to look into this, please speak up :) I am still planning to look at this (I didn't look at the

[libvirt] CPU topology and ordering in ACPI MADT

2016-07-01 Thread Eduardo Habkost
I got a bug report yesterday that seems to be related to how CPUs are ordered 'lscpu' and /proc/cpuinfo: https://bugzilla.redhat.com/show_bug.cgi?id=1351160 It's not an actual bug, but it's not the first time I see people confused by CPU numbers not following socket/core/thread IDs in lscpu and

Re: [libvirt] [Qemu-devel] [PATCH] qdev: Make "hotplugged" property read-only

2017-02-22 Thread Eduardo Habkost
On Tue, Jan 03, 2017 at 03:06:02PM -0200, Eduardo Habkost wrote: > (CCing libvir-list and Laine) > > On Tue, Jan 03, 2017 at 05:53:27PM +0100, Igor Mammedov wrote: > > On Tue, 3 Jan 2017 17:10:15 +0100 > > Paolo Bonzini <pbonz...@redhat.com> wrote: > > > &

Re: [libvirt] [PATCH v3 0/3] target-i386: Implement query-cpu-model-expansion

2017-02-23 Thread Eduardo Habkost
On Wed, Feb 22, 2017 at 04:00:26PM -0300, Eduardo Habkost wrote: > This series implements query-cpu-model-expansion on target-i386. > > Changes v2 -> v3: > - > > * Rebased on top of my x86-next branch: > https://github.com/ehabkost/qemu x86-

[libvirt] [PATCH v2 2/3] i386/kvm: Blacklist TSX on known broken hosts

2017-02-22 Thread Eduardo Habkost
when running on those hosts. Reference: * glibc commit 2702856bf45c82cf8e69f2064f5aa15c0ceb6359: https://sourceware.org/git/?p=glibc.git;a=commit;h=2702856bf45c82cf8e69f2064f5aa15c0ceb6359 Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target/i386/kvm.c | 17 +

[libvirt] [PATCH v2 0/3] Use non-blacklisted family/model/stepping for Haswell CPU model

2017-02-22 Thread Eduardo Habkost
: car...@redhat.com Cc: trie...@redhat.com Cc: berra...@redhat.com Cc: jdene...@redhat.com Cc: pbonz...@redhat.com Eduardo Habkost (3): i386: host_vendor_fms() helper function i386/kvm: Blacklist TSX on known broken hosts i386: Change stepping of Haswell to non-blacklisted value includ

[libvirt] [PATCH v2 1/3] i386: host_vendor_fms() helper function

2017-02-22 Thread Eduardo Habkost
Helper function for code that needs to check the host CPU vendor/family/model/stepping values. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v1 -> v2: * Coding style fix (split long lines) --- target/i386/cpu.h | 1 + target/i386/cpu.c | 29 +--

[libvirt] [PATCH v2 3/3] i386: Change stepping of Haswell to non-blacklisted value

2017-02-22 Thread Eduardo Habkost
git;a=commit;h=2702856bf45c82cf8e69f2064f5aa15c0ceb6359 Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- include/hw/i386/pc.h | 5 + target/i386/cpu.c| 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 079e8d9393..2

[libvirt] [PATCH v3 2/3] target-i386: Implement query-cpu-model-expansion QMP command

2017-02-22 Thread Eduardo Habkost
properties. A future follow-up should improve the implementation of type=full, so that it returns more detailed data, including every writable QOM property in the CPU object. Cc: libvir-list@redhat.com Cc: Jiri Denemark <jdene...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.

[libvirt] [PATCH v3 0/3] target-i386: Implement query-cpu-model-expansion

2017-02-22 Thread Eduardo Habkost
ruster <arm...@redhat.com> Cc: Richard Henderson <r...@twiddle.net> Cc: Igor Mammedov <imamm...@redhat.com> Cc: Eric Blake <ebl...@redhat.com> Eduardo Habkost (3): target-i386: Define static "base" CPU model target-i386: Implement query-cpu-model-expans

[libvirt] [PATCH RESEND] qdev: Make "hotplugged" property read-only

2017-02-22 Thread Eduardo Habkost
n the migration stream instead of requiring it to be set propertly. Whatever solution we choose in the future, this patch disables setting "hotplugged" explicitly in the command-line by now, because the ability to set the property is unused, untested, and undocumented. Signed-off-by: Eduar

Re: [libvirt] [PATCH RESEND] qdev: Make "hotplugged" property read-only

2017-02-22 Thread Eduardo Habkost
On Wed, Feb 22, 2017 at 04:43:37PM -0600, Eric Blake wrote: > On 02/22/2017 01:26 PM, Eduardo Habkost wrote: > > The "hotplugged" property is user visible, but it was never meant > > to be set by the user. There are probably multiple ways to break > > or

Re: [libvirt] TSC frequency configuration & invtsc migration (was Re: [PATCH 4/4] kvm: Allow migration with invtsc)

2017-01-18 Thread Eduardo Habkost
On Wed, Jan 18, 2017 at 09:55:43AM -0200, Marcelo Tosatti wrote: > On Tue, Jan 10, 2017 at 05:36:48PM +0100, Paolo Bonzini wrote: > > > > > > On 05/01/2017 11:48, Marcelo Tosatti wrote: > > >> Host A has TSC scaling, host B doesn't have TSC scaling. We want > > >> to be able to start the VM on

Re: [libvirt] [Qemu-devel] [PATCH 0/9] i386: query-cpu-model-expansion test script

2017-01-19 Thread Eduardo Habkost
On Wed, Jan 18, 2017 at 08:18:40PM +0100, David Hildenbrand wrote: > Am 18.01.2017 um 18:34 schrieb Eduardo Habkost: > > On Wed, Jan 18, 2017 at 12:09:28PM -0500, Jason J. Herne wrote: > >> On 01/18/2017 12:00 PM, Eduardo Habkost wrote: > >>> On Tue, Jan 17, 201

[libvirt] [PATCH v2 4/4] target-i386: Implement query-cpu-model-expansion QMP command

2017-01-16 Thread Eduardo Habkost
properties. A future follow-up should improve the implementation of type=full, so that it returns more detailed data, including every writable QOM property in the CPU object. Cc: libvir-list@redhat.com Cc: Jiri Denemark <jdene...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.

[libvirt] [PATCH v2 0/4] target-i386: Implement query-cpu-model-expansion

2017-01-16 Thread Eduardo Habkost
Herne" <jjhe...@linux.vnet.ibm.com> Cc: Markus Armbruster <arm...@redhat.com> Cc: Richard Henderson <r...@twiddle.net> Cc: Igor Mammedov <imamm...@redhat.com> Cc: Eric Blake <ebl...@redhat.com> Eduardo Habkost (4): target-i386: Reorganize and document CPUID initializa

Re: [libvirt] [Qemu-devel] [PATCH 0/9] i386: query-cpu-model-expansion test script

2017-01-18 Thread Eduardo Habkost
On Tue, Jan 17, 2017 at 10:22:10AM -0500, Jason J. Herne wrote: > On 01/16/2017 08:01 PM, Eduardo Habkost wrote: > > This is a follow-up to the series that implements > > query-cpu-model-expansion. Before including the test script, the > > series has some fixes to allow the

Re: [libvirt] [Qemu-devel] [PATCH 0/9] i386: query-cpu-model-expansion test script

2017-01-18 Thread Eduardo Habkost
On Wed, Jan 18, 2017 at 12:09:28PM -0500, Jason J. Herne wrote: > On 01/18/2017 12:00 PM, Eduardo Habkost wrote: > > On Tue, Jan 17, 2017 at 10:22:10AM -0500, Jason J. Herne wrote: > > > On 01/16/2017 08:01 PM, Eduardo Habkost wrote: > > > > This is a follow-up

Re: [libvirt] [Qemu-devel] [PATCH 0/9] i386: query-cpu-model-expansion test script

2017-01-20 Thread Eduardo Habkost
On Fri, Jan 20, 2017 at 03:30:54PM +0100, David Hildenbrand wrote: > Am 19.01.2017 um 18:45 schrieb Daniel P. Berrange: > > On Thu, Jan 19, 2017 at 06:21:22PM +0100, David Hildenbrand wrote: > >> > Also think about "query-cpu-model-expansion model=host type=static", > which will

[libvirt] [PATCH 0/9] i386: query-cpu-model-expansion test script

2017-01-16 Thread Eduardo Habkost
t; Cc: libvir-list@redhat.com Cc: Jiri Denemark <jdene...@redhat.com> Cc: "Jason J. Herne" <jjhe...@linux.vnet.ibm.com> Cc: Markus Armbruster <arm...@redhat.com> Cc: Richard Henderson <r...@twiddle.net> Cc: Igor Mammedov <imamm...@redhat.com> Cc: Eric Bla

[libvirt] [PULL 10/11] i386: Implement query-cpu-model-expansion QMP command

2017-02-27 Thread Eduardo Habkost
@redhat.com> Tested-by: Jiri Denemark <jdene...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- monitor.c | 4 +- target/i386/cpu.c | 191 +- 2 files changed, 193 insertions(+), 2 deletions(-) diff -

Re: [libvirt] Cpu Modeling

2016-09-29 Thread Eduardo Habkost
On Thu, Sep 29, 2016 at 04:21:07PM +0200, Jiri Denemark wrote: [...] > > > Slightly related, I don't think we have a way to list CPU features > > > supported by QEMU over QMP, do we? "-cpu ?" will show them all, but I > > > couldn't find a QMP command that would give me the same list. > > > >

Re: [libvirt] [PATCH v4 05/11] target-i386: Remove underscores from property names

2016-09-30 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 09:29:58AM +0200, Jiri Denemark wrote: > On Thu, Sep 29, 2016 at 18:14:53 -0300, Eduardo Habkost wrote: > > Instead of translating the feature name entries when adding > > property names, store the actual property names in the feature > > name array

Re: [libvirt] [PATCH v4 11/11] target-i386: Return runnability information on query-cpu-definitions

2016-09-30 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 10:02:49AM +0200, Paolo Bonzini wrote: > On 29/09/2016 23:14, Eduardo Habkost wrote: > > +/* Return the feature property name for a feature flag bit */ > > +static const char *x86_cpu_feature_name(FeatureWord w, int bitnr) > > +{ > &g

Re: [libvirt] Cpu Modeling

2016-09-30 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 09:00:15AM +0200, Jiri Denemark wrote: > On Thu, Sep 29, 2016 at 15:51:58 -0300, Eduardo Habkost wrote: > > On Thu, Sep 29, 2016 at 04:21:07PM +0200, Jiri Denemark wrote: > > [...] > > > > > Slightly related, I don't think we h

Re: [libvirt] QMP stubs: how to return "not implemented" errors?

2016-10-04 Thread Eduardo Habkost
On Mon, Oct 03, 2016 at 03:15:39PM -0500, Eric Blake wrote: [...] > > 3.2) Removing the unimplemented command from query-commands only > >(by calling qmp_disable_command()), but keeping it on the QAPI > >schema. I am not sure it's OK to do that. If it is, this > >sounds like the

[libvirt] [PATCH v6 0/3] Add runnability info to query-cpu-definitions

2016-10-07 Thread Eduardo Habkost
ot;, "fma4", "xop", "3dnowprefetch", "misalignsse", "sse4a"], "static": false, "name": "Opteron_G5" }, { "unavailable-features": ["fma4", "

Re: [libvirt] [Qemu-devel] [PATCH v5 00/12] Add runnability info to query-cpu-definitions

2016-10-07 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 03:49:34PM -0300, Eduardo Habkost wrote: [...] > Eduardo Habkost (12): > tests: Add test case for x86 feature parsing compatibility > target-i386: List CPU models using subclass list > target-i386: Disable VME by default with TCG > target-i386: R

Re: [libvirt] [Qemu-devel] [PATCH v5 11/12] qmp: Add runnability information to query-cpu-definitions

2016-10-07 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 03:49:45PM -0300, Eduardo Habkost wrote: > Add a new optional field to query-cpu-definitions schema: > "unavailable-features". It will contain a list of QOM properties > that prevent the CPU model from running in the current host. > >

Re: [libvirt] QMP stubs: how to return "not implemented" errors?

2016-10-04 Thread Eduardo Habkost
On Tue, Oct 04, 2016 at 03:57:10PM -0500, Eric Blake wrote: > On 10/04/2016 01:22 PM, Eduardo Habkost wrote: > > On Mon, Oct 03, 2016 at 03:15:39PM -0500, Eric Blake wrote: > > [...] > >>> 3.2) Removing the unimplemented command from query-commands only > >>

[libvirt] [PATCH v6 2/3] target-i386: x86_cpu_load_features() function

2016-10-07 Thread Eduardo Habkost
When probing for CPU model information, we need to reuse the code that initializes CPUID fields, but not the remaining side-effects of x86_cpu_realizefn(). Move that code to a separate function that can be reused later. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v5

[libvirt] [PATCH v6 3/3] target-i386: Return runnability information on query-cpu-definitions

2016-10-07 Thread Eduardo Habkost
Fill the "unavailable-features" field on the x86 implementation of query-cpu-definitions. Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v5 -> v6: * Call x86_cpu_filter_features(), now t

[libvirt] [PATCH v6 1/3] target-i386: Move warning code outside x86_cpu_filter_features()

2016-10-07 Thread Eduardo Habkost
x86_cpu_filter_features() will be reused by code that shouldn't print any warning. Move the warning code to a new x86_cpu_report_filtered_features() function, and call it from x86_cpu_realizefn(). Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v5 -> v6: * Recovered v3

[libvirt] [PATCH v3 0/5] Add runnability info to query-cpu-definitions

2016-09-19 Thread Eduardo Habkost
"static": false, "name": "Nehalem" }, { "unavailable-features": [], "static": false, "name": "IvyBridge" }, { "unavailable-feature

[libvirt] [PATCH v3 2/5] target-i386: Move warning code outside x86_cpu_filter_features()

2016-09-19 Thread Eduardo Habkost
x86_cpu_filter_features() will be reused by code that shouldn't print any warning. Move the warning code to a new x86_cpu_report_filtered_features() function, and call it from x86_cpu_realizefn(). Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.

[libvirt] [PATCH v3 5/5] target-i386: Return runnability information on query-cpu-definitions

2016-09-19 Thread Eduardo Habkost
Fill the "unavailable-features" field on the x86 implementation of query-cpu-definitions. Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v2 -> v3: * Create a x86_cpu_feature_name() functi

[libvirt] [PATCH v3 1/5] target-i386: List CPU models using subclass list

2016-09-19 Thread Eduardo Habkost
Instead of using the builtin_x86_defs array, use the QOM subclass list to list CPU models on "-cpu ?" and "query-cpu-definitions". Signed-off-by: Andreas Färber <afaer...@suse.de> [ehabkost: copied code from a patch by Andreas: "target-i386: QOM'ify CPU", fro

[libvirt] [PATCH v3 4/5] qmp: Add runnability information to query-cpu-definitions

2016-09-19 Thread Eduardo Habkost
.com> Cc: Christian Borntraeger <borntrae...@de.ibm.com> Cc: Cornelia Huck <cornelia.h...@de.ibm.com> Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v2 -> v3: * Small documentatio

Re: [libvirt] Cpu Modeling

2016-09-23 Thread Eduardo Habkost
On Fri, Sep 23, 2016 at 02:05:59PM +0200, Jiri Denemark wrote: > On Thu, Sep 22, 2016 at 14:47:36 -0400, Jason J. Herne wrote: > > Testing for runability: > > - Simply try to start QEMU with KVM, compat machine, CPU model > > Yes, if the domain XML explicitly requests a specific CPU model. >

Re: [libvirt] Cpu Modeling

2016-09-22 Thread Eduardo Habkost
Hi! On Thu, Sep 22, 2016 at 02:47:36PM -0400, Jason J. Herne wrote: > Hi Jiri & Eduardo, > > You might remember a discussion with David Hildenbrand of IBM on the Qemu > mailing list regarding a new Qemu<->Libvirt interface for cpu modeling. I am > picking up this work from David and I wanted to

Re: [libvirt] [PATCH v3 4/5] qmp: Add runnability information to query-cpu-definitions

2016-09-20 Thread Eduardo Habkost
On Tue, Sep 20, 2016 at 01:25:06PM -0500, Eric Blake wrote: > On 09/19/2016 02:42 PM, Eduardo Habkost wrote: > > Add a new optional field to query-cpu-definitions schema: > > "unavailable-features". It will contain a list of QOM properties > > that prevent the CPU mo

[libvirt] [PATCH v3 3/5] target-i386: Define CPUID filtering functions before x86_cpu_list()

2016-09-19 Thread Eduardo Habkost
Just move code to another place so the it can be reused by the query-cpu-definitions code. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- target-i386/cpu.c | 68 +++ 1 file changed, 34 insertions(+), 34 deletions(-) diff

Re: [libvirt] [Qemu-devel] [PATCH v4 01/11] tests: Add test case for x86 feature parsing compatibility

2016-09-30 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 09:55:33AM +0200, Paolo Bonzini wrote: > > > On 29/09/2016 23:14, Eduardo Habkost wrote: > > + * "-foo" overrides "+foo" > > + * "[+-]foo" overrides "foo=..." > > Is this something that peo

[libvirt] QMP stubs: how to return "not implemented" errors?

2016-10-03 Thread Eduardo Habkost
Hi, When adding new QMP commands that are implemented by arch-specific code, we have been adding stubs that report QERR_UNSUPPORTED (see stubs/arch-query-cpu-model-expansion.c for an example). But we are using GenericError for that, and this prevents clients from reliably checking if the command

[libvirt] [PATCH v5 00/12] Add runnability info to query-cpu-definitions

2016-09-30 Thread Eduardo Habkost
"name": "Opteron_G5" }, { "unavailable-features": ["fma4", "xop", "3dnowprefetch", "misalignsse", "sse4a"], "static": false, "name": "

[libvirt] [PATCH v5 07/12] target-i386: Register properties for feature aliases manually

2016-09-30 Thread Eduardo Habkost
Instead of keeping the aliases inside the feature name arrays and require parsing the strings, just register alias properties manually. This simplifies the code for property registration and lookup. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v4 -> v5: * Refr

[libvirt] [PATCH v5 03/12] target-i386: Disable VME by default with TCG

2016-09-30 Thread Eduardo Habkost
a tcg_default_props array that will work like kvm_default_props. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 -> v4: * New patch added to series --- target-i386/cpu.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/target-i386/cpu.c b/target-i386/cp

[libvirt] [PATCH v5 10/12] target-i386: x86_cpu_load_features() function

2016-09-30 Thread Eduardo Habkost
When probing for CPU model information, we need to reuse the code that initializes CPUID fields, but not the remaining side-effects of x86_cpu_realizefn(). Move that code to a separate function that can be reused later. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v4

[libvirt] [PATCH v5 12/12] target-i386: Return runnability information on query-cpu-definitions

2016-09-30 Thread Eduardo Habkost
Fill the "unavailable-features" field on the x86 implementation of query-cpu-definitions. Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v3 -> v4: * Handle missing XSAVE component

[libvirt] [PATCH v5 04/12] target-i386: Register aliases for feature names with underscores

2016-09-30 Thread Eduardo Habkost
OM properties. Note that the underscores are still present in the FeatureWordInfo::feat_names arrays, because add_flagname_to_bitmaps() needs them to be kept. The next patches will remove add_flagname_to_bitmaps() and will allow us to finally remove the aliases from feat_names. Signed-off-by: Ed

[libvirt] [PATCH v5 05/12] target-i386: Make plus_features/minus_features QOM-based

2016-09-30 Thread Eduardo Habkost
s. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v4 -> v5: * Removed feat2prop() call, as we now have property aliases for the old names containing underscores Changes series v3 -> v4: * New patch added to series --- t

[libvirt] [PATCH v5 11/12] qmp: Add runnability information to query-cpu-definitions

2016-09-30 Thread Eduardo Habkost
.com> Cc: Christian Borntraeger <borntrae...@de.ibm.com> Cc: Cornelia Huck <cornelia.h...@de.ibm.com> Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Reviewed-by: Eric Blake <ebl...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> ---

[libvirt] [PATCH v5 06/12] target-i386: Remove underscores from feat_names arrays

2016-09-30 Thread Eduardo Habkost
(). Now we can remove the feat2prop() calls safely. So, the only user-visible effect of this patch are the new names being used in help and error messages for users. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v4 -> v5: * Remove the feat2prop() call from the alias reg

[libvirt] [PATCH v5 02/12] target-i386: List CPU models using subclass list

2016-09-30 Thread Eduardo Habkost
Instead of using the builtin_x86_defs array, use the QOM subclass list to list CPU models on "-cpu ?" and "query-cpu-definitions". Signed-off-by: Andreas Färber <afaer...@suse.de> [ehabkost: copied code from a patch by Andreas: "target-i386: QOM'ify CPU", fro

[libvirt] [PATCH v5 08/12] target-i386: xsave: Add FP and SSE bits to x86_ext_save_areas

2016-09-30 Thread Eduardo Habkost
Instead of treating the FP and SSE bits as special cases, add them to the x86_ext_save_areas array. This will simplify the code that calculates the supported xsave components and the size of the xsave area. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 ->

Re: [libvirt] [PATCH v5 04/12] target-i386: Register aliases for feature names with underscores

2016-09-30 Thread Eduardo Habkost
On Fri, Sep 30, 2016 at 02:56:42PM -0500, Eric Blake wrote: > On 09/30/2016 01:49 PM, Eduardo Habkost wrote: > > Registering the actual names containing underscores as aliases > > will allow management software to be aware that the old > > compatibility names are suported, an

[libvirt] [PATCH v5 09/12] target-i386: Move warning code outside x86_cpu_filter_features()

2016-09-30 Thread Eduardo Habkost
x86_cpu_filter_features() will be reused by code that shouldn't print any warning. Move the warning code to a new x86_cpu_report_filtered_features() function, and call it from x86_cpu_realizefn(). Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v3 -> v

[libvirt] [PATCH v5 01/12] tests: Add test case for x86 feature parsing compatibility

2016-09-30 Thread Eduardo Habkost
Add a new test case to ensure the existing behavior of the feature parsing code will be kept. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v4 -> v5: * Fix typo on commit message Reported-by: Jonathan Neuschäfer <j.neuschae...@gmx.net> * Add

[libvirt] [PATCH v4 06/11] target-i386: Register properties for feature aliases manually

2016-09-29 Thread Eduardo Habkost
Instead of keeping the aliases inside the feature name arrays and require parsing the strings, just register alias properties manually. This simplifies the property registration code and will simplify code that needs to look up property names for CPUID bits. Signed-off-by: Eduardo Habkost <eh

[libvirt] [PATCH v4 08/11] target-i386: Move warning code outside x86_cpu_filter_features()

2016-09-29 Thread Eduardo Habkost
x86_cpu_filter_features() will be reused by code that shouldn't print any warning. Move the warning code to a new x86_cpu_report_filtered_features() function, and call it from x86_cpu_realizefn(). Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v3 -> v

[libvirt] [PATCH v4 04/11] target-i386: Make plus_features/minus_features QOM-based

2016-09-29 Thread Eduardo Habkost
Instead of using custom feature name lookup code for plus_features/minus_features, save the property names used in "[+-]feature" and use object_property_set_bool() to set them. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 -> v4: * New pa

[libvirt] [PATCH v4 05/11] target-i386: Remove underscores from property names

2016-09-29 Thread Eduardo Habkost
Instead of translating the feature name entries when adding property names, store the actual property names in the feature name array. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 -> v4: * New patch added to series --- target-i386/c

[libvirt] [PATCH v4 00/11] Add runnability info to query-cpu-definitions

2016-09-29 Thread Eduardo Habkost
ron_G1" }, { "unavailable-features": [], "static": false, "name": "Nehalem" }, { "unavailable-features": [], "static": false, "name

[libvirt] [PATCH v4 10/11] qmp: Add runnability information to query-cpu-definitions

2016-09-29 Thread Eduardo Habkost
.com> Cc: Christian Borntraeger <borntrae...@de.ibm.com> Cc: Cornelia Huck <cornelia.h...@de.ibm.com> Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Reviewed-by: Eric Blake <ebl...@redhat.com> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> ---

[libvirt] [PATCH v4 07/11] target-i386: xsave: Add FP and SSE bits to x86_ext_save_areas

2016-09-29 Thread Eduardo Habkost
Instead of treating the FP and SSE bits as special cases, add them to the x86_ext_save_areas array. This will simplify the code that calculates the supported xsave components and the size of the xsave area. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 ->

[libvirt] [PATCH v4 03/11] target-i386: Disable VME by default with TCG

2016-09-29 Thread Eduardo Habkost
a tcg_default_props array that will work like kvm_default_props. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 -> v4: * New patch added to series --- target-i386/cpu.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/target-i386/cpu.c b/target-i386/cp

[libvirt] [PATCH v4 01/11] tests: Add test case for x86 feature parsing compatibility

2016-09-29 Thread Eduardo Habkost
Add a new test case to ensure the existing behavior of the feature parsing code wlil be kept. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes series v3 -> v4: * New patch added to series --- tests/test-x86-cpuid-compat.c | 39 ++

[libvirt] [PATCH v4 02/11] target-i386: List CPU models using subclass list

2016-09-29 Thread Eduardo Habkost
Instead of using the builtin_x86_defs array, use the QOM subclass list to list CPU models on "-cpu ?" and "query-cpu-definitions". Signed-off-by: Andreas Färber <afaer...@suse.de> [ehabkost: copied code from a patch by Andreas: "target-i386: QOM'ify CPU", fro

[libvirt] [PATCH v4 11/11] target-i386: Return runnability information on query-cpu-definitions

2016-09-29 Thread Eduardo Habkost
Fill the "unavailable-features" field on the x86 implementation of query-cpu-definitions. Cc: Jiri Denemark <jdene...@redhat.com> Cc: libvir-list@redhat.com Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes v3 -> v4: * Handle missing XSAVE component

[libvirt] [PATCH v4 09/11] target-i386: x86_cpu_load_features() function

2016-09-29 Thread Eduardo Habkost
When probing for CPU model information, we need to reuse the code that initializes CPUID fields, but not the remaining side-effects of x86_cpu_realizefn(). Move that code to a separate function that can be reused later. Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Changes ser

[libvirt] [PATCH] fixup! target-i386: x86_cpu_load_features() function

2016-10-10 Thread Eduardo Habkost
On Mon, Oct 10, 2016 at 02:25:32PM +0200, Igor Mammedov wrote: > On Fri, 7 Oct 2016 17:29:01 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > When probing for CPU model information, we need to reuse the code > > that initializes CPUID fields, but not

Re: [libvirt] [PATCH v6 3/3] target-i386: Return runnability information on query-cpu-definitions

2016-10-10 Thread Eduardo Habkost
On Mon, Oct 10, 2016 at 02:27:49PM +0200, Igor Mammedov wrote: > On Fri, 7 Oct 2016 17:29:02 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > Fill the "unavailable-features" field on the x86 implementation > > of query-cpu-definitions. > >

Re: [libvirt] [PATCH v6 1/3] target-i386: Move warning code outside x86_cpu_filter_features()

2016-10-10 Thread Eduardo Habkost
On Mon, Oct 10, 2016 at 01:57:08PM +0200, Igor Mammedov wrote: > On Fri, 7 Oct 2016 17:29:00 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > x86_cpu_filter_features() will be reused by code that shouldn't > > print any warning. Mov

Re: [libvirt] [Qemu-devel] [PATCH v4 7/8] qmp: Support abstract classes on device-list-properties

2016-11-07 Thread Eduardo Habkost
On Mon, Nov 07, 2016 at 09:09:58AM +0100, Markus Armbruster wrote: > Eduardo Habkost <ehabk...@redhat.com> writes: > > > On Fri, Nov 04, 2016 at 04:45:17PM +0100, Markus Armbruster wrote: > >> Eduardo Habkost <ehabk...@redhat.com> writes: > >> > >&

Re: [libvirt] [Qemu-devel] [PATCH v4 7/8] qmp: Support abstract classes on device-list-properties

2016-11-07 Thread Eduardo Habkost
On Mon, Nov 07, 2016 at 03:40:57PM +0100, Markus Armbruster wrote: > Eduardo Habkost <ehabk...@redhat.com> writes: > > > On Mon, Nov 07, 2016 at 09:09:58AM +0100, Markus Armbruster wrote: > >> Eduardo Habkost <ehabk...@redhat.com> writes: > >> >

Re: [libvirt] [Qemu-devel] [PATCH v4 7/8] qmp: Support abstract classes on device-list-properties

2016-11-11 Thread Eduardo Habkost
On Fri, Nov 11, 2016 at 01:17:44PM +0100, Jiri Denemark wrote: > On Tue, Nov 08, 2016 at 08:29:41 +0100, Markus Armbruster wrote: > > Eduardo Habkost <ehabk...@redhat.com> writes: > > > libvirt wants to know if the QEMU binary supports a given -cpu > > > optio

Re: [libvirt] [Qemu-devel] [PATCH v6 3/3] target-i386: Return runnability information on query-cpu-definitions

2016-10-14 Thread Eduardo Habkost
On Tue, Oct 11, 2016 at 04:13:44PM +0200, Igor Mammedov wrote: > On Fri, 7 Oct 2016 17:29:02 -0300 > Eduardo Habkost <ehabk...@redhat.com> wrote: > > > Fill the "unavailable-features" field on the x86 implementation > > of query-cpu-definitions. > >

Re: [libvirt] [Qemu-devel] [PATCH] fixup! target-i386: x86_cpu_load_features() function

2016-10-14 Thread Eduardo Habkost
On Tue, Oct 11, 2016 at 01:41:30PM +0200, Igor Mammedov wrote: [...] > > > > Oops, leftover from v5. Thanks for spotting that! Fixup below. > > > > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> > Reviewed-by: Igor Mammedov <imamm...@redhat.com> Th

<    1   2   3   4   5   6   7   8   >