memory: check address space when a listener is registered

This patch resolves a bug in memory listener registration.
"range_add" callback  was called on each section of the both
address space (IO and memory space) even if it doesn't match
the address space filter.

Signed-off-by: Julien Grall <julien.grall@citrix.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
Julien Grall 2012-04-04 15:15:41 +01:00 committed by Avi Kivity
parent b9f9be8838
commit 221b3a3f1e
1 changed files with 5 additions and 0 deletions

View File

@ -1444,6 +1444,11 @@ static void listener_add_address_space(MemoryListener *listener,
{
FlatRange *fr;
if (listener->address_space_filter
&& listener->address_space_filter != as->root) {
return;
}
if (global_dirty_log) {
listener->log_global_start(listener);
}