|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging] Argo/XSM: add SILO hooks
commit 599bca58849effbac4ef03a5986d20e38e26a854
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Mon May 17 15:42:32 2021 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Mon May 17 15:42:32 2021 +0200
Argo/XSM: add SILO hooks
In SILO mode restrictions for inter-domain communication should apply
here along the lines of those for evtchn and gnttab.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Daniel P. Smith <dpsmith@xxxxxxxxxxxxxxxxxxxx>
---
xen/xsm/silo.c | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/xen/xsm/silo.c b/xen/xsm/silo.c
index 4850756a3d..fc2ca5cd2d 100644
--- a/xen/xsm/silo.c
+++ b/xen/xsm/silo.c
@@ -81,12 +81,35 @@ static int silo_grant_copy(struct domain *d1, struct domain
*d2)
return -EPERM;
}
+#ifdef CONFIG_ARGO
+
+static int silo_argo_register_single_source(const struct domain *d1,
+ const struct domain *d2)
+{
+ if ( silo_mode_dom_check(d1, d2) )
+ return xsm_argo_register_single_source(d1, d2);
+ return -EPERM;
+}
+
+static int silo_argo_send(const struct domain *d1, const struct domain *d2)
+{
+ if ( silo_mode_dom_check(d1, d2) )
+ return xsm_argo_send(d1, d2);
+ return -EPERM;
+}
+
+#endif
+
static struct xsm_operations silo_xsm_ops = {
.evtchn_unbound = silo_evtchn_unbound,
.evtchn_interdomain = silo_evtchn_interdomain,
.grant_mapref = silo_grant_mapref,
.grant_transfer = silo_grant_transfer,
.grant_copy = silo_grant_copy,
+#ifdef CONFIG_ARGO
+ .argo_register_single_source = silo_argo_register_single_source,
+ .argo_send = silo_argo_send,
+#endif
};
void __init silo_init(void)
--
generated by git-patchbot for /home/xen/git/xen.git#staging
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |