[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] hw/intc/exynos4210_gic: Turn instance_init into
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH] hw/intc/exynos4210_gic: Turn instance_init into realize function |
Date: |
Mon, 23 Jul 2018 15:04:31 +0100 |
On 23 July 2018 at 10:23, Thomas Huth <address@hidden> wrote:
> The instance_init function of the "exynos4210.gic" device creates a
> new "arm_gic" device and immediately realizes it with qdev_init_nofail().
> This will leave a lot of object in the QOM tree during introspection of
> the "exynos4210.gic" device, e.g. reproducible by starting QEMU like this:
>
> qemu-system-aarch64 -M none -nodefaults -nographic -monitor stdio
>
> And then by running "info qom-tree" at the HMP monitor, followed by
> "device_add exynos4210.gic,help" and finally checking "info qom-tree"
> again.
>
> Also note that qdev_init_nofail() can exit QEMU in case of errors - and
> this must never happen during an instance_init function, otherwise QEMU
> could terminate unexpectedly during introspection of a device.
>
> Since most of the code that follows the qdev_init_nofail() depends on
> the realized "gicbusdev", the easiest solution to the problem is to
> turn the whole instance_init function into a realize function instead.
>
> Signed-off-by: Thomas Huth <address@hidden>
Applied to target-arm.next, thanks.
-- PMM