Commit 5354edd2 authored by Paolo Bonzini's avatar Paolo Bonzini
Browse files

Revert "apic: save apic_delivered flag"



This reverts commit 07bfa354.
The global variable is only read as part of a

            apic_reset_irq_delivered();
            qemu_irq_raise(s->irq);
            if (!apic_get_irq_delivered()) {

sequence, so the value never matters at migration time.

Reported-by: default avatarDr. David Alan Gilbert <dglibert@redhat.com>
Cc: Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent e4548bb6
Loading
Loading
Loading
Loading
+0 −33
Original line number Diff line number Diff line
@@ -387,25 +387,6 @@ static bool apic_common_sipi_needed(void *opaque)
    return s->wait_for_sipi != 0;
}

static bool apic_irq_delivered_needed(void *opaque)
{
    APICCommonState *s = APIC_COMMON(opaque);
    return s->cpu == X86_CPU(first_cpu) && apic_irq_delivered != 0;
}

static void apic_irq_delivered_pre_save(void *opaque)
{
    APICCommonState *s = APIC_COMMON(opaque);
    s->apic_irq_delivered = apic_irq_delivered;
}

static int apic_irq_delivered_post_load(void *opaque, int version_id)
{
    APICCommonState *s = APIC_COMMON(opaque);
    apic_irq_delivered = s->apic_irq_delivered;
    return 0;
}

static const VMStateDescription vmstate_apic_common_sipi = {
    .name = "apic_sipi",
    .version_id = 1,
@@ -418,19 +399,6 @@ static const VMStateDescription vmstate_apic_common_sipi = {
    }
};

static const VMStateDescription vmstate_apic_irq_delivered = {
    .name = "apic_irq_delivered",
    .version_id = 1,
    .minimum_version_id = 1,
    .needed = apic_irq_delivered_needed,
    .pre_save = apic_irq_delivered_pre_save,
    .post_load = apic_irq_delivered_post_load,
    .fields = (VMStateField[]) {
        VMSTATE_INT32(apic_irq_delivered, APICCommonState),
        VMSTATE_END_OF_LIST()
    }
};

static const VMStateDescription vmstate_apic_common = {
    .name = "apic",
    .version_id = 3,
@@ -465,7 +433,6 @@ static const VMStateDescription vmstate_apic_common = {
    },
    .subsections = (const VMStateDescription*[]) {
        &vmstate_apic_common_sipi,
        &vmstate_apic_irq_delivered,
        NULL
    }
};
+0 −2
Original line number Diff line number Diff line
@@ -189,8 +189,6 @@ struct APICCommonState {
    DeviceState *vapic;
    hwaddr vapic_paddr; /* note: persistence via kvmvapic */
    bool legacy_instance_id;

    int apic_irq_delivered; /* for saving static variable */
};

typedef struct VAPICState {