[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 01/16] memory: Allow subregions to not be printed
From: |
Alistair Francis |
Subject: |
[Qemu-devel] [PATCH v3 01/16] memory: Allow subregions to not be printed by info mtree |
Date: |
Fri, 29 Jan 2016 17:00:45 -0800 |
Add a function called memory_region_add_subregion_no_print() that
creates memory subregions that won't be printed when running
the 'info mtree' command.
Signed-off-by: Alistair Francis <address@hidden>
Reviewed-by: KONRAD Frederic <address@hidden>
---
include/exec/memory.h | 17 +++++++++++++++++
memory.c | 10 +++++++++-
2 files changed, 26 insertions(+), 1 deletion(-)
diff --git a/include/exec/memory.h b/include/exec/memory.h
index c92734a..25353df 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -186,6 +186,7 @@ struct MemoryRegion {
bool skip_dump;
bool enabled;
bool warning_printed; /* For reservations */
+ bool do_not_print;
uint8_t vga_logging_count;
MemoryRegion *alias;
hwaddr alias_offset;
@@ -954,6 +955,22 @@ void memory_region_del_eventfd(MemoryRegion *mr,
void memory_region_add_subregion(MemoryRegion *mr,
hwaddr offset,
MemoryRegion *subregion);
+
+/**
+ * memory_region_add_subregion_no_print: Add a subregion to a container.
+ *
+ * The same functionality as memory_region_add_subregion except that any
+ * memory regions added by this function are not printed by 'info mtree'.
+ *
+ * @mr: the region to contain the new subregion; must be a container
+ * initialized with memory_region_init().
+ * @offset: the offset relative to @mr where @subregion is added.
+ * @subregion: the subregion to be added.
+ */
+void memory_region_add_subregion_no_print(MemoryRegion *mr,
+ hwaddr offset,
+ MemoryRegion *subregion);
+
/**
* memory_region_add_subregion_overlap: Add a subregion to a container
* with overlap.
diff --git a/memory.c b/memory.c
index d2d0a92..4b9d961 100644
--- a/memory.c
+++ b/memory.c
@@ -1827,6 +1827,14 @@ void memory_region_add_subregion(MemoryRegion *mr,
memory_region_add_subregion_common(mr, offset, subregion);
}
+void memory_region_add_subregion_no_print(MemoryRegion *mr,
+ hwaddr offset,
+ MemoryRegion *subregion)
+{
+ memory_region_add_subregion(mr, offset, subregion);
+ subregion->do_not_print = true;
+}
+
void memory_region_add_subregion_overlap(MemoryRegion *mr,
hwaddr offset,
MemoryRegion *subregion,
@@ -2217,7 +2225,7 @@ static void mtree_print_mr(fprintf_function mon_printf,
void *f,
const MemoryRegion *submr;
unsigned int i;
- if (!mr) {
+ if (!mr || mr->do_not_print) {
return;
}
--
2.5.0
- [Qemu-devel] [PATCH v3 00/16] data-driven device registers, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 01/16] memory: Allow subregions to not be printed by info mtree,
Alistair Francis <=
- [Qemu-devel] [PATCH v3 02/16] register: Add Register API, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 04/16] register: Add support for decoding information, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 03/16] register: Add Memory API glue, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 05/16] register: Define REG and FIELD macros, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 07/16] register: Add block initialise helper, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 06/16] register: QOMify, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 08/16] bitops: Add ONES macro, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 10/16] xilinx_zynq: add devcfg to machine model, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 11/16] qdev: Define qdev_get_gpio_out, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 09/16] dma: Add Xilinx Zynq devcfg device model, Alistair Francis, 2016/01/29