hw/intc/apic: Use ERRP_GUARD() in apic_common_realize()
APICCommonClass::realize() is a DeviceRealize() handler which take an Error** parameter and can fail. Do not proceed further on failure. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Peter Xu <peterx@redhat.com> Message-Id: <20231003082728.83496-2-philmd@linaro.org>
This commit is contained in:
parent
ea08e72eb0
commit
705000674b
@ -257,6 +257,7 @@ static const VMStateDescription vmstate_apic_common;
|
|||||||
|
|
||||||
static void apic_common_realize(DeviceState *dev, Error **errp)
|
static void apic_common_realize(DeviceState *dev, Error **errp)
|
||||||
{
|
{
|
||||||
|
ERRP_GUARD();
|
||||||
APICCommonState *s = APIC_COMMON(dev);
|
APICCommonState *s = APIC_COMMON(dev);
|
||||||
APICCommonClass *info;
|
APICCommonClass *info;
|
||||||
static DeviceState *vapic;
|
static DeviceState *vapic;
|
||||||
@ -267,6 +268,9 @@ static void apic_common_realize(DeviceState *dev, Error **errp)
|
|||||||
|
|
||||||
info = APIC_COMMON_GET_CLASS(s);
|
info = APIC_COMMON_GET_CLASS(s);
|
||||||
info->realize(dev, errp);
|
info->realize(dev, errp);
|
||||||
|
if (*errp) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Note: We need at least 1M to map the VAPIC option ROM */
|
/* Note: We need at least 1M to map the VAPIC option ROM */
|
||||||
if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK &&
|
if (!vapic && s->vapic_control & VAPIC_ENABLE_MASK &&
|
||||||
|
Loading…
Reference in New Issue
Block a user