memory: Remove code for mr->may_overlap
The collision check does nothing and hasn't been used. Remove the variable together with related code. Signed-off-by: Fam Zheng <famz@redhat.com> Message-Id: <1458900629-2334-2-git-send-email-famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ab0a995608
commit
b613597819
@ -187,7 +187,6 @@ struct MemoryRegion {
|
||||
MemoryRegion *alias;
|
||||
hwaddr alias_offset;
|
||||
int32_t priority;
|
||||
bool may_overlap;
|
||||
QTAILQ_HEAD(subregions, MemoryRegion) subregions;
|
||||
QTAILQ_ENTRY(MemoryRegion) subregions_link;
|
||||
QTAILQ_HEAD(coalesced_ranges, CoalescedMemoryRange) coalesced;
|
||||
|
35
memory.c
35
memory.c
@ -1057,13 +1057,6 @@ static void memory_region_get_priority(Object *obj, Visitor *v,
|
||||
visit_type_int32(v, name, &value, errp);
|
||||
}
|
||||
|
||||
static bool memory_region_get_may_overlap(Object *obj, Error **errp)
|
||||
{
|
||||
MemoryRegion *mr = MEMORY_REGION(obj);
|
||||
|
||||
return mr->may_overlap;
|
||||
}
|
||||
|
||||
static void memory_region_get_size(Object *obj, Visitor *v, const char *name,
|
||||
void *opaque, Error **errp)
|
||||
{
|
||||
@ -1101,10 +1094,6 @@ static void memory_region_initfn(Object *obj)
|
||||
memory_region_get_priority,
|
||||
NULL, /* memory_region_set_priority */
|
||||
NULL, NULL, &error_abort);
|
||||
object_property_add_bool(OBJECT(mr), "may-overlap",
|
||||
memory_region_get_may_overlap,
|
||||
NULL, /* memory_region_set_may_overlap */
|
||||
&error_abort);
|
||||
object_property_add(OBJECT(mr), "size", "uint64",
|
||||
memory_region_get_size,
|
||||
NULL, /* memory_region_set_size, */
|
||||
@ -1864,34 +1853,12 @@ void memory_region_del_eventfd(MemoryRegion *mr,
|
||||
|
||||
static void memory_region_update_container_subregions(MemoryRegion *subregion)
|
||||
{
|
||||
hwaddr offset = subregion->addr;
|
||||
MemoryRegion *mr = subregion->container;
|
||||
MemoryRegion *other;
|
||||
|
||||
memory_region_transaction_begin();
|
||||
|
||||
memory_region_ref(subregion);
|
||||
QTAILQ_FOREACH(other, &mr->subregions, subregions_link) {
|
||||
if (subregion->may_overlap || other->may_overlap) {
|
||||
continue;
|
||||
}
|
||||
if (int128_ge(int128_make64(offset),
|
||||
int128_add(int128_make64(other->addr), other->size))
|
||||
|| int128_le(int128_add(int128_make64(offset), subregion->size),
|
||||
int128_make64(other->addr))) {
|
||||
continue;
|
||||
}
|
||||
#if 0
|
||||
printf("warning: subregion collision %llx/%llx (%s) "
|
||||
"vs %llx/%llx (%s)\n",
|
||||
(unsigned long long)offset,
|
||||
(unsigned long long)int128_get64(subregion->size),
|
||||
subregion->name,
|
||||
(unsigned long long)other->addr,
|
||||
(unsigned long long)int128_get64(other->size),
|
||||
other->name);
|
||||
#endif
|
||||
}
|
||||
QTAILQ_FOREACH(other, &mr->subregions, subregions_link) {
|
||||
if (subregion->priority >= other->priority) {
|
||||
QTAILQ_INSERT_BEFORE(other, subregion, subregions_link);
|
||||
@ -1918,7 +1885,6 @@ void memory_region_add_subregion(MemoryRegion *mr,
|
||||
hwaddr offset,
|
||||
MemoryRegion *subregion)
|
||||
{
|
||||
subregion->may_overlap = false;
|
||||
subregion->priority = 0;
|
||||
memory_region_add_subregion_common(mr, offset, subregion);
|
||||
}
|
||||
@ -1928,7 +1894,6 @@ void memory_region_add_subregion_overlap(MemoryRegion *mr,
|
||||
MemoryRegion *subregion,
|
||||
int priority)
|
||||
{
|
||||
subregion->may_overlap = true;
|
||||
subregion->priority = priority;
|
||||
memory_region_add_subregion_common(mr, offset, subregion);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user