KVM: PPC: Make large pages work
authorAlexander Graf <agraf@suse.de>
Sun, 10 Jan 2010 02:27:47 +0000 (03:27 +0100)
committerMarcelo Tosatti <mtosatti@redhat.com>
Mon, 1 Mar 2010 15:35:50 +0000 (12:35 -0300)
commit4b5c9b7f9bdd76a3c860731db08bfc6758e96e29
treeb2e5424d7c965e3cf343f685978814bd817b9066
parent5f2b105a1d6a137c8cfb2792b79128db965880a8
KVM: PPC: Make large pages work

An SLB entry contains two pieces of information related to size:

  1) PTE size
  2) SLB size

The L bit defines the PTE be "large" (usually means 16MB),
SLB_VSID_B_1T defines that the SLB should span 1 GB instead of the
default 256MB.

Apparently I messed things up and just put those two in one box,
shaked it heavily and came up with the current code which handles
large pages incorrectly, because it also treats large page SLB entries
as "1TB" segment entries.

This patch splits those two features apart, making Linux guests boot
even when they have > 256MB.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/powerpc/include/asm/kvm_book3s.h
arch/powerpc/kvm/book3s_64_mmu.c