diff options
author | Sheng Yang <sheng@linux.intel.com> | 2010-01-05 06:02:27 -0500 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2010-03-01 10:35:46 -0500 |
commit | 17cc393596823f4bbab81e68a9e23e7beadbcfca (patch) | |
tree | 7c5ffc52ebeab12dac3308a8a1aecffee37cb734 /arch/x86/kvm/x86.c | |
parent | c9c5417455b0c2e3c164883354b5480e5aee3b36 (diff) |
KVM: x86: Rename gb_page_enable() to get_lpage_level() in kvm_x86_ops
Then the callback can provide the maximum supported large page level, which
is more flexible.
Also move the gb page support into x86_64 specific.
Signed-off-by: Sheng Yang <sheng@linux.intel.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/x86/kvm/x86.c')
-rw-r--r-- | arch/x86/kvm/x86.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index aff3479867a8..c990424d86d0 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c | |||
@@ -1641,10 +1641,12 @@ static void do_cpuid_ent(struct kvm_cpuid_entry2 *entry, u32 function, | |||
1641 | u32 index, int *nent, int maxnent) | 1641 | u32 index, int *nent, int maxnent) |
1642 | { | 1642 | { |
1643 | unsigned f_nx = is_efer_nx() ? F(NX) : 0; | 1643 | unsigned f_nx = is_efer_nx() ? F(NX) : 0; |
1644 | unsigned f_gbpages = kvm_x86_ops->gb_page_enable() ? F(GBPAGES) : 0; | ||
1645 | #ifdef CONFIG_X86_64 | 1644 | #ifdef CONFIG_X86_64 |
1645 | unsigned f_gbpages = (kvm_x86_ops->get_lpage_level() == PT_PDPE_LEVEL) | ||
1646 | ? F(GBPAGES) : 0; | ||
1646 | unsigned f_lm = F(LM); | 1647 | unsigned f_lm = F(LM); |
1647 | #else | 1648 | #else |
1649 | unsigned f_gbpages = 0; | ||
1648 | unsigned f_lm = 0; | 1650 | unsigned f_lm = 0; |
1649 | #endif | 1651 | #endif |
1650 | unsigned f_rdtscp = kvm_x86_ops->rdtscp_supported() ? F(RDTSCP) : 0; | 1652 | unsigned f_rdtscp = kvm_x86_ops->rdtscp_supported() ? F(RDTSCP) : 0; |