From: Thomas Huth <thuth@redhat.com>
To: Markus Armbruster <armbru@redhat.com>, qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, qemu-riscv@nongnu.org,
sagark@eecs.berkeley.edu, kbastian@mail.uni-paderborn.de,
alistair@alistair23.me, mark.cave-ayland@ilande.co.uk,
sundeep.lkml@gmail.com, b.galvani@gmail.com,
nieklinnenbank@gmail.com, qemu-arm@nongnu.org,
palmer@dabbelt.com, edgar.iglesias@gmail.com
Subject: Re: [PATCH for-5.1 1/2] msf2: Unbreak device-list-properties for "msf-soc"
Date: Wed, 15 Jul 2020 16:25:42 +0200 [thread overview]
Message-ID: <7418ff99-37c7-4891-9c72-e1764cd59611@redhat.com> (raw)
In-Reply-To: <20200715140440.3540942-2-armbru@redhat.com>
On 15/07/2020 16.04, Markus Armbruster wrote:
> Watch this:
>
> $ qemu-system-aarch64 -M ast2600-evb -S -display none -qmp stdio
> {"QMP": {"version": {"qemu": {"micro": 50, "minor": 0, "major": 5}, "package": "v5.0.0-2464-g3a9163af4e"}, "capabilities": ["oob"]}}
> {"execute": "qmp_capabilities"}
> {"return": {}}
> {"execute": "device-list-properties", "arguments": {"typename": "msf2-soc"}}
> Unsupported NIC model: ftgmac100
> armbru@dusky:~/work/images$ echo $?
> 1
>
> This is what breaks "make check SPEED=slow".
>
> Root cause is m2sxxx_soc_initfn()'s messing with nd_table[] via
> qemu_check_nic_model(). That's wrong.
>
> We fixed the exact same bug for device "allwinner-a10" in commit
> 8aabc5437b "hw/arm/allwinner-a10: Do not use nd_table in instance_init
> function". Fix this instance the same way: move the offending code to
> m2sxxx_soc_realize(), where it's less wrong, and add a FIXME comment.
>
> Fixes: 05b7374a58cd18aa3516e33513808896d0ac9b7b
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
> hw/arm/msf2-soc.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/hw/arm/msf2-soc.c b/hw/arm/msf2-soc.c
> index 16bb7c9916..33ea7df342 100644
> --- a/hw/arm/msf2-soc.c
> +++ b/hw/arm/msf2-soc.c
> @@ -82,10 +82,6 @@ static void m2sxxx_soc_initfn(Object *obj)
> }
>
> object_initialize_child(obj, "emac", &s->emac, TYPE_MSS_EMAC);
> - if (nd_table[0].used) {
> - qemu_check_nic_model(&nd_table[0], TYPE_MSS_EMAC);
> - qdev_set_nic_properties(DEVICE(&s->emac), &nd_table[0]);
> - }
> }
>
> static void m2sxxx_soc_realize(DeviceState *dev_soc, Error **errp)
> @@ -187,6 +183,11 @@ static void m2sxxx_soc_realize(DeviceState *dev_soc, Error **errp)
> g_free(bus_name);
> }
>
> + /* FIXME use qdev NIC properties instead of nd_table[] */
> + if (nd_table[0].used) {
> + qemu_check_nic_model(&nd_table[0], TYPE_MSS_EMAC);
> + qdev_set_nic_properties(DEVICE(&s->emac), &nd_table[0]);
> + }
> dev = DEVICE(&s->emac);
> object_property_set_link(OBJECT(&s->emac), "ahb-bus",
> OBJECT(get_system_memory()), &error_abort);
As long as nobody comes up with a proper clean up within the next days
that moves the nd_table[] access to msf2-som.c, I think this is an
acceptable work-around for 5.1.
Reviewed-by: Thomas Huth <thuth@redhat.com>
next prev parent reply other threads:[~2020-07-15 14:26 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-15 14:04 [PATCH for-5.1 0/2] Unbreak make check SPEED=slow Markus Armbruster
2020-07-15 14:04 ` [PATCH for-5.1 1/2] msf2: Unbreak device-list-properties for "msf-soc" Markus Armbruster
2020-07-15 14:15 ` Philippe Mathieu-Daudé
2020-07-15 14:41 ` Markus Armbruster
2020-07-16 2:59 ` sundeep subbaraya
2020-07-16 6:07 ` Thomas Huth
2020-07-16 7:36 ` Philippe Mathieu-Daudé
2020-07-16 7:54 ` sundeep subbaraya
2020-07-15 14:25 ` Thomas Huth [this message]
2020-07-15 14:39 ` Alistair Francis
2020-07-15 14:04 ` [PATCH for-5.1 2/2] hw: Mark nd_table[] misuse in realize methods FIXME Markus Armbruster
2020-07-15 14:27 ` Thomas Huth
2020-07-15 14:45 ` Markus Armbruster
2020-07-15 14:39 ` Alistair Francis
2020-07-15 16:53 ` Niek Linnenbank
2020-07-15 14:30 ` [PATCH for-5.1 0/2] Unbreak make check SPEED=slow no-reply
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=7418ff99-37c7-4891-9c72-e1764cd59611@redhat.com \
--to=thuth@redhat.com \
--cc=alistair@alistair23.me \
--cc=armbru@redhat.com \
--cc=b.galvani@gmail.com \
--cc=edgar.iglesias@gmail.com \
--cc=kbastian@mail.uni-paderborn.de \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=nieklinnenbank@gmail.com \
--cc=palmer@dabbelt.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=sagark@eecs.berkeley.edu \
--cc=sundeep.lkml@gmail.com \
/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).