xend/libxl support sending sysrq key to guest kernel but not support sending any key sequence as virDomainSendKey is expected to do. To add equivalant sysrq functionality in libvirt for xen/libxl, add a new virDomainSendSysrq API and add related codes to virsh, remote driver, xen/libxl driver. Changes to V3: * fix some memory leak Not change: virDomainSendSysrq parameter still keeps "char key" rather than "enum key", main reason to keep it because: sysrq key is different to different kinds of guests, xen hypervisor doesn't know the correct enum <-> letter mapping towards different guests, it just sends the key blindly to guests. See: http://www.redhat.com/archives/libvir-list/2015-January/msg00132.html V3 is here: http://www.redhat.com/archives/libvir-list/2014-December/msg00882.html Chunyan Liu (5): Add public API virDomainSendSysrq implement remote protocol for domainSendSysrq virsh: add 'sysrq' command libxl: implement .domainSendSysrq method xen: add .domainSendSysrq method include/libvirt/libvirt-domain.h | 3 +++ src/driver-hypervisor.h | 4 +++ src/libvirt-domain.c | 39 +++++++++++++++++++++++++++ src/libvirt_public.syms | 5 ++++ src/libxl/libxl_driver.c | 25 ++++++++++++++++++ src/remote/remote_driver.c | 1 + src/remote/remote_protocol.x | 14 +++++++++- src/remote_protocol-structs | 6 +++++ src/rpc/gendispatch.pl | 12 +++++++++ src/xen/xen_driver.c | 21 +++++++++++++++ src/xen/xend_internal.c | 30 +++++++++++++++++++++ src/xen/xend_internal.h | 1 + tools/virsh-domain.c | 57 ++++++++++++++++++++++++++++++++++++++++ 13 files changed, 217 insertions(+), 1 deletion(-) -- 1.8.4.5 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list