From nobody Fri Dec 19 20:15:55 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.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 170.10.133.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=1629816353; cv=none; d=zohomail.com; s=zohoarc; b=AfnZOD0WAH2QfT15KMKdBwfVtdO4LL5LsEkrXy6gGThAvqpOV+xyKSt7u3/N+4bgm7or19PBzCV7sR+bx6PW0T3ZyI+7HBery2heZIf3qSzdeEHNIA+Sj9sFU8mgP+zpPtHCRpLiUEFWCQT3wQXb4x+FO6WxMVhmlks2Y+tqM+s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1629816353; 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=TVACjqSHdHloAJrVudYlvl1tMmPLFTlAVJqpFW7fPT0=; b=N7VwgUKp/PJF7qVptpZVYHensXgCSVQLenXnM69ovRciA0vJlh6SiIuDFOWKwJ95fkrdKDq82T+e37GVV8DRKcS0NiNr8/bdgLEvBX783yp37DP/Q0Orhfn+VRihSSU28biCZc3NUPt++q/6yY0Tvo+darfW+zaKGfsylDgp50o= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.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 [170.10.133.124]) by mx.zohomail.com with SMTPS id 162981635317734.64315343286967; Tue, 24 Aug 2021 07:45:53 -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-136-LwIO3gJJNOKxdB66tXN3xQ-1; Tue, 24 Aug 2021 10:45:50 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AA9623E74D; Tue, 24 Aug 2021 14:45:44 +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 913121893C; Tue, 24 Aug 2021 14:45:44 +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 616A24A71C; Tue, 24 Aug 2021 14:45:44 +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 17OEjf3I005869 for ; Tue, 24 Aug 2021 10:45:41 -0400 Received: by smtp.corp.redhat.com (Postfix) id 2509718432; Tue, 24 Aug 2021 14:45:41 +0000 (UTC) Received: from speedmetal.redhat.com (unknown [10.40.208.33]) by smtp.corp.redhat.com (Postfix) with ESMTP id 844531BCF0 for ; Tue, 24 Aug 2021 14:45:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1629816352; 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=TVACjqSHdHloAJrVudYlvl1tMmPLFTlAVJqpFW7fPT0=; b=Dvck+MRlmyqkLyY+SN60v/jNBkHOPobbv3cQkkBqnWYdakePFliqFovPYdXNtJhfuzg6CU +vAYq9YLy0cBdSgvi7DzPbbzagKacVO9TW+Qch7JIp5B/wltff+vgFKI3MU+F5R0pd/l7h oZhSTLNb/Kl+LXunquJZNaAfqiVEZts= X-MC-Unique: LwIO3gJJNOKxdB66tXN3xQ-1 From: Peter Krempa To: libvir-list@redhat.com Subject: [PATCH 16/22] qemuDomainSetLifecycleAction: Forbid live update of 'on_reboot' Date: Tue, 24 Aug 2021 16:44:37 +0200 Message-Id: <3f059b28b66c0a4eae360bc6b1f2991e5d6685ff.1629816141.git.pkrempa@redhat.com> 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.79 on 10.5.11.11 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: 1629816355172100001 Content-Type: text/plain; charset="utf-8" Without the ability to tell qemu to change the behaviour on reboot of the guest it's fundamentally unsafe to change the action as the guest would be able to execute instructions after the reboot before libvirt terminates it due to the async nature of QMP events. Stricten the code for now until we implement support for 'set-action' QMP command. Signed-off-by: Peter Krempa --- src/qemu/qemu_driver.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 0472f54a37..3c57d67d1c 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -19671,10 +19671,11 @@ qemuDomainSetLifecycleAction(virDomainPtr dom, goto endjob; if (def) { - if (priv->allowReboot =3D=3D VIR_TRISTATE_BOOL_NO) { + if (priv->allowReboot =3D=3D VIR_TRISTATE_BOOL_NO || + (type =3D=3D VIR_DOMAIN_LIFECYCLE_REBOOT && + def->onReboot !=3D action)) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", - _("cannot update lifecycle action because QEMU " - "was started with -no-reboot option")); + _("cannot update lifecycle action because QEMU = was started with incompatible -no-reboot setting")); goto endjob; } --=20 2.31.1