On 04/11/2020 17:25, Eduardo Habkost wrote:
> This makes the nwindows getter and setter more consistent with
> the other field getters and setters (which work with any struct
> field).
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> Cc: Artyom Tarasenko <atar4qemu@gmail.com>
> Cc: qemu-devel@nongnu.org
> ---
> target/sparc/cpu.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/target/sparc/cpu.c b/target/sparc/cpu.c
> index 3acc99c29c..8bf02a4fe0 100644
> --- a/target/sparc/cpu.c
> +++ b/target/sparc/cpu.c
> @@ -789,8 +789,8 @@ static void sparc_cpu_initfn(Object *obj)
> static void sparc_get_nwindows(Object *obj, Visitor *v, const char *name,
> Property *prop, Error **errp)
> {
> - SPARCCPU *cpu = SPARC_CPU(obj);
> - int64_t value = cpu->env.def.nwindows;
> + uint32_t *ptr = FIELD_PTR(obj, prop, uint32_t);
> + int64_t value = *ptr;
>
> visit_type_int(v, name, &value, errp);
> }
> @@ -798,9 +798,9 @@ static void sparc_get_nwindows(Object *obj, Visitor *v, const char *name,
> static void sparc_set_nwindows(Object *obj, Visitor *v, const char *name,
> Property *prop, Error **errp)
> {
> + uint32_t *ptr = FIELD_PTR(obj, prop, uint32_t);
> const int64_t min = MIN_NWINDOWS;
> const int64_t max = MAX_NWINDOWS;
> - SPARCCPU *cpu = SPARC_CPU(obj);
> int64_t value;
>
> if (!visit_type_int(v, name, &value, errp)) {
> @@ -814,7 +814,7 @@ static void sparc_set_nwindows(Object *obj, Visitor *v, const char *name,
> value, min, max);
> return;
> }
> - cpu->env.def.nwindows = value;
> + *ptr = value;
> }
>
> static PropertyInfo qdev_prop_nwindows = {
This looks correct to me:
Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
ATB,
Mark.