[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH for-1.7 v2 4/8] exec: don't ignore high address bits
From: |
Marcel Apfelbaum |
Subject: |
[Qemu-devel] [PATCH for-1.7 v2 4/8] exec: don't ignore high address bits on lookup |
Date: |
Thu, 7 Nov 2013 12:41:20 +0200 |
From: "Michael S. Tsirkin" <address@hidden>
Lookup of address > target address space should
return an unassigned section, instead of silently
ignoring high bits.
Reported-by: Luiz Capitulino <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
---
exec.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/exec.c b/exec.c
index 79610ce..aeeaf00 100644
--- a/exec.c
+++ b/exec.c
@@ -197,6 +197,9 @@ static void phys_page_set_level(PhysPageEntry *lp, hwaddr
*index,
}
}
+#define TARGET_PHYS_MAX_ADDR \
+ (0x1ULL << (TARGET_PHYS_ADDR_SPACE_BITS - TARGET_PAGE_BITS))
+
static void phys_page_set(AddressSpaceDispatch *d,
hwaddr index, hwaddr nb,
uint16_t leaf)
@@ -213,6 +216,10 @@ static MemoryRegionSection *phys_page_find(PhysPageEntry
lp, hwaddr index,
PhysPageEntry *p;
int i;
+ if (index >= TARGET_PHYS_MAX_ADDR) {
+ return §ions[PHYS_SECTION_UNASSIGNED];
+ }
+
for (i = P_L2_LEVELS - 1; i >= 0 && !lp.is_leaf; i--) {
if (lp.ptr == PHYS_MAP_NODE_NIL) {
return §ions[PHYS_SECTION_UNASSIGNED];
--
1.8.3.1
[Qemu-devel] [PATCH for-1.7 v2 3/8] hw/ppc: limit iommu-spapr memory size, Marcel Apfelbaum, 2013/11/07
[Qemu-devel] [PATCH for-1.7 v2 4/8] exec: don't ignore high address bits on lookup,
Marcel Apfelbaum <=
[Qemu-devel] [PATCH for-1.7 v2 5/8] pci: fix address space size for bridge, Marcel Apfelbaum, 2013/11/07
[Qemu-devel] [PATCH for-1.7 v2 7/8] pc: s/INT64_MAX/UINT64_MAX/, Marcel Apfelbaum, 2013/11/07
[Qemu-devel] [PATCH for-1.7 v2 8/8] spapr_pci: s/INT64_MAX/UINT64_MAX/, Marcel Apfelbaum, 2013/11/07
[Qemu-devel] [PATCH for-1.7 v2 2/8] hw/alpha: limit iommu-typhoon memory size, Marcel Apfelbaum, 2013/11/07
[Qemu-devel] [PATCH for-1.7 v2 6/8] exec: don't ignore high address bits on set, Marcel Apfelbaum, 2013/11/07
Re: [Qemu-devel] [PATCH for-1.7 v2 0/8] fix address space size issue, Alexander Graf, 2013/11/07
Re: [Qemu-devel] [PATCH for-1.7 v2 0/8] fix address space size issue, Paolo Bonzini, 2013/11/07