libvirt/aeda1b8c-qemu-no-error-shutdown.patch
James Fehlig 8f756c33df Accepting request 495125 from home:jfehlig:branches:Virtualization
- qemu: add support for 288 VCPUS
  aeda1b8c-qemu-no-error-shutdown.patch,
  8023b21a-conf-ioapic.patch,
  6b5c6314-qemu-irqchip.patch,
  2020e2c6-conf-intremap.patch,
  04028a9d-qemu-intremap.patch,
  d12781b4-conf-iommu-cache-mode-attr.patch,
  a5691448-qemu-iommu-cache-mode.patch,
  3a276c65-conf-iommu-def-stability-check.patch,
  935d927a-conf-iommu-ABI-stability-check.patch
  FATE#321335
- revert commit 2841e675: qemu: propagate bridge MTU into qemu
  "host_mtu"
  revert-2841e675-mtu.patch
  bsc#1037774

OBS-URL: https://build.opensuse.org/request/show/495125
OBS-URL: https://build.opensuse.org/package/show/Virtualization/libvirt?expand=0&rev=602
2017-05-15 23:02:52 +00:00

56 lines
2.0 KiB
Diff

commit aeda1b8c56dc58b0a413acc61bbea938b40499e1
Author: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Date: Thu Mar 9 10:54:32 2017 +0100
qemu: monitor: do not report error on shutdown
If a shutdown is expected because it was triggered via libvirt we can
also expect the monitor to close. In those cases do not report an
internal error like:
"internal error: End of file from qemu monitor"
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Index: libvirt-3.3.0/src/qemu/qemu_monitor.c
===================================================================
--- libvirt-3.3.0.orig/src/qemu/qemu_monitor.c
+++ libvirt-3.3.0/src/qemu/qemu_monitor.c
@@ -63,6 +63,7 @@ struct _qemuMonitor {
int fd;
int watch;
int hasSendFD;
+ int willhangup;
virDomainObjPtr vm;
@@ -693,8 +694,10 @@ qemuMonitorIO(int watch, int fd, int eve
if (events & VIR_EVENT_HANDLE_HANGUP) {
hangup = true;
if (!error) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("End of file from qemu monitor"));
+ if (!mon->willhangup) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("End of file from qemu monitor"));
+ }
eof = true;
events &= ~VIR_EVENT_HANDLE_HANGUP;
}
@@ -733,7 +736,7 @@ qemuMonitorIO(int watch, int fd, int eve
if (mon->lastError.code != VIR_ERR_OK) {
/* Already have an error, so clear any new error */
virResetLastError();
- } else {
+ } else if (!mon->willhangup) {
virErrorPtr err = virGetLastError();
if (!err)
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@@ -1327,6 +1330,7 @@ qemuMonitorEmitShutdown(qemuMonitorPtr m
{
int ret = -1;
VIR_DEBUG("mon=%p", mon);
+ mon->willhangup = 1;
QEMU_MONITOR_CALLBACK(mon, ret, domainShutdown, mon->vm);
return ret;