|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XEN PATCH v9 01/24] xen: Introduce arch_domain_teardown()
Hi Jens,
> On 5 Jul 2023, at 11:34, Jens Wiklander <jens.wiklander@xxxxxxxxxx> wrote:
>
> From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
>
> 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>
> Signed-off-by: Jens Wiklander <jens.wiklander@xxxxxxxxxx>
Reviewed-by: Bertrand Marquis <bertrand.marquis@xxxxxxx>
Cheers
Bertrand
> ---
> 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 8c18e9207907..15d9709a97d2 100644
> --- a/xen/arch/arm/domain.c
> +++ b/xen/arch/arm/domain.c
> @@ -793,6 +793,11 @@ fail:
> 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 caaa40263792..304aa04fa6cb 100644
> --- a/xen/common/domain.c
> +++ b/xen/common/domain.c
> @@ -439,6 +439,7 @@ static int domain_teardown(struct domain *d)
> PROG_none,
> PROG_gnttab_mappings,
> PROG_vcpu_teardown,
> + PROG_arch_teardown,
> PROG_done,
> };
>
> @@ -459,6 +460,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 1df8f933d076..d35af348410c 100644
> --- a/xen/include/xen/domain.h
> +++ b/xen/include/xen/domain.h
> @@ -81,6 +81,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;
> struct vcpu *vcpu;
> } teardown;
>
> --
> 2.34.1
>
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |