mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
x86/HVM: avoid memory_type_changed() invocations when possible
They're expensive, and nothing changes if MTRRs are disabled and any of the ranges gets changed, or if fixed range MTRRs are disabled and any of them gets changed. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
This commit is contained in:
1 parent
82b9bc1320
commit
4e34e0586f
1 file changed
+5
-2
@@ -472,7 +472,9 @@ bool_t mtrr_fix_range_msr_set(struct domain *d, struct mtrr_state *m,
|
||||
return 0;
|
||||
|
||||
fixed_range_base[row] = msr_content;
|
||||
memory_type_changed(d);
|
||||
|
||||
if ( m->enabled && m->fixed_enabled )
|
||||
memory_type_changed(d);
|
||||
}
|
||||
|
||||
return 1;
|
||||
@@ -515,7 +517,8 @@ bool_t mtrr_var_range_msr_set(
|
||||
|
||||
m->overlapped = is_var_mtrr_overlapped(m);
|
||||
|
||||
memory_type_changed(d);
|
||||
if ( m->enabled )
|
||||
memory_type_changed(d);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||