VMX: remove useless super page recomputing in ept_set_entry.
authorKeir Fraser <keir.fraser@citrix.com>
Wed, 30 Jun 2010 17:09:16 +0000 (18:09 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Wed, 30 Jun 2010 17:09:16 +0000 (18:09 +0100)
Caller to ept_set_entry must give a valid order that hardware
supports, see set_p2m_entry in p2m.c.

Signed-off-by: Xin Li <xin.li@intel.com>
xen/arch/x86/mm/hap/p2m-ept.c

index e0b4a2a5069392e39c82ce75a3c76fff02336f79..1f7ba79518b124edb7526c9f6118ea0cca542a99 100644 (file)
@@ -307,18 +307,10 @@ ept_set_entry(struct domain *d, unsigned long gfn, mfn_t mfn,
     }
     else
     {
-        int num = order / EPT_TABLE_ORDER;
         int level;
         ept_entry_t *split_ept_entry;
 
-        if ( (num >= 2) && hvm_hap_has_1gb(d) )
-            num = 2;
-        else if ( (num >= 1) && hvm_hap_has_2mb(d) )
-            num = 1;
-        else
-            num = 0;
-
-        for ( level = split_level; level > num ; level-- )
+        for ( level = split_level; level > walk_level ; level-- )
         {
             rv = ept_split_large_page(d, &table, &index, gfn, level);
             if ( !rv )