exec: hide mr->ram_addr from qemu_get_ram_ptr users

Let users of qemu_get_ram_ptr and qemu_ram_ptr_length pass in an
address that is relative to the MemoryRegion. This basically means
what address_space_translate returns.

Because the semantics of the second parameter change, rename the
function to qemu_map_ram_ptr.

Backports commit 0878d0e11ba8013dd759c6921cbf05ba6a41bd71 from qemu
This commit is contained in:
Paolo Bonzini 2018-02-24 16:10:07 -05:00 committed by Lioncash
parent b2e1b34bcc
commit 8df5ad80b1
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7
17 changed files with 39 additions and 55 deletions

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_aarch64 #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_aarch64
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_aarch64 #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_aarch64
#define qemu_get_ram_block qemu_get_ram_block_aarch64 #define qemu_get_ram_block qemu_get_ram_block_aarch64
#define qemu_get_ram_ptr qemu_get_ram_ptr_aarch64
#define qemu_host_page_mask qemu_host_page_mask_aarch64 #define qemu_host_page_mask qemu_host_page_mask_aarch64
#define qemu_host_page_size qemu_host_page_size_aarch64 #define qemu_host_page_size qemu_host_page_size_aarch64
#define qemu_init_vcpu qemu_init_vcpu_aarch64 #define qemu_init_vcpu qemu_init_vcpu_aarch64
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_aarch64 #define qemu_log_enabled qemu_log_enabled_aarch64
#define qemu_loglevel_mask qemu_loglevel_mask_aarch64 #define qemu_loglevel_mask qemu_loglevel_mask_aarch64
#define qemu_log_vprintf qemu_log_vprintf_aarch64 #define qemu_log_vprintf qemu_log_vprintf_aarch64
#define qemu_map_ram_ptr qemu_map_ram_ptr_aarch64
#define qemu_oom_check qemu_oom_check_aarch64 #define qemu_oom_check qemu_oom_check_aarch64
#define qemu_parse_fd qemu_parse_fd_aarch64 #define qemu_parse_fd qemu_parse_fd_aarch64
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_aarch64 #define qemu_ram_addr_from_host qemu_ram_addr_from_host_aarch64

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_aarch64eb #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_aarch64eb
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_aarch64eb #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_aarch64eb
#define qemu_get_ram_block qemu_get_ram_block_aarch64eb #define qemu_get_ram_block qemu_get_ram_block_aarch64eb
#define qemu_get_ram_ptr qemu_get_ram_ptr_aarch64eb
#define qemu_host_page_mask qemu_host_page_mask_aarch64eb #define qemu_host_page_mask qemu_host_page_mask_aarch64eb
#define qemu_host_page_size qemu_host_page_size_aarch64eb #define qemu_host_page_size qemu_host_page_size_aarch64eb
#define qemu_init_vcpu qemu_init_vcpu_aarch64eb #define qemu_init_vcpu qemu_init_vcpu_aarch64eb
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_aarch64eb #define qemu_log_enabled qemu_log_enabled_aarch64eb
#define qemu_loglevel_mask qemu_loglevel_mask_aarch64eb #define qemu_loglevel_mask qemu_loglevel_mask_aarch64eb
#define qemu_log_vprintf qemu_log_vprintf_aarch64eb #define qemu_log_vprintf qemu_log_vprintf_aarch64eb
#define qemu_map_ram_ptr qemu_map_ram_ptr_aarch64eb
#define qemu_oom_check qemu_oom_check_aarch64eb #define qemu_oom_check qemu_oom_check_aarch64eb
#define qemu_parse_fd qemu_parse_fd_aarch64eb #define qemu_parse_fd qemu_parse_fd_aarch64eb
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_aarch64eb #define qemu_ram_addr_from_host qemu_ram_addr_from_host_aarch64eb

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_arm #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_arm
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_arm #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_arm
#define qemu_get_ram_block qemu_get_ram_block_arm #define qemu_get_ram_block qemu_get_ram_block_arm
#define qemu_get_ram_ptr qemu_get_ram_ptr_arm
#define qemu_host_page_mask qemu_host_page_mask_arm #define qemu_host_page_mask qemu_host_page_mask_arm
#define qemu_host_page_size qemu_host_page_size_arm #define qemu_host_page_size qemu_host_page_size_arm
#define qemu_init_vcpu qemu_init_vcpu_arm #define qemu_init_vcpu qemu_init_vcpu_arm
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_arm #define qemu_log_enabled qemu_log_enabled_arm
#define qemu_loglevel_mask qemu_loglevel_mask_arm #define qemu_loglevel_mask qemu_loglevel_mask_arm
#define qemu_log_vprintf qemu_log_vprintf_arm #define qemu_log_vprintf qemu_log_vprintf_arm
#define qemu_map_ram_ptr qemu_map_ram_ptr_arm
#define qemu_oom_check qemu_oom_check_arm #define qemu_oom_check qemu_oom_check_arm
#define qemu_parse_fd qemu_parse_fd_arm #define qemu_parse_fd qemu_parse_fd_arm
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_arm #define qemu_ram_addr_from_host qemu_ram_addr_from_host_arm

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_armeb #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_armeb
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_armeb #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_armeb
#define qemu_get_ram_block qemu_get_ram_block_armeb #define qemu_get_ram_block qemu_get_ram_block_armeb
#define qemu_get_ram_ptr qemu_get_ram_ptr_armeb
#define qemu_host_page_mask qemu_host_page_mask_armeb #define qemu_host_page_mask qemu_host_page_mask_armeb
#define qemu_host_page_size qemu_host_page_size_armeb #define qemu_host_page_size qemu_host_page_size_armeb
#define qemu_init_vcpu qemu_init_vcpu_armeb #define qemu_init_vcpu qemu_init_vcpu_armeb
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_armeb #define qemu_log_enabled qemu_log_enabled_armeb
#define qemu_loglevel_mask qemu_loglevel_mask_armeb #define qemu_loglevel_mask qemu_loglevel_mask_armeb
#define qemu_log_vprintf qemu_log_vprintf_armeb #define qemu_log_vprintf qemu_log_vprintf_armeb
#define qemu_map_ram_ptr qemu_map_ram_ptr_armeb
#define qemu_oom_check qemu_oom_check_armeb #define qemu_oom_check qemu_oom_check_armeb
#define qemu_parse_fd qemu_parse_fd_armeb #define qemu_parse_fd qemu_parse_fd_armeb
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_armeb #define qemu_ram_addr_from_host qemu_ram_addr_from_host_armeb

