From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D9AE5CA5FA5 for ; Mon, 28 Sep 2026 14:39:13 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBCUk-00067X-K6; Mon, 28 Sep 2026 10:38:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBCUf-000669-12 for qemu-devel@nongnu.org; Mon, 28 Sep 2026 10:38:14 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBCUd-0006sg-3l for qemu-devel@nongnu.org; Mon, 28 Sep 2026 10:38:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1790606289; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=HRoEARxt1LOAlBRMjh7dtiftjocLyio6mFCv66oqEZc=; b=PuLRm67WKMwjFBuzQcl+L70u6qBHvNT/lvgm/gQ1BxXHjjPq0FLQV8mCsyQK7MmuAuDnQG 6PTgOvqqk/kUvatlFvuF/ajoBMkz140RYHAALS4cmNDciCKyr9jvCDycWkXJUpf7n8jlWN i8g/cfd96CRE040TUgjf5TPGNssJM1k= Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-13-GGmtSyjpMXSE4Ss8IdUdpg-1; Mon, 28 Sep 2026 10:38:06 -0400 X-MC-Unique: GGmtSyjpMXSE4Ss8IdUdpg-1 X-Mimecast-MFC-AGG-ID: GGmtSyjpMXSE4Ss8IdUdpg_1790606284 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id CEBEB180A217; Mon, 28 Sep 2026 14:38:03 +0000 (UTC) Received: from redhat.com (headnet03.pony-001.prod.iad2.dc.redhat.com [10.2.32.114]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 81ABA30000E6; Mon, 28 Sep 2026 14:38:00 +0000 (UTC) Date: Mon, 28 Sep 2026 15:37:57 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: Yonggang Luo Cc: qemu-devel@nongnu.org, Richard Henderson , Philippe =?utf-8?Q?Mathieu-Daud=C3=A9?= , "Edgar E. Iglesias" , Pierrick Bouvier , Fabiano Rosas , Laurent Vivier , Paolo Bonzini , Alistair Francis , Peter Maydell , =?utf-8?Q?Marc-Andr=C3=A9?= Lureau , qemu-arm@nongnu.org, kvm@vger.kernel.org Subject: Re: [PATCH v4 46/55] qapi: add query-targets Message-ID: References: <20260926070057.1234-1-luoyonggang@gmail.com> <20260926070057.1234-47-luoyonggang@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/2.4.0 (2026-06-19) X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 Received-SPF: pass client-ip=170.10.129.124; envelope-from=berrange@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -22 X-Spam_score: -2.3 X-Spam_bar: -- X-Spam_report: (-2.3 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.238, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org On Mon, Sep 28, 2026 at 10:24:39PM +0800, Yonggang Luo wrote: > On Mon, Sep 28, 2026 at 6:14 PM Daniel P. Berrangé wrote: > > > > I don't think that we need to report machines though. > > We already have 'query-machines' which gives much broader > > information on the machines. "MachineInfo" needs to > > gain > > > > "targets": ["SysEmuTarget"] > > > > to list which target(s) a machine can be used with. > > > > This is my final design for the query-target / query-targets / query-machines, > for consistency and testability. > > Per review: reuse `QemuTargetInfo` for both target commands, drop the > per-target machine list, and let > `MachineInfo` say which target(s) each machine runs on. > `QemuTargetInfo` stays small; `query-target` and `query-targets` return a > derived struct that adds the target's device and accel Kconfig state. > > ## QemuTargetInfo > > ``` > { 'struct': 'QemuTargetInfo', > 'data': { 'arch': 'SysEmuTarget' } } # since 1.2 > ``` > ## QemuTargetDetails: QemuTargetInfo plus kconfig > > ``` > { 'struct': 'QemuTargetDetails', > 'base': 'QemuTargetInfo', > 'data': { 'kconfig': 'any' } } > ``` > > `kconfig` maps every device and accel `CONFIG_*` symbol to whether it > is enabled for that target. KConfig is an internal implementation detail that should not be exposed to management apps as we don't want KConfig to become an ABI we must preserve. QAPI introspection provides feature based information to the user. eg instead of querying for "CONFIG_SEV", qom-list-types can be queried to look for the 'sev-guest' class. With regards, Daniel -- |: https://berrange.com ~~ https://hachyderm.io/@berrange :| |: https://libvirt.org ~~ https://entangle-photo.org :| |: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|