Message ID | 1456813104-25902-4-git-send-email-famz@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
> Subject: [PATCH v2 3/7] memory: Implement memory_region_get_ram_addr > with mr->ram_block > > Signed-off-by: Fam Zheng <famz@redhat.com> > --- > include/exec/memory.h | 8 +------- > memory.c | 5 +++++ > 2 files changed, 6 insertions(+), 7 deletions(-) > Reviewed-by: Gonglei <arei.gonglei@huawei.com> > diff --git a/include/exec/memory.h b/include/exec/memory.h > index d5284c2..810d2c0 100644 > --- a/include/exec/memory.h > +++ b/include/exec/memory.h > @@ -978,14 +978,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); > /** > diff --git a/memory.c b/memory.c > index fe70075..b2b2216 100644 > --- a/memory.c > +++ b/memory.c > @@ -1596,6 +1596,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; > +} > + > void memory_region_ram_resize(MemoryRegion *mr, ram_addr_t newsize, > Error **errp) > { > assert(mr->ram_addr != RAM_ADDR_INVALID); > -- > 2.4.3
diff --git a/include/exec/memory.h b/include/exec/memory.h index d5284c2..810d2c0 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -978,14 +978,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); /** diff --git a/memory.c b/memory.c index fe70075..b2b2216 100644 --- a/memory.c +++ b/memory.c @@ -1596,6 +1596,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; +} + void memory_region_ram_resize(MemoryRegion *mr, ram_addr_t newsize, Error **errp) { assert(mr->ram_addr != RAM_ADDR_INVALID);
Signed-off-by: Fam Zheng <famz@redhat.com> --- include/exec/memory.h | 8 +------- memory.c | 5 +++++ 2 files changed, 6 insertions(+), 7 deletions(-)