qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>, qemu-devel@nongnu.org
Cc: "Paolo Bonzini" <pbonzini@redhat.com>,
	"Yanan Wang" <wangyanan55@huawei.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Zhao Liu" <zhao1.liu@intel.com>,
	"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	"Eduardo Habkost" <eduardo@habkost.net>,
	"Richard Henderson" <richard.henderson@linaro.org>
Subject: Re: [PATCH 0/7] cpus: Replace CPU_RESOLVING_TYPE -> target_cpu_type()
Date: Thu, 17 Apr 2025 12:02:02 -0700	[thread overview]
Message-ID: <f5380fe5-9479-47d8-9bd5-a3100cab5afb@linaro.org> (raw)
In-Reply-To: <fe5198f0-df6c-4b9b-9c68-9b18d8f01406@linaro.org>

On 4/17/25 11:38, Philippe Mathieu-Daudé wrote:
> On 17/4/25 20:28, Pierrick Bouvier wrote:
>> Maybe it would be preferable to focus on providing a minimal but
>> *complete* TargetInfo before upstreaming any of this, as it's really
>> blocking the rest of the work for single binary.
> 
> I suppose I misunderstood you asking to post these reviewed patches as
> separate of the TargetInfo series which need more work:
> 
> "I just feel the last 3 commits, and this one, are a bit disconnected
> from the series."
> 

You're right, it meant that the 4 commits (accel: *) are extra cleanups 
and not really related to the series title "Introduce TargetInfo API 
(for single binary)", which is fine to upstream by itself.
However, introducing target_info.h partially just to do this cleanup 
first sounds a bit weird to me.

My complete thought was "This cleanup is ok, but please postpone it once 
we have TargetInfo API upstream".
It's a remark I'll keep doing for TargetInfo, as the goal for v1 is to 
have a minimal API, introducing the concept of Machine and CPU types, 
and apply it to hw/arm, which was our initial need and why we talked 
about this in the first place.

Once it's there upstream, we can all enhance it in parallel, with the 
various needs we'll have for cleaning up other parts of the codebase.

My rationale is that it's easy to rebase our conflicting code against a 
common file, but it's hard to do it if it doesn't exist, thus my 
insistence on getting a minimal API first.

For instance, once it's upstream, we can easily add in different series 
(and different people):
- target_current() -> enum Target
- target_aarch64() -> bool
and progress without having to first be blocked by the existence of 
TargetInfo itself. We can as well cherry pick our mutual patches 
touching TargetInfo without getting blocked by the upstream process 
itself, and the first series to be pulled will make it available for 
everyone.

> https://lore.kernel.org/qemu-devel/0b4376ee-504b-4096-a590-8a509ec7894d@linaro.org/
> 
>>
>> Minimal requirements to have a complete series would be:
>> - Rename QMP TargetInfo struct to use that name
>> - Be able to query target cpu type (what this series does)
>> - Be able to query machine cpu type
>> - Modify generic functions listing machines/cpus to take this into account
>> - Tag labeled boards/cpu in hw/arm to prove this is working (without
>> doing any other cleanup to those files and *not* make them common)
>> - No other additional target information for the v1, let's keep that for
>> later.
>>
>> Note: target_cpu_type will not be TYPE_ARM_CPU, as it wrongly wraps
>> arm32 and aarch64 cpus, while it should correctly identify one or the
>> other. I suggested TYPE_TARGET_CPU_ARM, TYPE_TARGET_CPU_AARCH64, and
>> same for machines: TYPE_TARGET_MACHINE_ARM, TYPE_TARGET_MACHINE_AARCH64.
>> So we can reuse this naming convention with any other target we'll reuse
>> in the future.
> 
> Got it.
> 
>>
>> Pierrick


  reply	other threads:[~2025-04-17 19:03 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-17 16:54 [PATCH 0/7] cpus: Replace CPU_RESOLVING_TYPE -> target_cpu_type() Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 1/7] qemu: Introduce target_cpu_type() Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 2/7] cpus: Replace CPU_RESOLVING_TYPE -> target_cpu_type() Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 3/7] cpus: Move target-agnostic methods out of cpu-target.c Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 4/7] accel: Implement accel_init_ops_interfaces() for both system/user mode Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 5/7] accel: Include missing 'qemu/accel.h' header in accel-internal.h Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 6/7] accel: Make AccelCPUClass structure target-agnostic Philippe Mathieu-Daudé
2025-04-17 16:54 ` [PATCH 7/7] accel: Move target-agnostic code from accel-target.c -> accel-common.c Philippe Mathieu-Daudé
2025-04-17 18:28 ` [PATCH 0/7] cpus: Replace CPU_RESOLVING_TYPE -> target_cpu_type() Pierrick Bouvier
2025-04-17 18:29   ` Pierrick Bouvier
2025-04-17 18:38   ` Philippe Mathieu-Daudé
2025-04-17 19:02     ` Pierrick Bouvier [this message]
2025-04-18 17:42 ` Richard Henderson

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=f5380fe5-9479-47d8-9bd5-a3100cab5afb@linaro.org \
    --to=pierrick.bouvier@linaro.org \
    --cc=berrange@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=marcandre.lureau@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=wangyanan55@huawei.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).