diff options
| author | Peter Maydell | 2016-01-21 15:15:05 +0100 |
|---|---|---|
| committer | Peter Maydell | 2016-01-21 15:15:05 +0100 |
| commit | a54c87b68a0410d0cf6f8b84e42074a5cf463732 (patch) | |
| tree | 5624221d5795a305436e7169701124d168963db3 /exec.c | |
| parent | cputlb.c: Use correct address space when looking up MemoryRegionSection (diff) | |
| download | qemu-a54c87b68a0410d0cf6f8b84e42074a5cf463732.tar.gz qemu-a54c87b68a0410d0cf6f8b84e42074a5cf463732.tar.xz qemu-a54c87b68a0410d0cf6f8b84e42074a5cf463732.zip | |
exec.c: Pass MemTxAttrs to iotlb_to_region so it uses the right AS
Pass the MemTxAttrs for the memory access to iotlb_to_region(); this
allows it to determine the correct AddressSpace to use for the lookup.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Diffstat (limited to 'exec.c')
| -rw-r--r-- | exec.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -2238,9 +2238,10 @@ static uint16_t dummy_section(PhysPageMap *map, AddressSpace *as, return phys_section_add(map, §ion); } -MemoryRegion *iotlb_to_region(CPUState *cpu, hwaddr index) +MemoryRegion *iotlb_to_region(CPUState *cpu, hwaddr index, MemTxAttrs attrs) { - CPUAddressSpace *cpuas = &cpu->cpu_ases[0]; + int asidx = cpu_asidx_from_attrs(cpu, attrs); + CPUAddressSpace *cpuas = &cpu->cpu_ases[asidx]; AddressSpaceDispatch *d = atomic_rcu_read(&cpuas->memory_dispatch); MemoryRegionSection *sections = d->map.sections; |
