[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v6 04/11] xen/x86: Add supporting code for uploading LAPIC contexts during domain create
On 01.10.2024 14:38, Alejandro Vallejo wrote: > If toolstack were to upload LAPIC contexts as part of domain creation it If it were to - yes. But it doesn't, an peeking ahead in the series I also couldn't spot this changing. Hence I don#t think I see why this change would be needed, and why ... > would encounter a problem were the architectural state does not reflect > the APIC ID in the hidden state. This patch ensures updates to the > hidden state trigger an update in the architectural registers so the > APIC ID in both is consistent. > > Signed-off-by: Alejandro Vallejo <alejandro.vallejo@xxxxxxxxx> > --- > xen/arch/x86/hvm/vlapic.c | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c > index 02570f9dd63a..a8183c3023da 100644 > --- a/xen/arch/x86/hvm/vlapic.c > +++ b/xen/arch/x86/hvm/vlapic.c > @@ -1640,7 +1640,27 @@ static int cf_check lapic_load_hidden(struct domain > *d, hvm_domain_context_t *h) > > s->loaded.hw = 1; > if ( s->loaded.regs ) > + { > + /* > + * We already processed architectural regs in lapic_load_regs(), so > + * this must be a migration. Fix up inconsistencies from any older > Xen. > + */ > lapic_load_fixup(s); > + } > + else > + { > + /* > + * We haven't seen architectural regs so this could be a migration > or a > + * plain domain create. In the domain create case it's fine to modify > + * the architectural state to align it to the APIC ID that was just > + * uploaded and in the migrate case it doesn't matter because the > + * architectural state will be replaced by the LAPIC_REGS ctx later > on. > + */ ... a comment would need to mention a case that never really happens, thus only risking to cause confusion. Jan > + if ( vlapic_x2apic_mode(s) ) > + set_x2apic_id(s); > + else > + vlapic_set_reg(s, APIC_ID, SET_xAPIC_ID(s->hw.x2apic_id)); > + } > > hvm_update_vlapic_mode(v); >
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |