virtio-balloon: Add some trace events
Add some trace events for easier debugging Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
463756d031
commit
6adfdc5a6a
@ -25,6 +25,7 @@
|
|||||||
#include "exec/address-spaces.h"
|
#include "exec/address-spaces.h"
|
||||||
#include "qapi/visitor.h"
|
#include "qapi/visitor.h"
|
||||||
#include "qapi-event.h"
|
#include "qapi-event.h"
|
||||||
|
#include "trace.h"
|
||||||
|
|
||||||
#if defined(__linux__)
|
#if defined(__linux__)
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
@ -222,6 +223,8 @@ static void virtio_balloon_handle_output(VirtIODevice *vdev, VirtQueue *vq)
|
|||||||
if (!int128_nz(section.size) || !memory_region_is_ram(section.mr))
|
if (!int128_nz(section.size) || !memory_region_is_ram(section.mr))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
trace_virtio_balloon_handle_output(memory_region_name(section.mr),
|
||||||
|
pa);
|
||||||
/* Using memory_region_get_ram_ptr is bending the rules a bit, but
|
/* Using memory_region_get_ram_ptr is bending the rules a bit, but
|
||||||
should be OK because we only want a single page. */
|
should be OK because we only want a single page. */
|
||||||
addr = section.offset_within_region;
|
addr = section.offset_within_region;
|
||||||
@ -285,6 +288,7 @@ static void virtio_balloon_get_config(VirtIODevice *vdev, uint8_t *config_data)
|
|||||||
config.num_pages = cpu_to_le32(dev->num_pages);
|
config.num_pages = cpu_to_le32(dev->num_pages);
|
||||||
config.actual = cpu_to_le32(dev->actual);
|
config.actual = cpu_to_le32(dev->actual);
|
||||||
|
|
||||||
|
trace_virtio_balloon_get_config(config.num_pages, config.actual);
|
||||||
memcpy(config_data, &config, sizeof(struct virtio_balloon_config));
|
memcpy(config_data, &config, sizeof(struct virtio_balloon_config));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -303,6 +307,7 @@ static void virtio_balloon_set_config(VirtIODevice *vdev,
|
|||||||
((ram_addr_t) dev->actual << VIRTIO_BALLOON_PFN_SHIFT),
|
((ram_addr_t) dev->actual << VIRTIO_BALLOON_PFN_SHIFT),
|
||||||
&error_abort);
|
&error_abort);
|
||||||
}
|
}
|
||||||
|
trace_virtio_balloon_set_config(dev->actual, oldactual);
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint32_t virtio_balloon_get_features(VirtIODevice *vdev, uint32_t f)
|
static uint32_t virtio_balloon_get_features(VirtIODevice *vdev, uint32_t f)
|
||||||
@ -331,6 +336,7 @@ static void virtio_balloon_to_target(void *opaque, ram_addr_t target)
|
|||||||
dev->num_pages = (vm_ram_size - target) >> VIRTIO_BALLOON_PFN_SHIFT;
|
dev->num_pages = (vm_ram_size - target) >> VIRTIO_BALLOON_PFN_SHIFT;
|
||||||
virtio_notify_config(vdev);
|
virtio_notify_config(vdev);
|
||||||
}
|
}
|
||||||
|
trace_virtio_balloon_to_target(target, dev->num_pages);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void virtio_balloon_save(QEMUFile *f, void *opaque)
|
static void virtio_balloon_save(QEMUFile *f, void *opaque)
|
||||||
|
@ -143,6 +143,10 @@ cpu_out(unsigned int addr, unsigned int val) "addr %#x value %u"
|
|||||||
# balloon.c
|
# balloon.c
|
||||||
# Since requests are raised via monitor, not many tracepoints are needed.
|
# Since requests are raised via monitor, not many tracepoints are needed.
|
||||||
balloon_event(void *opaque, unsigned long addr) "opaque %p addr %lu"
|
balloon_event(void *opaque, unsigned long addr) "opaque %p addr %lu"
|
||||||
|
virtio_balloon_handle_output(const char *name, uint64_t gpa) "setion name: %s gpa: %"PRIx64""
|
||||||
|
virtio_balloon_get_config(uint32_t num_pages, uint32_t acutal) "num_pages: %d acutal: %d"
|
||||||
|
virtio_balloon_set_config(uint32_t acutal, uint32_t oldacutal) "acutal: %d oldacutal: %d"
|
||||||
|
virtio_balloon_to_target(uint64_t target, uint32_t num_pages) "balloon target: %"PRIx64" num_pages: %d"
|
||||||
|
|
||||||
# hw/intc/apic_common.c
|
# hw/intc/apic_common.c
|
||||||
cpu_set_apic_base(uint64_t val) "%016"PRIx64
|
cpu_set_apic_base(uint64_t val) "%016"PRIx64
|
||||||
|
Loading…
Reference in New Issue
Block a user