diff options
author | Blue Swirl <blauwirbel@gmail.com> | 2012-04-08 18:00:42 +0000 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2012-04-08 18:00:42 +0000 |
commit | 7914cb3c738a03a5d5f7cb32c3768bc62eb1e944 (patch) | |
tree | 42ef10adba22dfed1ee11256603d918bf7f16569 | |
parent | 4266717d690987993d52f5e4745064f4dbb29824 (diff) | |
parent | 221b3a3f1e5edb9e41a48bfa384803800184b397 (diff) |
Merge branch 'memory/core' of git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm
* 'memory/core' of git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm:
memory: check address space when a listener is registered
memory: print aliased IO ranges in info mtree
ioport: use INT64_MAX for IO ranges
-rw-r--r-- | ioport.c | 2 | ||||
-rw-r--r-- | memory.c | 19 |
2 files changed, 13 insertions, 8 deletions
@@ -385,7 +385,7 @@ static void portio_list_add_1(PortioList *piolist, * rather than an offset relative to to start + off_low. */ memory_region_init_io(region, ops, piolist->opaque, piolist->name, - UINT64_MAX); + INT64_MAX); memory_region_init_alias(alias, piolist->name, region, start + off_low, off_high - off_low); memory_region_add_subregion(piolist->address_space, @@ -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); } @@ -1621,6 +1626,13 @@ void mtree_info(fprintf_function mon_printf, void *f) mon_printf(f, "memory\n"); mtree_print_mr(mon_printf, f, address_space_memory.root, 0, 0, &ml_head); + if (address_space_io.root && + !QTAILQ_EMPTY(&address_space_io.root->subregions)) { + mon_printf(f, "I/O\n"); + mtree_print_mr(mon_printf, f, address_space_io.root, 0, 0, &ml_head); + } + + mon_printf(f, "aliases\n"); /* print aliased regions */ QTAILQ_FOREACH(ml, &ml_head, queue) { if (!ml->printed) { @@ -1632,11 +1644,4 @@ void mtree_info(fprintf_function mon_printf, void *f) QTAILQ_FOREACH_SAFE(ml, &ml_head, queue, ml2) { g_free(ml); } - - if (address_space_io.root && - !QTAILQ_EMPTY(&address_space_io.root->subregions)) { - QTAILQ_INIT(&ml_head); - mon_printf(f, "I/O\n"); - mtree_print_mr(mon_printf, f, address_space_io.root, 0, 0, &ml_head); - } } |