From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39849) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YmngX-0002B2-UJ for qemu-devel@nongnu.org; Mon, 27 Apr 2015 14:23:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YmngS-0002IF-E0 for qemu-devel@nongnu.org; Mon, 27 Apr 2015 14:23:13 -0400 Received: from cantor2.suse.de ([195.135.220.15]:44919 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YmngS-0002I2-4X for qemu-devel@nongnu.org; Mon, 27 Apr 2015 14:23:08 -0400 Message-ID: <553E7E8A.1070104@suse.de> Date: Mon, 27 Apr 2015 20:23:06 +0200 From: =?ISO-8859-15?Q?Andreas_F=E4rber?= MIME-Version: 1.0 References: <1430157509-9486-1-git-send-email-ehabkost@redhat.com> <1430157509-9486-5-git-send-email-ehabkost@redhat.com> In-Reply-To: <1430157509-9486-5-git-send-email-ehabkost@redhat.com> Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PULL 4/6] target-i386: Make "level" and "xlevel" properties static List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost , qemu-devel@nongnu.org Cc: Peter Maydell , Richard Henderson , Paolo Bonzini Am 27.04.2015 um 19:58 schrieb Eduardo Habkost: > Static properties require only 1 line of code, much simpler than the > existing code that requires writing new getters/setters. This is missing the fact that there is a semantic difference between my setters and those of your static properties: >=20 > Reviewed-by: Igor Mammedov > Signed-off-by: Eduardo Habkost > --- > target-i386/cpu.c | 40 ++-------------------------------------- > 1 file changed, 2 insertions(+), 38 deletions(-) >=20 > diff --git a/target-i386/cpu.c b/target-i386/cpu.c > index 03b33cf..2bbf01d 100644 > --- a/target-i386/cpu.c > +++ b/target-i386/cpu.c > @@ -1618,38 +1618,6 @@ static void x86_cpuid_version_set_stepping(Objec= t *obj, Visitor *v, > env->cpuid_version |=3D value & 0xf; > } > =20 > -static void x86_cpuid_get_level(Object *obj, Visitor *v, void *opaque, > - const char *name, Error **errp) > -{ > - X86CPU *cpu =3D X86_CPU(obj); > - > - visit_type_uint32(v, &cpu->env.cpuid_level, name, errp); > -} > - > -static void x86_cpuid_set_level(Object *obj, Visitor *v, void *opaque, > - const char *name, Error **errp) > -{ > - X86CPU *cpu =3D X86_CPU(obj); > - > - visit_type_uint32(v, &cpu->env.cpuid_level, name, errp); > -} The setter of your static properties will prohibit setting the value after the CPU has been realized. If that is intended, you should at least mention it in the commit message and not just argue with the amount of lines. Regards, Andreas > - > -static void x86_cpuid_get_xlevel(Object *obj, Visitor *v, void *opaque= , > - const char *name, Error **errp) > -{ > - X86CPU *cpu =3D X86_CPU(obj); > - > - visit_type_uint32(v, &cpu->env.cpuid_xlevel, name, errp); > -} > - > -static void x86_cpuid_set_xlevel(Object *obj, Visitor *v, void *opaque= , > - const char *name, Error **errp) > -{ > - X86CPU *cpu =3D X86_CPU(obj); > - > - visit_type_uint32(v, &cpu->env.cpuid_xlevel, name, errp); > -} > - > static char *x86_cpuid_get_vendor(Object *obj, Error **errp) > { > X86CPU *cpu =3D X86_CPU(obj); > @@ -2900,12 +2868,6 @@ static void x86_cpu_initfn(Object *obj) > object_property_add(obj, "stepping", "int", > x86_cpuid_version_get_stepping, > x86_cpuid_version_set_stepping, NULL, NULL, NU= LL); > - object_property_add(obj, "level", "int", > - x86_cpuid_get_level, > - x86_cpuid_set_level, NULL, NULL, NULL); > - object_property_add(obj, "xlevel", "int", > - x86_cpuid_get_xlevel, > - x86_cpuid_set_xlevel, NULL, NULL, NULL); > object_property_add_str(obj, "vendor", > x86_cpuid_get_vendor, > x86_cpuid_set_vendor, NULL); > @@ -2998,6 +2960,8 @@ static Property x86_cpu_properties[] =3D { > DEFINE_PROP_BOOL("check", X86CPU, check_cpuid, false), > DEFINE_PROP_BOOL("enforce", X86CPU, enforce_cpuid, false), > DEFINE_PROP_BOOL("kvm", X86CPU, expose_kvm, true), > + DEFINE_PROP_UINT32("level", X86CPU, env.cpuid_level, 0), > + DEFINE_PROP_UINT32("xlevel", X86CPU, env.cpuid_xlevel, 0), > DEFINE_PROP_END_OF_LIST() > }; > =20 >=20 --=20 SUSE Linux GmbH, Maxfeldstr. 5, 90409 N=FCrnberg, Germany GF: Felix Imend=F6rffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG N=FCrnberg)