From b8c776eb63aca4f1439dbcebf84e6ba64fe31666 Mon Sep 17 00:00:00 2001 From: Lai Jiangshan Date: Tue, 10 May 2011 16:26:04 +0800 Subject: [PATCH] inject-nmi: Implementing the remote protocol --- daemon/remote_generator.pl | 2 +- src/remote/remote_driver.c | 2 +- src/remote/remote_protocol.x | 8 +++++++- src/remote_protocol-structs | 4 ++++ 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/daemon/remote_generator.pl b/daemon/remote_generator.pl index 062ccc15ce..74fa769145 100755 --- a/daemon/remote_generator.pl +++ b/daemon/remote_generator.pl @@ -35,7 +35,7 @@ sub name_to_ProcName { @elems = map { $_ =~ s/Nwfilter/NWFilter/; $_ =~ s/Xml/XML/; $_ =~ s/Uri/URI/; $_ =~ s/Uuid/UUID/; $_ =~ s/Id/ID/; $_ =~ s/Mac/MAC/; $_ =~ s/Cpu/CPU/; $_ =~ s/Os/OS/; - $_ } @elems; + $_ =~ s/Nmi/NMI/; $_ } @elems; join "", @elems } diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c index c6beb3d234..0a1afde9c7 100644 --- a/src/remote/remote_driver.c +++ b/src/remote/remote_driver.c @@ -6493,7 +6493,7 @@ static virDriver remote_driver = { remoteDomainSnapshotDelete, /* domainSnapshotDelete */ remoteQemuDomainMonitorCommand, /* qemuDomainMonitorCommand */ remoteDomainOpenConsole, /* domainOpenConsole */ - NULL, /* domainInjectNMI */ + remoteDomainInjectNMI, /* domainInjectNMI */ }; static virNetworkDriver network_driver = { diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x index c706c36cf9..cdb8369986 100644 --- a/src/remote/remote_protocol.x +++ b/src/remote/remote_protocol.x @@ -817,6 +817,11 @@ struct remote_domain_undefine_args { remote_nonnull_domain dom; }; +struct remote_domain_inject_nmi_args { + remote_nonnull_domain dom; + unsigned int flags; +}; + struct remote_domain_set_vcpus_args { remote_nonnull_domain dom; int nvcpus; @@ -2176,7 +2181,8 @@ enum remote_procedure { REMOTE_PROC_DOMAIN_GET_BLKIO_PARAMETERS = 206, REMOTE_PROC_DOMAIN_MIGRATE_SET_MAX_SPEED = 207, REMOTE_PROC_STORAGE_VOL_UPLOAD = 208, - REMOTE_PROC_STORAGE_VOL_DOWNLOAD = 209 + REMOTE_PROC_STORAGE_VOL_DOWNLOAD = 209, + REMOTE_PROC_DOMAIN_INJECT_NMI = 210 /* * Notice how the entries are grouped in sets of 10 ? diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs index f904c4dbaf..c689746348 100644 --- a/src/remote_protocol-structs +++ b/src/remote_protocol-structs @@ -504,6 +504,10 @@ struct remote_domain_define_xml_ret { struct remote_domain_undefine_args { remote_nonnull_domain dom; }; +struct remote_domain_inject_nmi_args { + remote_nonnull_domain dom; + u_int flags; +}; struct remote_domain_set_vcpus_args { remote_nonnull_domain dom; int nvcpus; -- GitLab