[libvirt] [PATCH v4 5/8] perf: add new xml element
Daniel P. Berrange
berrange at redhat.com
Tue Mar 29 12:01:46 UTC 2016
On Mon, Mar 28, 2016 at 09:30:30PM +0800, Qiaowei Ren wrote:
> This patch adds new xml element, and so we can have the option of
> also having perf events enabled immediately at startup.
>
> Signed-off-by: Qiaowei Ren <qiaowei.ren at intel.com>
> ---
> docs/schemas/domaincommon.rng | 27 +++++++
> src/conf/domain_conf.c | 111 ++++++++++++++++++++++++++
> src/conf/domain_conf.h | 10 +++
> src/qemu/qemu_driver.c | 26 ++++++
> src/qemu/qemu_process.c | 8 +-
> tests/domainschemadata/domain-perf-simple.xml | 20 +++++
> 6 files changed, 200 insertions(+), 2 deletions(-)
> create mode 100644 tests/domainschemadata/domain-perf-simple.xml
> +static void
> +virDomainPerfDefFormat(virBufferPtr buf, virDomainPerfDefPtr perf)
> +{
> + size_t i;
> + virBufferAddLit(buf, "<perf>\n");
We must skip ading of <perf></perf> when no perf events are enabled
otherwise we break many existing test cases. eg add in
bool wantPerf = false;
for (i = 0; i < VIR_PERF_EVENT_LAST; i++) {
if (perf->events[i])
wantPerf = true;
}
if (!wantPerf)
return;
before this line.
> + virBufferAdjustIndent(buf, 2);
> +
> + for (i = 0; i < VIR_PERF_EVENT_LAST; i++) {
> + if (perf->events[i])
> + virBufferAsprintf(buf, "<event name='%s' enabled='%s'/>\n",
> + virPerfEventTypeToString(i),
> + virTristateBoolTypeToString(perf->events[i]));
> + }
> +
> + virBufferAdjustIndent(buf, -2);
> + virBufferAddLit(buf, "</perf>\n");
> +}
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list