All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@oss.qualcomm.com>
Cc: "Yonggang Luo" <luoyonggang@gmail.com>,
	qemu-devel@nongnu.org, "Eric Blake" <eblake@redhat.com>,
	qemu-riscv@nongnu.org, "Alexander Bulekov" <alxndr@bu.edu>,
	"Laurent Vivier" <lvivier@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	qemu-s390x@nongnu.org, "Song Gao" <17746591750@163.com>,
	"Matthew Rosato" <mjrosato@linux.ibm.com>,
	"Alistair Francis" <alistair.francis@wdc.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Fabiano Rosas" <farosas@suse.de>,
	"Eric Farman" <farman@linux.ibm.com>,
	"Brian Cain" <brian.cain@oss.qualcomm.com>,
	"Stefan Hajnoczi" <stefanha@redhat.com>,
	"Darren Kenny" <darren.kenny@oracle.com>,
	"Ani Sinha" <anisinha@redhat.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Stafford Horne" <shorne@gmail.com>,
	"Cornelia Huck" <cohuck@redhat.com>,
	"Zhao Liu" <zhao1.liu@intel.com>,
	"Weiwei Li" <liwei1518@gmail.com>,
	"Markus Armbruster" <armbru@redhat.com>,
	"David Hildenbrand" <david@kernel.org>,
	"Laurent Vivier" <laurent@vivier.eu>,
	"Pierrick Bouvier" <pierrick.bouvier@oss.qualcomm.com>,
	"Fam Zheng" <fam@euphon.net>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	"Daniel Henrique Barboza" <daniel.barboza@oss.qualcomm.com>,
	"Palmer Dabbelt" <palmer@dabbelt.com>,
	qemu-arm@nongnu.org, "Chao Liu" <chao.liu@processmission.com>,
	"Philippe Mathieu-Daude" <philmd@mailo.com>,
	"Jiaxun Yang" <jiaxun.yang@flygoat.com>,
	"Max Filippov" <jcmvbkbc@gmail.com>,
	"Stefano Garzarella" <sgarzare@redhat.com>
Subject: Re: [PATCH 05/34] qapi: add missing Linux user-mode targets to EmuTarget
Date: Wed, 14 Oct 2026 11:30:22 +0100	[thread overview]
Message-ID: <as9ZvlmXQUwvm0vz@redhat.com> (raw)
In-Reply-To: <e09a64d3-7632-4f90-bd69-0c6097f8cd78@oss.qualcomm.com>

