mirror of https://github.com/xemu-project/xemu.git
memory: the only dirty memory flag for users is DIRTY_MEMORY_VGA
DIRTY_MEMORY_MIGRATION is triggered by memory_global_dirty_log_start and memory_global_dirty_log_stop, so it cannot be used with memory_region_set_log. Specify this in the documentation and assert it. Reviewed-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
6b4ad3b28d
commit
dbddac6da0
|
@ -647,8 +647,7 @@ void memory_region_ram_resize(MemoryRegion *mr, ram_addr_t newsize,
|
|||
*
|
||||
* @mr: the memory region being updated.
|
||||
* @log: whether dirty logging is to be enabled or disabled.
|
||||
* @client: the user of the logging information; %DIRTY_MEMORY_MIGRATION or
|
||||
* %DIRTY_MEMORY_VGA.
|
||||
* @client: the user of the logging information; %DIRTY_MEMORY_VGA only.
|
||||
*/
|
||||
void memory_region_set_log(MemoryRegion *mr, bool log, unsigned client);
|
||||
|
||||
|
|
1
memory.c
1
memory.c
|
@ -1425,6 +1425,7 @@ void memory_region_set_log(MemoryRegion *mr, bool log, unsigned client)
|
|||
{
|
||||
uint8_t mask = 1 << client;
|
||||
|
||||
assert(client == DIRTY_MEMORY_VGA);
|
||||
memory_region_transaction_begin();
|
||||
mr->dirty_log_mask = (mr->dirty_log_mask & ~mask) | (log * mask);
|
||||
memory_region_update_pending |= mr->enabled;
|
||||
|
|
Loading…
Reference in New Issue