kvm: ppc: warn user on PAGE_SIZE mismatch

Message ID 1303030201-4317-1-git-send-email-agraf@suse.de
State New
Headers show

Commit Message

Alexander Graf April 17, 2011, 8:50 a.m.
On PPC, the default PAGE_SIZE is 64kb. Unfortunately, the hardware
alignments don't match here: There are RAM and MMIO regions within
a single page when it's 64kb in size.

So the only way out for now is to tell the user that he should use 4k

This patch gives the user a hint on that, telling him that failing to
register a prefix slot is most likely to be caused by mismatching PAGE_SIZE.

This way it's also more future-proof, as bigger PAGE_SIZE can easily be
supported by other machines then, as long as they stick to 64kb granularities.

Signed-off-by: Alexander Graf <agraf@suse.de>
 kvm-all.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)


diff --git a/kvm-all.c b/kvm-all.c
index 1d7e8ea..ff30858 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -577,6 +577,11 @@  static void kvm_set_phys_mem(target_phys_addr_t start_addr, ram_addr_t size,
             if (err) {
                 fprintf(stderr, "%s: error registering prefix slot: %s\n",
                         __func__, strerror(-err));
+#ifdef TARGET_PPC
+                fprintf(stderr, "%s: This is probably because your kernel's " \
+                                "PAGE_SIZE is too big. Please try to use 4k " \
+                                "PAGE_SIZE!\n", __func__);