qemu-irix/target-ppc
Michael Roth 8d64975c98 target-ppc: fix hugepage support when using memory-backend-file
Current PPC code relies on -mem-path being used in order for
hugepage support to be detected. With the introduction of
MemoryBackendFile we can now handle this via:
  -object memory-file-backend,mem-path=...,id=hugemem0 \
  -numa node,id=mem0,memdev=hugemem0

Management tools like libvirt treat the 2 approaches as
interchangeable in some cases, which can lead to user-visible
regressions even for previously supported guest configurations.

Fix these by also iterating through any configured memory
backends that may be backed by hugepages.

Since the old code assumed hugepages always backed the entirety
of guest memory, play it safe an pick the minimum across the
max pages sizes for all backends, even ones that aren't backed
by hugepages.

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
(cherry picked from commit 2d103aae87)
Conflicts:
	target-ppc/kvm.c

*remove context dependency on header includes not in 2.3.0

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2015-07-29 21:50:55 -05:00
..
Makefile.objs target-ppc: Introduce DFP Helper Utilities 2014-06-16 13:24:29 +02:00
STATUS target-ppc: remove powerpc 970gx 2014-03-05 03:06:23 +01:00
arch_dump.c target-ppc: Set the correct endianness in ELF dump header 2014-06-16 13:24:36 +02:00
cpu-models.c target-ppc: Remove POWER5+ v0.0 that never existed 2015-03-25 22:49:46 +01:00
cpu-models.h target-ppc: Remove POWER5+ v0.0 that never existed 2015-03-25 22:49:46 +01:00
cpu-qom.h target-ppc: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
cpu.h cpu: Make cpu_init() return QOM CPUState object 2015-03-10 17:33:51 +01:00
dfp_helper.c target-ppc: Fix compiler warning 2014-06-24 20:01:24 +04:00
excp_helper.c target-ppc: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
fpu_helper.c target-ppc: Eliminate set_fprf Argument From helper_compute_fprf 2015-01-07 16:16:25 +01:00
gdbstub.c target-ppc: Fix gdbstub for ppc64le-linux-user 2014-07-08 12:10:36 +02:00
helper.h target-ppc: Introduce tbegin 2015-01-07 16:16:27 +01:00
helper_regs.h PPC: Only enter MSR_POW when no interrupts pending 2014-04-08 11:20:05 +02:00
int_helper.c target-ppc: Fix vcmpbfp. Unordered Case 2014-11-04 23:26:15 +01:00
kvm-stub.c
kvm.c target-ppc: fix hugepage support when using memory-backend-file 2015-07-29 21:50:55 -05:00
kvm_ppc.c PPC: KVM: Compile fix for qemu_notify_event 2013-09-02 10:06:42 +02:00
kvm_ppc.h spapr: add uuid/host details to device tree 2014-09-08 12:50:47 +02:00
machine.c target-ppc: don't invalidate msr MSR_HVB bit in cpu_post_load 2015-04-17 11:44:01 +01:00
mem_helper.c target-ppc: Introduce tbegin 2015-01-07 16:16:27 +01:00
mfrom_table.c
mfrom_table_gen.c
misc_helper.c target-ppc: move sdr1 value change detection logic to helper_store_sdr1() 2015-03-09 15:00:05 +01:00
mmu-hash32.c qemu-log: add log category for MMU info 2014-12-16 18:43:19 +00:00
mmu-hash32.h target-ppc: Use PowerPCCPU in PowerPCCPUClass::handle_mmu_fault hook 2014-03-13 19:20:48 +01:00
mmu-hash64.c target-ppc: Fix warnings from Sparse 2015-03-09 15:00:08 +01:00
mmu-hash64.h target-ppc: Use right page size with hash table lookup 2015-03-09 14:59:53 +01:00
mmu_helper.c target-ppc: move sdr1 value change detection logic to helper_store_sdr1() 2015-03-09 15:00:05 +01:00
timebase_helper.c tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
translate.c tcg: Change translator-side labels to a pointer 2015-03-13 12:28:18 -07:00
translate_init.c PPC: Introduce the Virtual Time Base (VTB) SPR register 2015-03-09 15:00:07 +01:00
user_only_helper.c cpu: Move exception_index field from CPU_COMMON to CPUState 2014-03-13 19:20:46 +01:00