From nobody Fri Dec 19 21:50:05 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) client-ip=216.205.24.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1629816438; cv=none; d=zohomail.com; s=zohoarc; b=KiQ3FbVEWTEgDsBsN3k64CbkQNC2vvo8T7ARc6b/VobWiK3KWre58kZ3Vc33sZmJSIMUTF4WQ19RjH+XfXHmIED6LVf+ugGMp0TMOAQBFnSHwGXGtd8GI3jP/7nOLwDx0CfjrPbSYFhI1M8BFfAPOu+6GkmPwp5fieoao+dgin8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1629816438; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=hhpxH7C3nM9cIxDA0uvmw3yRVG+dT0Y6y/jCtwN64X4=; b=lMIZbQMcONKGfGx8iyMMsIU1TkIW/TEl/DixwSW5k6tuAz1Mzd3TSe3+mjk4xcMZLHUvGlPyUXZtntH6kY0U2QuIip/dTENdqMBFEx70oRBkZSzG1UGl3B2EZxv9xzkTp9ajo1f3zgL+5K4VYHqq8KRjTk4erLO1TDtnVFAWrr0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 216.205.24.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by mx.zohomail.com with SMTPS id 1629816438449134.66142642952707; Tue, 24 Aug 2021 07:47:18 -0700 (PDT) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-59-vZP6FUAeNDiwByY6i7TOXA-1; Tue, 24 Aug 2021 10:46:00 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 422645A082; Tue, 24 Aug 2021 14:45:53 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 19B731017CE8; Tue, 24 Aug 2021 14:45:53 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id D71F75003B; Tue, 24 Aug 2021 14:45:52 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 17OEjlXK006017 for ; Tue, 24 Aug 2021 10:45:47 -0400 Received: by smtp.corp.redhat.com (Postfix) id CEE5018432; Tue, 24 Aug 2021 14:45:47 +0000 (UTC) Received: from speedmetal.redhat.com (unknown [10.40.208.33]) by smtp.corp.redhat.com (Postfix) with ESMTP id 299D418649 for ; Tue, 24 Aug 2021 14:45:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1629816437; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=hhpxH7C3nM9cIxDA0uvmw3yRVG+dT0Y6y/jCtwN64X4=; b=buQdlj4Ci9L2XI0W9NpHFPzhkgu2zfds6ghqHuMoy69BMAdQbHDLjmZrFRKUEQeqZVm9tm qQPIKTO3WyIPGhN7XKyDTdeQOgmHOZhf9/9xHn74jmKLfNnfhlJUWL5EnW4B9/FvOFVkPx syQHmlCQZ9HAN/iyXeYFJhuJZ578A/M= X-MC-Unique: vZP6FUAeNDiwByY6i7TOXA-1 From: Peter Krempa To: libvir-list@redhat.com Subject: [PATCH 22/22] qemu: process: Ignore 'RESET' event during startup Date: Tue, 24 Aug 2021 16:44:43 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-loop: libvir-list@redhat.com X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1629816438850100001 Content-Type: text/plain; charset="utf-8" In cases when we are adding a disk with sharing backend (and thus hotplugging it) we need to re-initialize ACPI tables so that the VM boots from the correct device. This has a side-effect of emitting the RESET event and forwarding it to the clients which is not correct. Fix this by ignoring RESET events during startup of the VM. Signed-off-by: Peter Krempa --- src/qemu/qemu_process.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index e2bcd23954..fc273b6365 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -429,12 +429,24 @@ qemuProcessHandleReset(qemuMonitor *mon G_GNUC_UNUSED, void *opaque) { virQEMUDriver *driver =3D opaque; - virObjectEvent *event; + virObjectEvent *event =3D NULL; qemuDomainObjPrivate *priv; g_autoptr(virQEMUDriverConfig) cfg =3D virQEMUDriverGetConfig(driver); + virDomainState state; + int reason; virObjectLock(vm); + state =3D virDomainObjGetState(vm, &reason); + + /* ignore reset events on VM startup. Libvirt in certain instances doe= s a + * reset during startup so that the ACPI tables are re-generated */ + if (state =3D=3D VIR_DOMAIN_PAUSED && + reason =3D=3D VIR_DOMAIN_PAUSED_STARTING_UP) { + VIR_DEBUG("ignoring reset event during startup"); + goto unlock; + } + event =3D virDomainEventRebootNewFromObj(vm); priv =3D vm->privateData; if (priv->agent) @@ -443,6 +455,7 @@ qemuProcessHandleReset(qemuMonitor *mon G_GNUC_UNUSED, if (virDomainObjSave(vm, driver->xmlopt, cfg->stateDir) < 0) VIR_WARN("Failed to save status on vm %s", vm->def->name); + unlock: virObjectUnlock(vm); virObjectEventStateQueue(driver->domainEventState, event); } --=20 2.31.1