[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 22/32] memory: trace FlatView creation and destructio
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PULL 22/32] memory: trace FlatView creation and destruction |
Date: |
Fri, 22 Sep 2017 01:16:30 +0200 |
Signed-off-by: Paolo Bonzini <address@hidden>
---
include/exec/memory.h | 1 -
include/qemu/typedefs.h | 1 +
memory.c | 3 +++
trace-events | 3 +++
4 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/include/exec/memory.h b/include/exec/memory.h
index 402824c..5ed4042 100644
--- a/include/exec/memory.h
+++ b/include/exec/memory.h
@@ -48,7 +48,6 @@
typedef struct MemoryRegionOps MemoryRegionOps;
typedef struct MemoryRegionMmio MemoryRegionMmio;
-typedef struct FlatView FlatView;
struct MemoryRegionMmio {
CPUReadMemoryFunc *read[3];
diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h
index 1635502..980d2b3 100644
--- a/include/qemu/typedefs.h
+++ b/include/qemu/typedefs.h
@@ -30,6 +30,7 @@ typedef struct DisplaySurface DisplaySurface;
typedef struct DriveInfo DriveInfo;
typedef struct Error Error;
typedef struct EventNotifier EventNotifier;
+typedef struct FlatView FlatView;
typedef struct FWCfgEntry FWCfgEntry;
typedef struct FWCfgIoState FWCfgIoState;
typedef struct FWCfgMemState FWCfgMemState;
diff --git a/memory.c b/memory.c
index 706c385..68cdf8b 100644
--- a/memory.c
+++ b/memory.c
@@ -270,6 +270,7 @@ static FlatView *flatview_new(MemoryRegion *mr_root)
view->ref = 1;
view->root = mr_root;
memory_region_ref(mr_root);
+ trace_flatview_new(view, mr_root);
return view;
}
@@ -295,6 +296,7 @@ static void flatview_destroy(FlatView *view)
{
int i;
+ trace_flatview_destroy(view, view->root);
if (view->dispatch) {
address_space_dispatch_free(view->dispatch);
}
@@ -314,6 +316,7 @@ static bool flatview_ref(FlatView *view)
static void flatview_unref(FlatView *view)
{
if (atomic_fetch_dec(&view->ref) == 1) {
+ trace_flatview_destroy_rcu(view, view->root);
call_rcu(view, flatview_destroy, rcu);
}
}
diff --git a/trace-events b/trace-events
index 1f50f56..1d2eb5d 100644
--- a/trace-events
+++ b/trace-events
@@ -64,6 +64,9 @@ memory_region_tb_read(int cpu_index, uint64_t addr, uint64_t
value, unsigned siz
memory_region_tb_write(int cpu_index, uint64_t addr, uint64_t value, unsigned
size) "cpu %d addr 0x%"PRIx64" value 0x%"PRIx64" size %u"
memory_region_ram_device_read(int cpu_index, void *mr, uint64_t addr, uint64_t
value, unsigned size) "cpu %d mr %p addr 0x%"PRIx64" value 0x%"PRIx64" size %u"
memory_region_ram_device_write(int cpu_index, void *mr, uint64_t addr,
uint64_t value, unsigned size) "cpu %d mr %p addr 0x%"PRIx64" value 0x%"PRIx64"
size %u"
+flatview_new(FlatView *view, MemoryRegion *root) "%p (root %p)"
+flatview_destroy(FlatView *view, MemoryRegion *root) "%p (root %p)"
+flatview_destroy_rcu(FlatView *view, MemoryRegion *root) "%p (root %p)"
### Guest events, keep at bottom
--
1.8.3.1
- [Qemu-devel] [PULL 12/32] memory: Cleanup after switching to FlatView, (continued)
- [Qemu-devel] [PULL 12/32] memory: Cleanup after switching to FlatView, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 14/32] memory: Store physical root MR in FlatView, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 15/32] memory: Alloc dispatch tree where topology is generared, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 11/32] memory: Switch memory from using AddressSpace to FlatView, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 16/32] memory: Move address_space_update_ioeventfds, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 17/32] memory: Share FlatView's and dispatch trees between address spaces, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 18/32] memory: Do not allocate FlatView in address_space_init, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 21/32] memory: Create FlatView directly, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 23/32] memory: seek FlatView sharing candidates among children subregions, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 20/32] memory: Get rid of address_space_init_shareable, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 22/32] memory: trace FlatView creation and destruction,
Paolo Bonzini <=
- [Qemu-devel] [PULL 19/32] memory: Rework "info mtree" to print flat views and dispatch trees, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 24/32] memory: Share special empty FlatView, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 25/32] scsi, file-posix: add support for persistent reservation management, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 29/32] chardev: new qemu_chr_be_update_read_handlers(), Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 28/32] scsi: add persistent reservation manager using qemu-pr-helper, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 30/32] chardev: add Chardev.gcontext field, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 27/32] scsi: add multipath support to qemu-pr-helper, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 26/32] scsi: build qemu-pr-helper, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 31/32] chardev: use per-dev context for io_add_watch_poll, Paolo Bonzini, 2017/09/21
- [Qemu-devel] [PULL 32/32] chardev: remove context in chr_update_read_handler, Paolo Bonzini, 2017/09/21