]> xenbits.xensource.com Git - people/vhanquez/xen.git/commitdiff
x86_64: fix error checking in arch_set_info_guest()
authorTim Deegan <Tim.Deegan@citrix.com>
Mon, 14 Mar 2011 17:00:34 +0000 (17:00 +0000)
committerTim Deegan <Tim.Deegan@citrix.com>
Mon, 14 Mar 2011 17:00:34 +0000 (17:00 +0000)
Cannot specify user mode execution without specifying user-mode
pagetables.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
xen-unstable changeset:   23034:c79aae866ad8
xen-unstable date:        Mon Mar 14 16:59:49 2011 +0000

xen/arch/x86/domain.c

index a024e198e90b4bacdf1ee975c0becbb8ee2aaf37..5791925675a7aa2f10e9d56d49ee4d87a616cac8 100644 (file)
@@ -826,6 +826,11 @@ int arch_set_info_guest(
 
             v->arch.guest_table_user = pagetable_from_pfn(cr3_pfn);
         }
+        else if ( !(flags & VGCF_in_kernel) )
+        {
+            destroy_gdt(v);
+            return -EINVAL;
+        }
     }
     else
     {