[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/2] arm: Boilerpate arch_domain_teardown()
- To: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
- Date: Mon, 5 Jun 2023 15:43:31 +0100
- Authentication-results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
- Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Jens Wiklander <jens.wiklander@xxxxxxxxxx>
- Delivery-date: Mon, 05 Jun 2023 14:43:55 +0000
- Ironport-data: A9a23:6ihxxKP22eyT3jjvrR1Nl8FynXyQoLVcMsEvi/4bfWQNrUoggT0Cm 2BLD26OaPrfMDGmc9h0b9638kMEsZWGzN5nHgto+SlhQUwRpJueD7x1DKtS0wC6dZSfER09v 63yTvGacajYm1eF/k/F3oDJ9CU6jufQAOKnUoYoAwgpLSd8UiAtlBl/rOAwh49skLCRDhiE/ Nj/uKUzAnf8s9JPGjxSs/rrRC9H5qyo42tG5gBmPJingXeF/5UrJMNHTU2OByOQrrl8RoaSW +vFxbelyWLVlz9F5gSNy+uTnuUiG9Y+DCDW4pZkc/HKbitq/0Te5p0TJvsEAXq7vh3S9zxHJ HehgrTrIeshFvWkdO3wyHC0GQkmVUFN0OevzXRSLaV/ZqAJGpfh66wGMa04AWEX0uxzXGBy+ 7tbEQ8EUyysosuI5eKcSsA506zPLOGzVG8eknRpzDWfBvc6W5HTBa7N4Le03h9p2JoIR6yHI ZNEN3w2Nk+ojx5nYz/7DLoXmuuyi2a5WDpfsF+P/oI84nTJzRw327/oWDbQUoXTHJsIxBnC/ goq+Uz+WU5GMdO58QGDsWK3gN6S2i/cXrArQejQGvlC3wTImz175ActfUu2p7y1h1CzX/pbK lcI4Ww+oK4q7kupQ9LhGRqirxaspQUAUtBdF+k77gClyafO5QudQG8eQVZpasEitcIwbSwn0 BmOhdyBLQJotLqZWHeM7IC+pDm5OTUWBWIabCpCRgwAi/HprZsvlBvJQpBmGbSsk9zuMTjqx naBqy1Wr7cei9VNyKS4+VnBjz+2jpzISAcv4UPQRG3N0+9iTNf7PcryswGdtKseat/DFTFto UToheCU6L0PMZ/K1xWySdgxM5SA2dPVFz311AsH84Yayxyh/HuqfIZ16T54JVt0PstsRQIFc HM/qisKusYNYSLCgbtfJtvoVp90lfSI+cHNDKi8UzZYXnRmmOZrFglKbFXY4W3imVNEfUoXa cbCKpbE4Zr35M1aINuKqwU1i+RDKsMWnzm7qXXHI/OPj9KjiIa9E+ttDbd3RrlRAFm4iAvU6 c1DEMCB1g9SVubzCgGOr95OfAhRcChnW8+owyCySgJkClA/cFzN9teLme9xE2Cbt/o9ehj0E oGVBRYDlQuXaYzvIgSWcHFzAI4Drr4mxU/XyRcEZA7ys1B6ONbH0UvqX8dvFVXR3LA5nKEco jhsU5noP8mjvRyep2xEPcil8N07HPlp7CrXVxeYjPEEV8YIb2T0FhXMJ2MDKAFm4vKLiPYD
- Ironport-hdrordr: A9a23:MmAZR6CyPNHqgF/lHel855DYdb4zR+YMi2TDsHoBMiC9E/bo7/ xG+c5xvyMc5wx9ZJheo7C90cW7Lk80jKQFg7X5Xo3SJTUO2lHIEGg41/qG/9SIIUSXygc378 ldmsZFZOEYB2IK7vrS0U2ZFMw8yN6M/MmT9IHjJwoBd3AMV0ho1XYCNi+rVnd7QxQDOpowfa DsgvZ6mw==
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
XXX to be filled in with TEE teardown.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
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>
Jens: In the same was as the previous patch in the common path, you want to
add a PROG_tee(?) here, and rearrange the right function(s).
---
xen/arch/arm/domain.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/xen/arch/arm/domain.c b/xen/arch/arm/domain.c
index b3981d70a442..b00d0e4f30b7 100644
--- a/xen/arch/arm/domain.c
+++ b/xen/arch/arm/domain.c
@@ -752,6 +752,33 @@ int arch_domain_create(struct domain *d,
int arch_domain_teardown(struct domain *d)
{
+ BUG_ON(!d->is_dying);
+
+ /* See domain_teardown() for an explanation of all of this magic. */
+ switch ( d->teardown.arch_val )
+ {
+#define PROGRESS(x) \
+ d->teardown.arch_val = PROG_ ## x; \
+ fallthrough; \
+ case PROG_ ## x
+
+ enum {
+ PROG_none,
+ PROG_done,
+ };
+
+ case PROG_none:
+ BUILD_BUG_ON(PROG_none != 0);
+
+ PROGRESS(done):
+ break;
+
+#undef PROGRESS
+
+ default:
+ BUG();
+ }
+
return 0;
}
--
2.30.2
|