On Wed, Oct 14, 2026 at 12:24:57PM +0200, Philippe Mathieu-Daudé wrote:
> On 14/10/26 11:31, Yonggang Luo wrote:
> > This usermode targets:
> > aarch64_be
> > armeb
> > microblazeel
> > mipsn32
> > mipsn32el
> > ppc64le
> > sparc32plus
> > are not in machine.json
> > 
> > This is a prepare for directly using TARGET_ARCH_VARIANT latter.
> > 
> > Also get target-info.c to be compatible with future TARGET_ARCH_VARIANT only usage.
> > So that we can define TARGET_ARCH_VARIANT to target_name directly
> > 
> > Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
> > ---
> >   include/qemu/base-arch-defs.h | 13 +++++++++++++
> >   qapi/machine.json             | 25 +++++++++++++------------
> >   target-info.c                 | 26 +++++++++-----------------
> >   3 files changed, 35 insertions(+), 29 deletions(-)
> 
> 
> > diff --git a/qapi/machine.json b/qapi/machine.json
> > index 07fac4f0764..a3d6e08a847 100644
> > --- a/qapi/machine.json
> > +++ b/qapi/machine.json
> > @@ -15,11 +15,10 @@
> >   ##
> >   # @EmuTarget:
> > -#     The comprehensive enumeration of QEMU system emulation
> > -#     ("softmmu") targets.  Run "./configure --help" in the project
> > -#     root directory, and look for the \*-softmmu targets near the
> > -#     "--target-list" option.  The individual target constants are not
> > -#     documented here, for the time being.
> > +#     The comprehensive enumeration of QEMU system and user-mode
> > +#     emulation targets.  Run "./configure --help" in the project root
> > +#     directory, and look for the targets near the "--target-list"
> > +#     option.  Individual target constants are not documented here.
> >   #
> >   # @rx: since 5.0
> >   #
> > @@ -30,17 +29,19 @@
> >   # @hexagon: since 11.0
> >   #
> >   # .. note:: The resulting QMP strings can be appended to the
> > -#    "qemu-system-" prefix to produce the corresponding QEMU
> > -#    executable name.  This is true even for "qemu-system-x86_64".
> > +#    "qemu-system-" prefix for system emulation, or the "qemu-" prefix
> > +#    for user-mode emulation, to produce the corresponding executable
> > +#    name, where that target supports the respective emulation mode.
> >   #
> >   # Since: 3.0
> >   ##
> >   { 'enum' : 'EmuTarget',
> > -  'data' : [ 'aarch64', 'alpha', 'arm', 'avr', 'hexagon', 'hppa', 'i386',
> > -             'loongarch64', 'm68k', 'microblaze', 'mips', 'mips64',
> > -             'mips64el', 'mipsel', 'or1k', 'ppc',
> > -             'ppc64', 'riscv32', 'riscv64', 'rx', 's390x', 'sh4',
> > -             'sh4eb', 'sparc', 'sparc64', 'tricore',
> > +  'data' : [ 'aarch64', 'aarch64_be', 'alpha', 'arm', 'armeb', 'avr',
> > +             'hexagon', 'hppa', 'i386', 'loongarch64', 'm68k', 'microblaze',
> > +             'microblazeel', 'mips', 'mips64', 'mips64el', 'mipsel',
> > +             'mipsn32', 'mipsn32el', 'or1k', 'ppc', 'ppc64', 'ppc64le',
> > +             'riscv32', 'riscv64', 'rx', 's390x', 'sh4', 'sh4eb', 'sparc',
> > +             'sparc32plus', 'sparc64', 'tricore',
> >                'x86_64', 'xtensa', 'xtensaeb' ] }
> 
> 'machine.json' is for system binaries.
> 
> If we want to expose these QAPI types to the user binaries
> (I'm not sure we want...) then this declaration block should
> be moved in another {qapi}.json file. QAPI types are versioned,
> so we'd need some "  @aarch64_be   # Since v13.0" comments.
> 
> Anyway I doubt we want to alter EmuTarget, I'd rather let it
> die as a legacy field, and expose {arch, wordsize, endianness}
> to management layer if this is important to consume.

Libvirt uses query-target so we don't want that data to go away.
If we want to expose other data alongside the target name that's
fine.

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 :|



  reply	other threads:[~2026-10-14 10:31 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-14  9:31 [PATCH 00/34] single-binary: Select the softmmu target through -machine <type> Yonggang Luo
2026-10-14  9:31 ` [PATCH 01/34] qemu/base-arch-defs: extract QEMU_ARCH_BIT for QEMU_ARCH_* enums Yonggang Luo
2026-10-14  9:31 ` [PATCH 02/34] qemu: Use SYS_EMU_TARGET__MAX to define QEMU_ARCH_ALL Yonggang Luo
2026-10-14  9:31 ` [PATCH 03/34] qemu: increase width of QEMU_ARCH_* masks enums to be 64 bits Yonggang Luo
2026-10-14  9:31 ` [PATCH 04/34] qapi: rename SysEmuTarget to EmuTarget Yonggang Luo
2026-10-14 11:24   ` Markus Armbruster
2026-10-14 12:18     ` Yonggang Luo
2026-10-14  9:31 ` [PATCH 05/34] qapi: add missing Linux user-mode targets " Yonggang Luo
2026-10-14 10:24   ` Philippe Mathieu-Daudé
2026-10-14 10:30     ` Daniel P. Berrangé [this message]
2026-10-14 10:45       ` Philippe Mathieu-Daudé
2026-10-14 10:48         ` Yonggang Luo
2026-10-14 10:46     ` Yonggang Luo
2026-10-14 17:26   ` Pierrick Bouvier
2026-10-14  9:31 ` [PATCH 06/34] meson: define TARGET_ARCH_VARIANT to target_name only Yonggang Luo
2026-10-14  9:31 ` [PATCH 07/34] target-info: prepare the QOM target list before module_call_init(MODULE_INIT_QOM) Yonggang Luo
2026-10-14  9:31 ` [PATCH 08/34] hw: add MachineClass::targets with a usage and test Yonggang Luo
2026-10-14  9:31 ` [PATCH 09/34] accel: register CPU parent for each target Yonggang Luo
2026-10-14  9:31 ` [PATCH 10/34] meson: collect Rust crates for combined system target Yonggang Luo
2026-10-14  9:31 ` [PATCH 11/34] module: Add module_allow_all_arch for allow all modules be loaded Yonggang Luo
2026-10-14  9:31 ` [PATCH 12/34] target/arm: defer max-v8 initializer selection until CPU creation Yonggang Luo
2026-10-14  9:31 ` [PATCH 13/34] hw/microblaze: defer PetaLogix endianness default until init Yonggang Luo
2026-10-14  9:31 ` [PATCH 14/34] hw/pci: Avoid guard loadparm with target_s390x() for s390x in class_init Yonggang Luo
2026-10-14  9:31 ` [PATCH 15/34] hw/scsi: " Yonggang Luo
2026-10-14 17:35 ` [PATCH 00/34] single-binary: Select the softmmu target through -machine <type> Pierrick Bouvier
2026-10-15  2:27   ` Yonggang Luo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=as9ZvlmXQUwvm0vz@redhat.com \
    --to=berrange@redhat.com \
    --cc=17746591750@163.com \
    --cc=alistair.francis@wdc.com \
    --cc=alxndr@bu.edu \
    --cc=anisinha@redhat.com \
    --cc=armbru@redhat.com \
    --cc=brian.cain@oss.qualcomm.com \
    --cc=chao.liu@processmission.com \
    --cc=cohuck@redhat.com \
    --cc=daniel.barboza@oss.qualcomm.com \
    --cc=darren.kenny@oracle.com \
    --cc=david@kernel.org \
    --cc=eblake@redhat.com \
    --cc=edgar.iglesias@gmail.com \
    --cc=fam@euphon.net \
    --cc=farman@linux.ibm.com \
    --cc=farosas@suse.de \
    --cc=jcmvbkbc@gmail.com \
    --cc=jiaxun.yang@flygoat.com \
    --cc=kraxel@redhat.com \
    --cc=laurent@vivier.eu \
    --cc=liwei1518@gmail.com \
    --cc=luoyonggang@gmail.com \
    --cc=lvivier@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=palmer@dabbelt.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@mailo.com \
    --cc=philmd@oss.qualcomm.com \
    --cc=pierrick.bouvier@oss.qualcomm.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-riscv@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=sgarzare@redhat.com \
    --cc=shorne@gmail.com \
    --cc=stefanha@redhat.com \
    --cc=zhao1.liu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.