On Fri, Sep 15, 2017 at 07:09:56PM +0100, Ian Jackson wrote: > And insist that it works. > > Signed-off-by: Ian Jackson <ian.jack...@eu.citrix.com> > --- > include/hw/xen/xen_common.h | 26 ++------------------------ > 1 file changed, 2 insertions(+), 24 deletions(-) > > diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h > index 86c7f26..b6cb024 100644 > --- a/include/hw/xen/xen_common.h > +++ b/include/hw/xen/xen_common.h > @@ -12,6 +12,7 @@ > > #include <xenctrl.h> > #include <xenstore.h> > +#include <xentoolcore.h> > #include <xen/io/xenbus.h> > > #include "hw/hw.h" > @@ -289,30 +290,7 @@ static inline int xen_modified_memory(domid_t domid, > uint64_t first_pfn, > > static inline int xen_restrict(domid_t domid) > { > - int rc; > - > - /* Attempt to restrict devicemodel operations */ > - rc = xendevicemodel_restrict(xen_dmod, domid); > - trace_xen_domid_restrict(rc ? errno : 0); > - > - if (rc < 0) { > - /* > - * If errno is ENOTTY then restriction is not implemented so > - * there's no point in trying to restrict other types of > - * operation, but it should not be treated as a failure. > - */ > - if (errno == ENOTTY) { > - return 0; > - } > - > - return rc; > - } > - > - /* Restrict foreignmemory operations */ > - rc = xenforeignmemory_restrict(xen_fmem, domid); > - trace_xen_domid_restrict(rc ? errno : 0); > - > - return rc; > + return xentoolcore_restrict_all(domid);
xentoolcore_restrict_all is going to need a compatibility stub, which can be done in this same header (xen_common.h). I think we can keep the call to trace_xen_domid_restrict(), that's just a debug printf. Also, we could remove the compatibility stub for xendevicemodel_restrict and xenforeignmemory_restrict as there are not used anymore. -- Anthony PERARD