[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH RFC 03/10] domain: GADDR based shared guest area registration alternative - teardown
On 13.12.2022 22:44, Julien Grall wrote: > On 19/10/2022 08:40, Jan Beulich wrote: >> In preparation of the introduction of new vCPU operations allowing to >> register the respective areas (one of the two is x86-specific) by >> guest-physical address, add the necessary domain cleanup hooks. >> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> >> --- >> RFC: Zapping the areas in pv_shim_shutdown() may not be strictly >> necessary: Aiui unmap_vcpu_info() is called only because the vCPU >> info area cannot be re-registered. Beyond that I guess the >> assumption is that the areas would only be re-registered as they >> were before. If that's not the case I wonder whether the guest >> handles for both areas shouldn't also be zapped. > > I don't know the code enough to be able to answer it. Right; I hope the original shim authors to be able to shed some light on this. > The code itself looks good to me. With one remark below: > > Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx> Thanks. >> @@ -1555,6 +1559,15 @@ void unmap_vcpu_info(struct vcpu *v) >> put_page_and_type(mfn_to_page(mfn)); >> } >> >> +/* >> + * This is only intended to be used for domain cleanup (or more generally >> only >> + * with at least the respective vCPU, if it's not the current one, reliably >> + * paused). >> + */ >> +void unmap_guest_area(struct vcpu *v, struct guest_area *area) >> +{ > > IIUC, you will add the ASSERT() we discussed in patch #7 in this patch. > I would be fine if you keep my reviewed-by. And thanks again. Indeed this is what I have pending for v2: /* * This is only intended to be used for domain cleanup (or more generally only * with at least the respective vCPU, if it's not the current one, reliably * paused). */ void unmap_guest_area(struct vcpu *v, struct guest_area *area) { if ( v != current ) ASSERT(atomic_read(&v->pause_count) | atomic_read(&d->pause_count)); } Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |