memory: Implement memory_region_get_ram_addr with mr->ram_block

Backports commit 7ebb2745acbb8d910eab07dc5f0aa01a4457703c from qemu
This commit is contained in:
Fam Zheng 2018-02-21 08:00:50 -05:00 committed by Lioncash
parent 4b8c428494
commit 2c1a72635d
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7
16 changed files with 20 additions and 7 deletions

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_aarch64
#define memory_region_get_may_overlap memory_region_get_may_overlap_aarch64
#define memory_region_get_priority memory_region_get_priority_aarch64
#define memory_region_get_ram_addr memory_region_get_ram_addr_aarch64
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_aarch64
#define memory_region_get_size memory_region_get_size_aarch64
#define memory_region_info memory_region_info_aarch64

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_aarch64eb
#define memory_region_get_may_overlap memory_region_get_may_overlap_aarch64eb
#define memory_region_get_priority memory_region_get_priority_aarch64eb
#define memory_region_get_ram_addr memory_region_get_ram_addr_aarch64eb
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_aarch64eb
#define memory_region_get_size memory_region_get_size_aarch64eb
#define memory_region_info memory_region_info_aarch64eb

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_arm
#define memory_region_get_may_overlap memory_region_get_may_overlap_arm
#define memory_region_get_priority memory_region_get_priority_arm
#define memory_region_get_ram_addr memory_region_get_ram_addr_arm
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_arm
#define memory_region_get_size memory_region_get_size_arm
#define memory_region_info memory_region_info_arm

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_armeb
#define memory_region_get_may_overlap memory_region_get_may_overlap_armeb
#define memory_region_get_priority memory_region_get_priority_armeb
#define memory_region_get_ram_addr memory_region_get_ram_addr_armeb
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_armeb
#define memory_region_get_size memory_region_get_size_armeb
#define memory_region_info memory_region_info_armeb

View file

@ -2090,6 +2090,7 @@ symbols = (
'memory_region_get_fd',
'memory_region_get_may_overlap',
'memory_region_get_priority',
'memory_region_get_ram_addr',
'memory_region_get_ram_ptr',
'memory_region_get_size',
'memory_region_info',

View file

@ -710,14 +710,8 @@ void memory_region_add_subregion_overlap(MemoryRegion *mr,
/**
* memory_region_get_ram_addr: Get the ram address associated with a memory
* region
*
* DO NOT USE THIS FUNCTION. This is a temporary workaround while the Xen
* code is being reworked.
*/
static inline ram_addr_t memory_region_get_ram_addr(MemoryRegion *mr)
{
return mr->ram_addr;
}
ram_addr_t memory_region_get_ram_addr(MemoryRegion *mr);
uint64_t memory_region_get_alignment(const MemoryRegion *mr);

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_m68k
#define memory_region_get_may_overlap memory_region_get_may_overlap_m68k
#define memory_region_get_priority memory_region_get_priority_m68k
#define memory_region_get_ram_addr memory_region_get_ram_addr_m68k
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_m68k
#define memory_region_get_size memory_region_get_size_m68k
#define memory_region_info memory_region_info_m68k

View file

@ -1396,6 +1396,11 @@ void *memory_region_get_ram_ptr(MemoryRegion *mr)
return ptr + offset;
}
ram_addr_t memory_region_get_ram_addr(MemoryRegion *mr)
{
return mr->ram_block ? mr->ram_block->offset : RAM_ADDR_INVALID;
}
bool memory_region_test_and_clear_dirty(MemoryRegion *mr, hwaddr addr,
hwaddr size, unsigned client)
{

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_mips
#define memory_region_get_may_overlap memory_region_get_may_overlap_mips
#define memory_region_get_priority memory_region_get_priority_mips
#define memory_region_get_ram_addr memory_region_get_ram_addr_mips
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_mips
#define memory_region_get_size memory_region_get_size_mips
#define memory_region_info memory_region_info_mips

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_mips64
#define memory_region_get_may_overlap memory_region_get_may_overlap_mips64
#define memory_region_get_priority memory_region_get_priority_mips64
#define memory_region_get_ram_addr memory_region_get_ram_addr_mips64
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_mips64
#define memory_region_get_size memory_region_get_size_mips64
#define memory_region_info memory_region_info_mips64

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_mips64el
#define memory_region_get_may_overlap memory_region_get_may_overlap_mips64el
#define memory_region_get_priority memory_region_get_priority_mips64el
#define memory_region_get_ram_addr memory_region_get_ram_addr_mips64el
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_mips64el
#define memory_region_get_size memory_region_get_size_mips64el
#define memory_region_info memory_region_info_mips64el

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_mipsel
#define memory_region_get_may_overlap memory_region_get_may_overlap_mipsel
#define memory_region_get_priority memory_region_get_priority_mipsel
#define memory_region_get_ram_addr memory_region_get_ram_addr_mipsel
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_mipsel
#define memory_region_get_size memory_region_get_size_mipsel
#define memory_region_info memory_region_info_mipsel

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_powerpc
#define memory_region_get_may_overlap memory_region_get_may_overlap_powerpc
#define memory_region_get_priority memory_region_get_priority_powerpc
#define memory_region_get_ram_addr memory_region_get_ram_addr_powerpc
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_powerpc
#define memory_region_get_size memory_region_get_size_powerpc
#define memory_region_info memory_region_info_powerpc

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_sparc
#define memory_region_get_may_overlap memory_region_get_may_overlap_sparc
#define memory_region_get_priority memory_region_get_priority_sparc
#define memory_region_get_ram_addr memory_region_get_ram_addr_sparc
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_sparc
#define memory_region_get_size memory_region_get_size_sparc
#define memory_region_info memory_region_info_sparc

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_sparc64
#define memory_region_get_may_overlap memory_region_get_may_overlap_sparc64
#define memory_region_get_priority memory_region_get_priority_sparc64
#define memory_region_get_ram_addr memory_region_get_ram_addr_sparc64
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_sparc64
#define memory_region_get_size memory_region_get_size_sparc64
#define memory_region_info memory_region_info_sparc64

View file

@ -2084,6 +2084,7 @@
#define memory_region_get_fd memory_region_get_fd_x86_64
#define memory_region_get_may_overlap memory_region_get_may_overlap_x86_64
#define memory_region_get_priority memory_region_get_priority_x86_64
#define memory_region_get_ram_addr memory_region_get_ram_addr_x86_64
#define memory_region_get_ram_ptr memory_region_get_ram_ptr_x86_64
#define memory_region_get_size memory_region_get_size_x86_64
#define memory_region_info memory_region_info_x86_64