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 here may differ of course, but in the absence of objections I consider this easy enough to adjust while committing. If, of course, the approach finds a majority in the first place - as indicated before I don't view it as very desirable to enumerate all the IOMMU related domctl-s in the common handler. FTAOD I can accept x86'es arch_do_domctl() returning -ENOSYS, but only for the purpose of not altering the pre-existing error code which would be returned if making it there. Jan