On 07/25/2012 01:58 PM, Avi Kivity wrote:
>> while (len > 0) {
>> page = addr & TARGET_PAGE_MASK;
>> l = (page + TARGET_PAGE_SIZE) - addr;
>> if (l > len)
>> l = len;
>> +
>> + qemu_rwlock_rdlock_devtree();
>> section = phys_page_find(page >> TARGET_PAGE_BITS);
>
> Does the devtree lock also protect the data structures accessed by
> phys_page_find()? Seems wrong.
The right way is to object_ref() in core_region_add() and object_unref()
in core_region_del(). We're guaranteed that mr->object is alive during
_add(), and DeviceClass::unmap() ensures that the extra ref doesn't
block destruction.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html