[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 1/2] x86: Introduce arch_domain_teardown()
On Mon, Jun 05, 2023 at 03:43:30PM +0100, Andrew Cooper wrote: > Plumb it into domain_teardown(). Provide arch_val in the teardown > continuation information for use by arch_domain_teardown(). > > No practical change. > > Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > --- > CC: Jan Beulich <JBeulich@xxxxxxxx> > CC: Roger Pau Monné <roger.pau@xxxxxxxxxx> > CC: Wei Liu <wl@xxxxxxx> > CC: Stefano Stabellini <sstabellini@xxxxxxxxxx> > CC: Julien Grall <julien@xxxxxxx> > CC: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx> > CC: Bertrand Marquis <bertrand.marquis@xxxxxxx> > CC: Jens Wiklander <jens.wiklander@xxxxxxxxxx> > --- > xen/arch/arm/domain.c | 5 +++++ > xen/arch/x86/domain.c | 5 +++++ > xen/common/domain.c | 6 ++++++ > xen/include/xen/domain.h | 1 + > xen/include/xen/sched.h | 1 + > 5 files changed, 18 insertions(+) > > diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c > index d8ef6501ff8e..b3981d70a442 100644 > --- a/xen/arch/arm/domain.c > +++ b/xen/arch/arm/domain.c > @@ -750,6 +750,11 @@ int arch_domain_create(struct domain *d, > return rc; > } > > +int arch_domain_teardown(struct domain *d) > +{ > + return 0; > +} > + > void arch_domain_destroy(struct domain *d) > { > /* IOMMU page table is shared with P2M, always call > diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c > index 39c215316546..5f66c2ae33d7 100644 > --- a/xen/arch/x86/domain.c > +++ b/xen/arch/x86/domain.c > @@ -888,6 +888,11 @@ int arch_domain_create(struct domain *d, > return rc; > } > > +int arch_domain_teardown(struct domain *d) > +{ > + return 0; > +} > + > void arch_domain_destroy(struct domain *d) > { > if ( is_hvm_domain(d) ) > diff --git a/xen/common/domain.c b/xen/common/domain.c > index 6a440590fe2a..b0d850e3595b 100644 > --- a/xen/common/domain.c > +++ b/xen/common/domain.c > @@ -416,6 +416,7 @@ static int domain_teardown(struct domain *d) > PROG_none, > PROG_gnttab_mappings, > PROG_vcpu_teardown, > + PROG_arch_teardown, > PROG_done, > }; > > @@ -436,6 +437,11 @@ static int domain_teardown(struct domain *d) > return rc; > } > > + PROGRESS(arch_teardown): > + rc = arch_domain_teardown(d); > + if ( rc ) > + return rc; > + > PROGRESS(done): > break; > > diff --git a/xen/include/xen/domain.h b/xen/include/xen/domain.h > index 26f9c4f6dd5b..c3348c90748f 100644 > --- a/xen/include/xen/domain.h > +++ b/xen/include/xen/domain.h > @@ -80,6 +80,7 @@ int arch_domain_create(struct domain *d, > struct xen_domctl_createdomain *config, > unsigned int flags); > > +int arch_domain_teardown(struct domain *d); > void arch_domain_destroy(struct domain *d); > > void arch_domain_shutdown(struct domain *d); > diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h > index 85242a73d374..854f3e32c00e 100644 > --- a/xen/include/xen/sched.h > +++ b/xen/include/xen/sched.h > @@ -589,6 +589,7 @@ struct domain > */ > struct { > unsigned int val; > + unsigned int arch_val; While I haven't looked at patch 2, wouldn't such continuation information better be encoded in arch_domain in whatever way is more suitable for each architecture? Thanks, Roger.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |