On 20.04.2022 08:22, Juergen Gross wrote: > On 20.04.22 08:11, Jan Beulich wrote: >> On 20.04.2022 07:57, Juergen Gross wrote: >>> --- a/xen/include/xen/iommu.h >>> +++ b/xen/include/xen/iommu.h >>> @@ -341,8 +341,17 @@ struct domain_iommu { >>> /* Does the IOMMU pagetable need to be kept synchronized with the P2M */ >>> #ifdef CONFIG_HAS_PASSTHROUGH >>> #define need_iommu_pt_sync(d) (dom_iommu(d)->need_sync) >>> + >>> +int iommu_do_domctl(struct xen_domctl *domctl, struct domain *d, >>> + XEN_GUEST_HANDLE_PARAM(xen_domctl_t) u_domctl); >>> #else >>> #define need_iommu_pt_sync(d) ({ (void)(d); false; }) >>> + >>> +static inline int iommu_do_domctl(struct xen_domctl *domctl, struct domain >>> *d, >>> + XEN_GUEST_HANDLE_PARAM(xen_domctl_t) >>> u_domctl) >>> +{ >>> + return -ENOSYS; >>> +} >> >> As said in reply to Andrew as well as in a number or earlier occasions, >> I firmly think that this wants to be -EOPNOTSUPP, not -ENOSYS. Views > > In libxl there is an explicit check for ENOSYS being returned for > assigning/deassigning a device, same in the xc python bindings.
Urgh. Jan