On 25/01/2017 14:01, Pavel Dovgalyuk wrote: >> From: Paolo Bonzini [mailto:pbonz...@redhat.com] >> On 25/01/2017 12:52, Pavel Dovgalyuk wrote: >>>> From: Paolo Bonzini [mailto:paolo.bonz...@gmail.com] On Behalf Of Paolo >>>> Bonzini >>>> On 24/01/2017 08:17, Pavel Dovgalyuk wrote: >>>>> This patch implements saving/restoring of static apic_delivered variable. >>>>> >>>>> Signed-off-by: Pavel Dovgalyuk <pavel.dovga...@ispras.ru> >>>>> --- >>>>> hw/intc/apic_common.c | 32 ++++++++++++++++++++++++++++++++ >>>>> include/hw/i386/apic_internal.h | 2 ++ >>>>> 2 files changed, 34 insertions(+) >>>>> >>>>> diff --git a/hw/intc/apic_common.c b/hw/intc/apic_common.c >>>>> index d78c885..ac6cc67 100644 >>>>> --- a/hw/intc/apic_common.c >>>>> +++ b/hw/intc/apic_common.c >>>>> @@ -384,6 +384,24 @@ static bool apic_common_sipi_needed(void *opaque) >>>>> return s->wait_for_sipi != 0; >>>>> } >>>>> >>>>> +static bool apic_irq_delivered_needed(void *opaque) >>>>> +{ >>>>> + return true; >>>> >>>> Is it needed for CPUs except the first (or the last?)? >>>> >>> >>> As this is global variable, it is needed only for one CPU. >>> Do you mean that APIC state is saved for every CPU? >> >> Yes, each CPU has its own APIC. > > How to link this data to a single CPU?
Since it's global, you only need to migrate it once. You're migrating the same value many times. Paolo