aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/xenpaging/xenpaging.c5
-rw-r--r--xen/arch/x86/mm/mem_event.c3
2 files changed, 6 insertions, 2 deletions
diff --git a/tools/xenpaging/xenpaging.c b/tools/xenpaging/xenpaging.c
index 5c1cd81ecc..52dbdaa9f3 100644
--- a/tools/xenpaging/xenpaging.c
+++ b/tools/xenpaging/xenpaging.c
@@ -378,7 +378,10 @@ static struct xenpaging *xenpaging_init(int argc, char *argv[])
ERROR("xenpaging is (or was) active on this domain");
break;
case ENODEV:
- ERROR("EPT not supported for this guest");
+ ERROR("xenpaging requires Hardware Assisted Paging");
+ break;
+ case EMLINK:
+ ERROR("xenpaging not supported while iommu passthrough is enabled");
break;
case EXDEV:
ERROR("xenpaging not supported in a PoD guest");
diff --git a/xen/arch/x86/mm/mem_event.c b/xen/arch/x86/mm/mem_event.c
index 2986825380..5c7d6b7bc2 100644
--- a/xen/arch/x86/mm/mem_event.c
+++ b/xen/arch/x86/mm/mem_event.c
@@ -564,10 +564,11 @@ int mem_event_domctl(struct domain *d, xen_domctl_mem_event_op_t *mec,
break;
/* No paging if iommu is used */
- rc = -EXDEV;
+ rc = -EMLINK;
if ( unlikely(need_iommu(d)) )
break;
+ rc = -EXDEV;
/* Disallow paging in a PoD guest */
if ( p2m->pod.entry_count )
break;