WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [linux-2.6.18-xen] xen: add privileged/unprivileged kern

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] xen: add privileged/unprivileged kernel feature indication
From: Xen patchbot-linux-2.6.18-xen <patchbot@xxxxxxx>
Date: Fri, 08 Jul 2011 08:55:04 +0100
Delivery-date: Fri, 08 Jul 2011 00:55:11 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Jan Beulich <jbeulich@xxxxxxxxxx>
# Date 1310110587 -3600
# Node ID 0fc6424770c824541d4ea85231ba65d80c70202a
# Parent  3c900d6a5f6a51ff1547f21fef30ab8b92feccc9
xen: add privileged/unprivileged kernel feature indication

This is the kernel side change accompanying the earlier sent Xen side
patch titled identically.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---


diff -r 3c900d6a5f6a -r 0fc6424770c8 arch/i386/kernel/head-xen.S
--- a/arch/i386/kernel/head-xen.S       Thu Jun 23 11:14:00 2011 +0100
+++ b/arch/i386/kernel/head-xen.S       Fri Jul 08 08:36:27 2011 +0100
@@ -142,6 +142,12 @@
        .quad 0x0000000000000000        /* 0xf0 - unused */
        .quad 0x0000000000000000        /* 0xf8 - GDT entry 31: double-fault 
TSS */
 
+#ifdef CONFIG_XEN_UNPRIVILEGED_GUEST
+# define XEN_PRIV_CAP "!unprivileged"
+#else
+# define XEN_PRIV_CAP "privileged|unprivileged"
+#endif
+
 #if CONFIG_XEN_COMPAT <= 0x030002
 /*
  * __xen_guest information
@@ -168,7 +174,8 @@
                utoa (__PAGE_OFFSET + __PHYSICAL_START + VIRT_ENTRY_OFFSET)
        .ascii  ",HYPERCALL_PAGE=0x"
                utoa ((__PHYSICAL_START+HYPERCALL_PAGE_OFFSET)>>PAGE_SHIFT)
-       .ascii  ",FEATURES=writable_page_tables"
+       .ascii  ",FEATURES=" XEN_PRIV_CAP
+       .ascii           "|writable_page_tables"
        .ascii           "|writable_descriptor_tables"
        .ascii           "|auto_translated_physmap"
        .ascii           "|pae_pgdir_above_4gb"
@@ -195,7 +202,12 @@
        ELFNOTE(Xen, XEN_ELFNOTE_ENTRY,          .long,  startup_32)
        ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, .long,  hypercall_page)
        ELFNOTE(Xen, XEN_ELFNOTE_HV_START_LOW,   .long,  HYPERVISOR_VIRT_START)
-       ELFNOTE(Xen, XEN_ELFNOTE_FEATURES,       .asciz, 
"writable_page_tables|writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb|supervisor_mode_kernel")
+       ELFNOTE(Xen, XEN_ELFNOTE_FEATURES,       .ascii, XEN_PRIV_CAP;
+                                                .ascii  
"|writable_page_tables";
+                                                .ascii  
"|writable_descriptor_tables";
+                                                .ascii  
"|auto_translated_physmap";
+                                                .ascii  "|pae_pgdir_above_4gb";
+                                                .asciz  
"|supervisor_mode_kernel")
 #ifdef CONFIG_X86_PAE
        ELFNOTE(Xen, XEN_ELFNOTE_PAE_MODE,       .asciz, "yes")
        ELFNOTE(Xen, XEN_ELFNOTE_L1_MFN_VALID,   .quad,  
_PAGE_PRESENT,_PAGE_PRESENT)
diff -r 3c900d6a5f6a -r 0fc6424770c8 arch/x86_64/kernel/head-xen.S
--- a/arch/x86_64/kernel/head-xen.S     Thu Jun 23 11:14:00 2011 +0100
+++ b/arch/x86_64/kernel/head-xen.S     Fri Jul 08 08:36:27 2011 +0100
@@ -160,6 +160,12 @@
 ENTRY(empty_zero_page)
        .skip PAGE_SIZE
 
+#ifdef CONFIG_XEN_UNPRIVILEGED_GUEST
+# define XEN_PRIV_CAP "!unprivileged"
+#else
+# define XEN_PRIV_CAP "privileged|unprivileged"
+#endif
+
 #if CONFIG_XEN_COMPAT <= 0x030002
 /*
  * __xen_guest information
@@ -186,7 +192,8 @@
                utoh (__START_KERNEL_map + __PHYSICAL_START)
        .ascii  ",HYPERCALL_PAGE=0x"
                utoh (phys_hypercall_page >> PAGE_SHIFT)
-       .ascii  ",FEATURES=writable_page_tables"
+       .ascii  ",FEATURES=" XEN_PRIV_CAP
+       .ascii           "|writable_page_tables"
        .ascii           "|writable_descriptor_tables"
        .ascii           "|auto_translated_physmap"
        .ascii           "|supervisor_mode_kernel"
@@ -206,6 +213,10 @@
        ELFNOTE(Xen, XEN_ELFNOTE_ENTRY,          .quad,  startup_64)
        ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, .quad,  hypercall_page)
        ELFNOTE(Xen, XEN_ELFNOTE_L1_MFN_VALID,   .quad,  
_PAGE_PRESENT,_PAGE_PRESENT)
-       ELFNOTE(Xen, XEN_ELFNOTE_FEATURES,       .asciz, 
"writable_page_tables|writable_descriptor_tables|auto_translated_physmap|supervisor_mode_kernel")
+       ELFNOTE(Xen, XEN_ELFNOTE_FEATURES,       .ascii, XEN_PRIV_CAP;
+                                                .ascii "|writable_page_tables";
+                                                .ascii 
"|writable_descriptor_tables";
+                                                .ascii 
"|auto_translated_physmap";
+                                                .asciz 
"|supervisor_mode_kernel")
        ELFNOTE(Xen, XEN_ELFNOTE_LOADER,         .asciz, "generic")
        ELFNOTE(Xen, XEN_ELFNOTE_SUSPEND_CANCEL, .long,  1)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [linux-2.6.18-xen] xen: add privileged/unprivileged kernel feature indication, Xen patchbot-linux-2 . 6 . 18-xen <=