From nobody Mon Feb 9 07:38:19 2026 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=1625148265; cv=none; d=zohomail.com; s=zohoarc; b=f2Zqj8+jCWWO4BCDCQszBcn9FUKIcJW34PorR2yzXDJkKuZNQjVrWUglJOrPwf0kp642BwZDErblfp4Ao5kfP6UnwOet8mSZrWVkLNMaBNaUgV4/43w3cqzWjKJbXRZOAKEAEfJXrAitA17WNCiS3fsxAB5IY6D+Et/aLtXy1Fk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1625148265; 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=1dmxSBAOacrJ8aHW+/KNjjZ0kK1HNwHlJQuPAl71gQc=; b=WunMO5El8sMd474XOe0voF7cJ3NahTjHFsQWja/IO4KpJPVXhmVrRQPGy99GLMFfz3KXq5X7NbDDwuZzvdDNXPuGr02V8nG15ii0wNDShIyazodFO9gqaFG1pLuqFXs0fWGEmHBBcIwD62OEcPsI8+0yzSHk/IHHxHESbV7IYH4= 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 1625148265363680.233523922779; Thu, 1 Jul 2021 07:04:25 -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-195-VNADq1REOSWhaEDdG2FEAA-1; Thu, 01 Jul 2021 10:04:21 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4550780414A; Thu, 1 Jul 2021 14:04:15 +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 CFD8560C82; Thu, 1 Jul 2021 14:04:14 +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 8BCD34EA2F; Thu, 1 Jul 2021 14:04:14 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id 161E49D9032446 for ; Thu, 1 Jul 2021 10:04:09 -0400 Received: by smtp.corp.redhat.com (Postfix) id 59CB42C6EE; Thu, 1 Jul 2021 14:04:09 +0000 (UTC) Received: from speedmetal.lan (unknown [10.40.208.4]) by smtp.corp.redhat.com (Postfix) with ESMTP id B8E435F9B7 for ; Thu, 1 Jul 2021 14:04:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1625148263; 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=1dmxSBAOacrJ8aHW+/KNjjZ0kK1HNwHlJQuPAl71gQc=; b=Ce3THRbW1hWmdQ+vUkZ5SHITYZy7BeHxyK2R6krrfIrOdO0KY+eL8zVIk53q0VgxOXFrez ihzo5BuV7uXerOtRP4MUjdHjnqQV61hnmlwrC+7ZYFKvs5b7YwZ/gT897NVYt4y4ajnglN qI84oVbUrv6FG28TosDPuc3UDRID8NA= X-MC-Unique: VNADq1REOSWhaEDdG2FEAA-1 From: Peter Krempa To: libvir-list@redhat.com Subject: [PATCH 1/3] storage_source: Add flag storing whether threshold event was registered with index Date: Thu, 1 Jul 2021 16:03:56 +0200 Message-Id: <44faac6c6935ec9ede707d7456a4578dd468699a.1625148214.git.pkrempa@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 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.12 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) Content-Type: text/plain; charset="utf-8" When users register the threshold event for the top level image with an explicit index (e.g. vda[3]) they are clearly expecting the index in the event. This flag will help avoiding emission of the second event without the index when the client clearly requested one with the index. Signed-off-by: Peter Krempa --- src/conf/storage_source_conf.h | 5 +++++ src/qemu/qemu_domain.c | 8 ++++++++ tests/qemustatusxml2xmldata/modern-in.xml | 1 + 3 files changed, 14 insertions(+) diff --git a/src/conf/storage_source_conf.h b/src/conf/storage_source_conf.h index 389c7b56d1..40db29c418 100644 --- a/src/conf/storage_source_conf.h +++ b/src/conf/storage_source_conf.h @@ -387,6 +387,11 @@ struct _virStorageSource { char *nfs_group; uid_t nfs_uid; gid_t nfs_gid; + + /* We need a flag to remember that the threshold event for this source= was + * registered with a full index (vda[3]) so that we can properly repor= t just + * one event for it */ + bool thresholdEventWithIndex; }; G_DEFINE_AUTOPTR_CLEANUP_FUNC(virStorageSource, virObjectUnref); diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index fc60e15eea..efff6eff86 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -1951,6 +1951,7 @@ qemuStorageSourcePrivateDataParse(xmlXPathContextPtr = ctxt, g_autofree char *encalias =3D NULL; g_autofree char *httpcookiealias =3D NULL; g_autofree char *tlskeyalias =3D NULL; + g_autofree char *thresholdEventWithIndex =3D NULL; src->nodestorage =3D virXPathString("string(./nodenames/nodename[@type= =3D'storage']/@name)", ctxt); src->nodeformat =3D virXPathString("string(./nodenames/nodename[@type= =3D'format']/@name)", ctxt); @@ -1990,6 +1991,10 @@ qemuStorageSourcePrivateDataParse(xmlXPathContextPtr= ctxt, if (virStorageSourcePrivateDataParseRelPath(ctxt, src) < 0) return -1; + if ((thresholdEventWithIndex =3D virXPathString("string(./thresholdEve= nt/@indexUsed)", ctxt)) && + virTristateBoolTypeFromString(thresholdEventWithIndex) =3D=3D VIR_= TRISTATE_BOOL_YES) + src->thresholdEventWithIndex =3D true; + return 0; } @@ -2044,6 +2049,9 @@ qemuStorageSourcePrivateDataFormat(virStorageSource *= src, virXMLFormatElement(buf, "objects", NULL, &tmp); + if (src->thresholdEventWithIndex) + virBufferAddLit(buf, "\n"); + return 0; } diff --git a/tests/qemustatusxml2xmldata/modern-in.xml b/tests/qemustatusxm= l2xmldata/modern-in.xml index ba0858a4ff..cc5fd1cb74 100644 --- a/tests/qemustatusxml2xmldata/modern-in.xml +++ b/tests/qemustatusxml2xmldata/modern-in.xml @@ -340,6 +340,7 @@ + --=20 2.31.1