View file

@ -1369,34 +1369,34 @@ void qemu_ram_remap(struct uc_struct *uc, ram_addr_t addr, ram_addr_t length)
It should not be used for general purpose DMA. It should not be used for general purpose DMA.
Use cpu_physical_memory_map/cpu_physical_memory_rw instead. Use cpu_physical_memory_map/cpu_physical_memory_rw instead.
*/ */
void *qemu_get_ram_ptr(struct uc_struct *uc, RAMBlock *ram_block, void *qemu_map_ram_ptr(struct uc_struct *uc, RAMBlock *ram_block,
ram_addr_t addr) ram_addr_t addr)
{ {
RAMBlock *block = ram_block; RAMBlock *block = ram_block;
if (block == NULL) { if (block == NULL) {
block = qemu_get_ram_block(uc, addr); block = qemu_get_ram_block(uc, addr);
addr -= block->offset;
} }
return ramblock_ptr(block, addr - block->offset); return ramblock_ptr(block, addr);
} }
/* Return a host pointer to guest's ram. Similar to qemu_get_ram_ptr /* Return a host pointer to guest's ram. Similar to qemu_map_ram_ptr
* but takes a size argument */ * but takes a size argument */
static void *qemu_ram_ptr_length(struct uc_struct *uc, RAMBlock *ram_block, static void *qemu_ram_ptr_length(struct uc_struct *uc, RAMBlock *ram_block,
ram_addr_t addr, hwaddr *size) ram_addr_t addr, hwaddr *size)
{ {
RAMBlock *block = ram_block; RAMBlock *block = ram_block;
ram_addr_t offset_inside_block;
if (*size == 0) { if (*size == 0) {
return NULL; return NULL;
} }
if (block == NULL) { if (block == NULL) {
block = qemu_get_ram_block(uc, addr); block = qemu_get_ram_block(uc, addr);
addr -= block->offset;
} }
offset_inside_block = addr - block->offset; *size = MIN(*size, block->max_length - addr);
*size = MIN(*size, block->max_length - offset_inside_block);
// Unicorn: Commented out // Unicorn: Commented out
//if (xen_enabled() && block->host == NULL) { //if (xen_enabled() && block->host == NULL) {
@ -1411,7 +1411,7 @@ static void *qemu_ram_ptr_length(struct uc_struct *uc, RAMBlock *ram_block,
// block->host = xen_map_cache(block->offset, block->max_length, 1); // block->host = xen_map_cache(block->offset, block->max_length, 1);
//} //}
return ramblock_ptr(block, offset_inside_block); return ramblock_ptr(block, addr);
} }
/* /*
@ -1619,13 +1619,13 @@ static void notdirty_mem_write(struct uc_struct* uc, void *opaque, hwaddr ram_ad
} }
switch (size) { switch (size) {
case 1: case 1:
stb_p(qemu_get_ram_ptr(uc, NULL, ram_addr), val); stb_p(qemu_map_ram_ptr(uc, NULL, ram_addr), val);
break; break;
case 2: case 2:
stw_p(qemu_get_ram_ptr(uc, NULL, ram_addr), val); stw_p(qemu_map_ram_ptr(uc, NULL, ram_addr), val);
break; break;
case 4: case 4:
stl_p(qemu_get_ram_ptr(uc, NULL, ram_addr), val); stl_p(qemu_map_ram_ptr(uc, NULL, ram_addr), val);
break; break;
default: default:
abort(); abort();
@ -1882,6 +1882,7 @@ static void invalidate_and_set_dirty(MemoryRegion *mr, hwaddr addr,
hwaddr length) hwaddr length)
{ {
uint8_t dirty_log_mask = memory_region_get_dirty_log_mask(mr); uint8_t dirty_log_mask = memory_region_get_dirty_log_mask(mr);
addr += memory_region_get_ram_addr(mr);
if (dirty_log_mask) { if (dirty_log_mask) {
dirty_log_mask = dirty_log_mask =
@ -1972,9 +1973,8 @@ static MemTxResult address_space_write_continue(AddressSpace *as, hwaddr addr,
abort(); abort();
} }
} else { } else {
addr1 += memory_region_get_ram_addr(mr);
/* RAM case */ /* RAM case */
ptr = qemu_get_ram_ptr(mr->uc, mr->ram_block, addr1); ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
memcpy(ptr, buf, l); memcpy(ptr, buf, l);
invalidate_and_set_dirty(mr, addr1, l); invalidate_and_set_dirty(mr, addr1, l);
} }
@ -2071,8 +2071,7 @@ MemTxResult address_space_read_continue(AddressSpace *as, hwaddr addr,
} }
} else { } else {
/* RAM case */ /* RAM case */
ptr = qemu_get_ram_ptr(mr->uc, mr->ram_block, ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
memory_region_get_ram_addr(mr) + addr1);
memcpy(buf, ptr, l); memcpy(buf, ptr, l);
} }
@ -2156,9 +2155,8 @@ static inline void cpu_physical_memory_write_rom_internal(AddressSpace *as,
memory_region_is_romd(mr))) { memory_region_is_romd(mr))) {
l = memory_access_size(mr, l, addr1); l = memory_access_size(mr, l, addr1);
} else { } else {
addr1 += memory_region_get_ram_addr(mr);
/* ROM/RAM case */ /* ROM/RAM case */
ptr = qemu_get_ram_ptr(mr->uc, mr->ram_block, addr1); ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
switch (type) { switch (type) {
case WRITE_DATA: case WRITE_DATA:
memcpy(ptr, buf, l); memcpy(ptr, buf, l);
@ -2237,7 +2235,6 @@ void *address_space_map(AddressSpace *as,
hwaddr done = 0; hwaddr done = 0;
hwaddr l, xlat, base; hwaddr l, xlat, base;
MemoryRegion *mr, *this_mr; MemoryRegion *mr, *this_mr;
ram_addr_t raddr;
if (len == 0) { if (len == 0) {
return NULL; return NULL;
@ -2267,7 +2264,6 @@ void *address_space_map(AddressSpace *as,
} }
base = xlat; base = xlat;
raddr = memory_region_get_ram_addr(mr);
for (;;) { for (;;) {
len -= l; len -= l;
@ -2286,7 +2282,7 @@ void *address_space_map(AddressSpace *as,
memory_region_ref(mr); memory_region_ref(mr);
*plen = done; *plen = done;
return qemu_ram_ptr_length(as->uc, mr->ram_block, raddr + base, plen); return qemu_ram_ptr_length(as->uc, mr->ram_block, base, plen);
} }
/* Unmaps a memory region previously mapped by address_space_map(). /* Unmaps a memory region previously mapped by address_space_map().
@ -2302,7 +2298,6 @@ void address_space_unmap(AddressSpace *as, void *buffer, hwaddr len,
mr = memory_region_from_host(as->uc, buffer, &addr1); mr = memory_region_from_host(as->uc, buffer, &addr1);
assert(mr != NULL); assert(mr != NULL);
addr1 += memory_region_get_ram_addr(mr);
if (is_write) { if (is_write) {
invalidate_and_set_dirty(mr, addr1, access_len); invalidate_and_set_dirty(mr, addr1, access_len);
} }
@ -2360,8 +2355,7 @@ static inline uint32_t address_space_ldl_internal(AddressSpace *as, hwaddr addr,
#endif #endif
} else { } else {
/* RAM case */ /* RAM case */
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
memory_region_get_ram_addr(mr) + addr1);
switch (endian) { switch (endian) {
case DEVICE_LITTLE_ENDIAN: case DEVICE_LITTLE_ENDIAN:
@ -2447,10 +2441,7 @@ static inline uint64_t address_space_ldq_internal(AddressSpace *as, hwaddr addr,
#endif #endif
} else { } else {
/* RAM case */ /* RAM case */
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
(memory_region_get_ram_addr(mr)
& TARGET_PAGE_MASK)
+ addr1);
switch (endian) { switch (endian) {
case DEVICE_LITTLE_ENDIAN: case DEVICE_LITTLE_ENDIAN:
val = ldq_le_p(ptr); val = ldq_le_p(ptr);
@ -2555,10 +2546,7 @@ static inline uint32_t address_space_lduw_internal(AddressSpace *as,
#endif #endif
} else { } else {
/* RAM case */ /* RAM case */
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
(memory_region_get_ram_addr(mr)
& TARGET_PAGE_MASK)
+ addr1);
switch (endian) { switch (endian) {
case DEVICE_LITTLE_ENDIAN: case DEVICE_LITTLE_ENDIAN:
val = lduw_le_p(ptr); val = lduw_le_p(ptr);
@ -2631,8 +2619,7 @@ void address_space_stl_notdirty(AddressSpace *as, hwaddr addr, uint32_t val,
if (l < 4 || !memory_access_is_direct(mr, true)) { if (l < 4 || !memory_access_is_direct(mr, true)) {
r = memory_region_dispatch_write(mr, addr1, val, 4, attrs); r = memory_region_dispatch_write(mr, addr1, val, 4, attrs);
} else { } else {
addr1 += memory_region_get_ram_addr(mr) & TARGET_PAGE_MASK; ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, addr1);
stl_p(ptr, val); stl_p(ptr, val);
r = MEMTX_OK; r = MEMTX_OK;
} }
@ -2674,8 +2661,7 @@ static inline void address_space_stl_internal(AddressSpace *as,
r = memory_region_dispatch_write(mr, addr1, val, 4, attrs); r = memory_region_dispatch_write(mr, addr1, val, 4, attrs);
} else { } else {
/* RAM case */ /* RAM case */
addr1 += memory_region_get_ram_addr(mr) & TARGET_PAGE_MASK; ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, addr1);
switch (endian) { switch (endian) {
case DEVICE_LITTLE_ENDIAN: case DEVICE_LITTLE_ENDIAN:
stl_le_p(ptr, val); stl_le_p(ptr, val);
@ -2776,8 +2762,7 @@ static inline void address_space_stw_internal(AddressSpace *as,
r = memory_region_dispatch_write(mr, addr1, val, 2, attrs); r = memory_region_dispatch_write(mr, addr1, val, 2, attrs);
} else { } else {
/* RAM case */ /* RAM case */
addr1 += memory_region_get_ram_addr(mr) & TARGET_PAGE_MASK; ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
ptr = qemu_get_ram_ptr(as->uc, mr->ram_block, addr1);
switch (endian) { switch (endian) {
case DEVICE_LITTLE_ENDIAN: case DEVICE_LITTLE_ENDIAN:
stw_le_p(ptr, val); stw_le_p(ptr, val);

View file

@ -2432,7 +2432,6 @@ symbols = (
'qemu_get_guest_memory_mapping', 'qemu_get_guest_memory_mapping',
'qemu_get_guest_simple_memory_mapping', 'qemu_get_guest_simple_memory_mapping',
'qemu_get_ram_block', 'qemu_get_ram_block',
'qemu_get_ram_ptr',
'qemu_host_page_mask', 'qemu_host_page_mask',
'qemu_host_page_size', 'qemu_host_page_size',
'qemu_init_vcpu', 'qemu_init_vcpu',
@ -2440,6 +2439,7 @@ symbols = (
'qemu_log_enabled', 'qemu_log_enabled',
'qemu_loglevel_mask', 'qemu_loglevel_mask',
'qemu_log_vprintf', 'qemu_log_vprintf',
'qemu_map_ram_ptr',
'qemu_oom_check', 'qemu_oom_check',
'qemu_parse_fd', 'qemu_parse_fd',
'qemu_ram_addr_from_host', 'qemu_ram_addr_from_host',

View file

@ -1110,7 +1110,7 @@ MemTxResult address_space_read_continue(AddressSpace *as, hwaddr addr,
MemTxResult address_space_read_full(AddressSpace *as, hwaddr addr, MemTxResult address_space_read_full(AddressSpace *as, hwaddr addr,
MemTxAttrs attrs, uint8_t *buf, int len); MemTxAttrs attrs, uint8_t *buf, int len);
void *qemu_get_ram_ptr(struct uc_struct *uc, RAMBlock *ram_block, void *qemu_map_ram_ptr(struct uc_struct *uc, RAMBlock *ram_block,
ram_addr_t addr); ram_addr_t addr);
static inline bool memory_access_is_direct(MemoryRegion *mr, bool is_write) static inline bool memory_access_is_direct(MemoryRegion *mr, bool is_write)
@ -1151,8 +1151,7 @@ MemTxResult address_space_read(AddressSpace *as, hwaddr addr, MemTxAttrs attrs,
l = len; l = len;
mr = address_space_translate(as, addr, &addr1, &l, false); mr = address_space_translate(as, addr, &addr1, &l, false);
if (len == l && memory_access_is_direct(mr, false)) { if (len == l && memory_access_is_direct(mr, false)) {
addr1 += memory_region_get_ram_addr(mr); ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, addr1);
ptr = qemu_get_ram_ptr(mr->uc, mr->ram_block, addr1);
memcpy(buf, ptr, len); memcpy(buf, ptr, len);
} else { } else {
result = address_space_read_continue(as, addr, attrs, buf, len, result = address_space_read_continue(as, addr, attrs, buf, len,

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_m68k #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_m68k
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_m68k #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_m68k
#define qemu_get_ram_block qemu_get_ram_block_m68k #define qemu_get_ram_block qemu_get_ram_block_m68k
#define qemu_get_ram_ptr qemu_get_ram_ptr_m68k
#define qemu_host_page_mask qemu_host_page_mask_m68k #define qemu_host_page_mask qemu_host_page_mask_m68k
#define qemu_host_page_size qemu_host_page_size_m68k #define qemu_host_page_size qemu_host_page_size_m68k
#define qemu_init_vcpu qemu_init_vcpu_m68k #define qemu_init_vcpu qemu_init_vcpu_m68k
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_m68k #define qemu_log_enabled qemu_log_enabled_m68k
#define qemu_loglevel_mask qemu_loglevel_mask_m68k #define qemu_loglevel_mask qemu_loglevel_mask_m68k
#define qemu_log_vprintf qemu_log_vprintf_m68k #define qemu_log_vprintf qemu_log_vprintf_m68k
#define qemu_map_ram_ptr qemu_map_ram_ptr_m68k
#define qemu_oom_check qemu_oom_check_m68k #define qemu_oom_check qemu_oom_check_m68k
#define qemu_parse_fd qemu_parse_fd_m68k #define qemu_parse_fd qemu_parse_fd_m68k
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_m68k #define qemu_ram_addr_from_host qemu_ram_addr_from_host_m68k

View file

@ -1357,11 +1357,11 @@ void *memory_region_get_ram_ptr(MemoryRegion *mr)
} }
assert(mr->ram_block); assert(mr->ram_block);
ptr = qemu_get_ram_ptr(mr->uc, mr->ram_block, memory_region_get_ram_addr(mr)); ptr = qemu_map_ram_ptr(mr->uc, mr->ram_block, offset);
// Unicorn: commented out // Unicorn: commented out
//rcu_read_unlock(); //rcu_read_unlock();
return ptr + offset; return ptr;
} }
MemoryRegion *memory_region_from_host(struct uc_struct *uc, void *ptr, ram_addr_t *offset) MemoryRegion *memory_region_from_host(struct uc_struct *uc, void *ptr, ram_addr_t *offset)

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips
#define qemu_get_ram_block qemu_get_ram_block_mips #define qemu_get_ram_block qemu_get_ram_block_mips
#define qemu_get_ram_ptr qemu_get_ram_ptr_mips
#define qemu_host_page_mask qemu_host_page_mask_mips #define qemu_host_page_mask qemu_host_page_mask_mips
#define qemu_host_page_size qemu_host_page_size_mips #define qemu_host_page_size qemu_host_page_size_mips
#define qemu_init_vcpu qemu_init_vcpu_mips #define qemu_init_vcpu qemu_init_vcpu_mips
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_mips #define qemu_log_enabled qemu_log_enabled_mips
#define qemu_loglevel_mask qemu_loglevel_mask_mips #define qemu_loglevel_mask qemu_loglevel_mask_mips
#define qemu_log_vprintf qemu_log_vprintf_mips #define qemu_log_vprintf qemu_log_vprintf_mips
#define qemu_map_ram_ptr qemu_map_ram_ptr_mips
#define qemu_oom_check qemu_oom_check_mips #define qemu_oom_check qemu_oom_check_mips
#define qemu_parse_fd qemu_parse_fd_mips #define qemu_parse_fd qemu_parse_fd_mips
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips #define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips64 #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips64
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips64 #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips64
#define qemu_get_ram_block qemu_get_ram_block_mips64 #define qemu_get_ram_block qemu_get_ram_block_mips64
#define qemu_get_ram_ptr qemu_get_ram_ptr_mips64
#define qemu_host_page_mask qemu_host_page_mask_mips64 #define qemu_host_page_mask qemu_host_page_mask_mips64
#define qemu_host_page_size qemu_host_page_size_mips64 #define qemu_host_page_size qemu_host_page_size_mips64
#define qemu_init_vcpu qemu_init_vcpu_mips64 #define qemu_init_vcpu qemu_init_vcpu_mips64
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_mips64 #define qemu_log_enabled qemu_log_enabled_mips64
#define qemu_loglevel_mask qemu_loglevel_mask_mips64 #define qemu_loglevel_mask qemu_loglevel_mask_mips64
#define qemu_log_vprintf qemu_log_vprintf_mips64 #define qemu_log_vprintf qemu_log_vprintf_mips64
#define qemu_map_ram_ptr qemu_map_ram_ptr_mips64
#define qemu_oom_check qemu_oom_check_mips64 #define qemu_oom_check qemu_oom_check_mips64
#define qemu_parse_fd qemu_parse_fd_mips64 #define qemu_parse_fd qemu_parse_fd_mips64
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips64 #define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips64

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips64el #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mips64el
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips64el #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mips64el
#define qemu_get_ram_block qemu_get_ram_block_mips64el #define qemu_get_ram_block qemu_get_ram_block_mips64el
#define qemu_get_ram_ptr qemu_get_ram_ptr_mips64el
#define qemu_host_page_mask qemu_host_page_mask_mips64el #define qemu_host_page_mask qemu_host_page_mask_mips64el
#define qemu_host_page_size qemu_host_page_size_mips64el #define qemu_host_page_size qemu_host_page_size_mips64el
#define qemu_init_vcpu qemu_init_vcpu_mips64el #define qemu_init_vcpu qemu_init_vcpu_mips64el
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_mips64el #define qemu_log_enabled qemu_log_enabled_mips64el
#define qemu_loglevel_mask qemu_loglevel_mask_mips64el #define qemu_loglevel_mask qemu_loglevel_mask_mips64el
#define qemu_log_vprintf qemu_log_vprintf_mips64el #define qemu_log_vprintf qemu_log_vprintf_mips64el
#define qemu_map_ram_ptr qemu_map_ram_ptr_mips64el
#define qemu_oom_check qemu_oom_check_mips64el #define qemu_oom_check qemu_oom_check_mips64el
#define qemu_parse_fd qemu_parse_fd_mips64el #define qemu_parse_fd qemu_parse_fd_mips64el
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips64el #define qemu_ram_addr_from_host qemu_ram_addr_from_host_mips64el

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mipsel #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_mipsel
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mipsel #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_mipsel
#define qemu_get_ram_block qemu_get_ram_block_mipsel #define qemu_get_ram_block qemu_get_ram_block_mipsel
#define qemu_get_ram_ptr qemu_get_ram_ptr_mipsel
#define qemu_host_page_mask qemu_host_page_mask_mipsel #define qemu_host_page_mask qemu_host_page_mask_mipsel
#define qemu_host_page_size qemu_host_page_size_mipsel #define qemu_host_page_size qemu_host_page_size_mipsel
#define qemu_init_vcpu qemu_init_vcpu_mipsel #define qemu_init_vcpu qemu_init_vcpu_mipsel
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_mipsel #define qemu_log_enabled qemu_log_enabled_mipsel
#define qemu_loglevel_mask qemu_loglevel_mask_mipsel #define qemu_loglevel_mask qemu_loglevel_mask_mipsel
#define qemu_log_vprintf qemu_log_vprintf_mipsel #define qemu_log_vprintf qemu_log_vprintf_mipsel
#define qemu_map_ram_ptr qemu_map_ram_ptr_mipsel
#define qemu_oom_check qemu_oom_check_mipsel #define qemu_oom_check qemu_oom_check_mipsel
#define qemu_parse_fd qemu_parse_fd_mipsel #define qemu_parse_fd qemu_parse_fd_mipsel
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_mipsel #define qemu_ram_addr_from_host qemu_ram_addr_from_host_mipsel

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_powerpc #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_powerpc
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_powerpc #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_powerpc
#define qemu_get_ram_block qemu_get_ram_block_powerpc #define qemu_get_ram_block qemu_get_ram_block_powerpc
#define qemu_get_ram_ptr qemu_get_ram_ptr_powerpc
#define qemu_host_page_mask qemu_host_page_mask_powerpc #define qemu_host_page_mask qemu_host_page_mask_powerpc
#define qemu_host_page_size qemu_host_page_size_powerpc #define qemu_host_page_size qemu_host_page_size_powerpc
#define qemu_init_vcpu qemu_init_vcpu_powerpc #define qemu_init_vcpu qemu_init_vcpu_powerpc
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_powerpc #define qemu_log_enabled qemu_log_enabled_powerpc
#define qemu_loglevel_mask qemu_loglevel_mask_powerpc #define qemu_loglevel_mask qemu_loglevel_mask_powerpc
#define qemu_log_vprintf qemu_log_vprintf_powerpc #define qemu_log_vprintf qemu_log_vprintf_powerpc
#define qemu_map_ram_ptr qemu_map_ram_ptr_powerpc
#define qemu_oom_check qemu_oom_check_powerpc #define qemu_oom_check qemu_oom_check_powerpc
#define qemu_parse_fd qemu_parse_fd_powerpc #define qemu_parse_fd qemu_parse_fd_powerpc
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_powerpc #define qemu_ram_addr_from_host qemu_ram_addr_from_host_powerpc

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_sparc #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_sparc
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_sparc #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_sparc
#define qemu_get_ram_block qemu_get_ram_block_sparc #define qemu_get_ram_block qemu_get_ram_block_sparc
#define qemu_get_ram_ptr qemu_get_ram_ptr_sparc
#define qemu_host_page_mask qemu_host_page_mask_sparc #define qemu_host_page_mask qemu_host_page_mask_sparc
#define qemu_host_page_size qemu_host_page_size_sparc #define qemu_host_page_size qemu_host_page_size_sparc
#define qemu_init_vcpu qemu_init_vcpu_sparc #define qemu_init_vcpu qemu_init_vcpu_sparc
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_sparc #define qemu_log_enabled qemu_log_enabled_sparc
#define qemu_loglevel_mask qemu_loglevel_mask_sparc #define qemu_loglevel_mask qemu_loglevel_mask_sparc
#define qemu_log_vprintf qemu_log_vprintf_sparc #define qemu_log_vprintf qemu_log_vprintf_sparc
#define qemu_map_ram_ptr qemu_map_ram_ptr_sparc
#define qemu_oom_check qemu_oom_check_sparc #define qemu_oom_check qemu_oom_check_sparc
#define qemu_parse_fd qemu_parse_fd_sparc #define qemu_parse_fd qemu_parse_fd_sparc
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_sparc #define qemu_ram_addr_from_host qemu_ram_addr_from_host_sparc

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_sparc64 #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_sparc64
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_sparc64 #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_sparc64
#define qemu_get_ram_block qemu_get_ram_block_sparc64 #define qemu_get_ram_block qemu_get_ram_block_sparc64
#define qemu_get_ram_ptr qemu_get_ram_ptr_sparc64
#define qemu_host_page_mask qemu_host_page_mask_sparc64 #define qemu_host_page_mask qemu_host_page_mask_sparc64
#define qemu_host_page_size qemu_host_page_size_sparc64 #define qemu_host_page_size qemu_host_page_size_sparc64
#define qemu_init_vcpu qemu_init_vcpu_sparc64 #define qemu_init_vcpu qemu_init_vcpu_sparc64
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_sparc64 #define qemu_log_enabled qemu_log_enabled_sparc64
#define qemu_loglevel_mask qemu_loglevel_mask_sparc64 #define qemu_loglevel_mask qemu_loglevel_mask_sparc64
#define qemu_log_vprintf qemu_log_vprintf_sparc64 #define qemu_log_vprintf qemu_log_vprintf_sparc64
#define qemu_map_ram_ptr qemu_map_ram_ptr_sparc64
#define qemu_oom_check qemu_oom_check_sparc64 #define qemu_oom_check qemu_oom_check_sparc64
#define qemu_parse_fd qemu_parse_fd_sparc64 #define qemu_parse_fd qemu_parse_fd_sparc64
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_sparc64 #define qemu_ram_addr_from_host qemu_ram_addr_from_host_sparc64

View file

@ -2426,7 +2426,6 @@
#define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_x86_64 #define qemu_get_guest_memory_mapping qemu_get_guest_memory_mapping_x86_64
#define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_x86_64 #define qemu_get_guest_simple_memory_mapping qemu_get_guest_simple_memory_mapping_x86_64
#define qemu_get_ram_block qemu_get_ram_block_x86_64 #define qemu_get_ram_block qemu_get_ram_block_x86_64
#define qemu_get_ram_ptr qemu_get_ram_ptr_x86_64
#define qemu_host_page_mask qemu_host_page_mask_x86_64 #define qemu_host_page_mask qemu_host_page_mask_x86_64
#define qemu_host_page_size qemu_host_page_size_x86_64 #define qemu_host_page_size qemu_host_page_size_x86_64
#define qemu_init_vcpu qemu_init_vcpu_x86_64 #define qemu_init_vcpu qemu_init_vcpu_x86_64
@ -2434,6 +2433,7 @@
#define qemu_log_enabled qemu_log_enabled_x86_64 #define qemu_log_enabled qemu_log_enabled_x86_64
#define qemu_loglevel_mask qemu_loglevel_mask_x86_64 #define qemu_loglevel_mask qemu_loglevel_mask_x86_64
#define qemu_log_vprintf qemu_log_vprintf_x86_64 #define qemu_log_vprintf qemu_log_vprintf_x86_64
#define qemu_map_ram_ptr qemu_map_ram_ptr_x86_64
#define qemu_oom_check qemu_oom_check_x86_64 #define qemu_oom_check qemu_oom_check_x86_64
#define qemu_parse_fd qemu_parse_fd_x86_64 #define qemu_parse_fd qemu_parse_fd_x86_64
#define qemu_ram_addr_from_host qemu_ram_addr_from_host_x86_64 #define qemu_ram_addr_from_host qemu_ram_addr_from_host_x86_64