[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] xenpaging: add error code to indicate iommem passthrough

# HG changeset patch
# User Olaf Hering <olaf@xxxxxxxxx>
# Date 1333120147 -7200
# Node ID 34d9828185501f6e7ea2c3c2a397176a8e54ef0a
# Parent  80653c8ea1d19dfe6130396bbc77f766eb9f9fab
xenpaging: add error code to indicate iommem passthrough

Similar to the existing ENODEV and EXDEV error codes, add EMDEV to
indicate that iommu passthrough is not compatible with paging.
All error codes are just made-up return codes to give proper error
messages in the pager.

Also update the HAP related error message now that paging is enabled
also on AMD hosts.

Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>

diff -r 80653c8ea1d1 -r 34d982818550 tools/xenpaging/xenpaging.c
--- a/tools/xenpaging/xenpaging.c
+++ b/tools/xenpaging/xenpaging.c
@@ -378,7 +378,10 @@ static struct xenpaging *xenpaging_init(
                 ERROR("xenpaging is (or was) active on this domain");
             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 
             case EXDEV:
                 ERROR("xenpaging not supported in a PoD guest");
diff -r 80653c8ea1d1 -r 34d982818550 xen/arch/x86/mm/mem_event.c
--- 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, x
             /* No paging if iommu is used */
-            rc = -EXDEV;
+            rc = -EMLINK;
             if ( unlikely(need_iommu(d)) )
+            rc = -EXDEV;
             /* Disallow paging in a PoD guest */
             if ( p2m->pod.entry_count )

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.