On Thu, Oct 22, 2026 at 7:39 AM Pierrick Bouvier
<[email protected]> wrote:
>
> On 10/21/2026 3:41 PM, Yonggang Luo wrote:
> > On Thu, Oct 22, 2026 at 6:02 AM Pierrick Bouvier
> > <[email protected]> wrote:
> >>
> >> On 10/21/2026 2:53 PM, Yonggang Luo wrote:
> >>> On Thu, Oct 22, 2026 at 2:14 AM Pierrick Bouvier
> >>> <[email protected]> wrote:
> >>>>
> >>>> For now, this function strictly returns false. We'll turn it to true
> >>>> once heterogeneous emulation in supported. Meanwhile, we can use this to
> >>>> add various checks and asserts over the codebase as reminders about what
> >>>> we'll need to modify.
> >>>>
> >>>> Reviewed-by: Marc-André Lureau <[email protected]>
> >>>> Reviewed-by: Anton Johansson <[email protected]>
> >>>> Suggested-by: Philippe Mathieu-Daudé <[email protected]>
> >>>> Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
> >>>> Signed-off-by: Pierrick Bouvier <[email protected]>
> >>>> ---
> >>>>  include/qemu/target-info.h | 8 ++++++++
> >>>>  target-info.c              | 6 ++++++
> >>>>  2 files changed, 14 insertions(+)
> >>>>
> >>>> diff --git a/include/qemu/target-info.h b/include/qemu/target-info.h
> >>>> index 862097c6c63..923c00c917c 100644
> >>>> --- a/include/qemu/target-info.h
> >>>> +++ b/include/qemu/target-info.h
> >>>> @@ -42,6 +42,14 @@ const char *target_cpu_type(void);
> >>>>   */
> >>>>  bool target_big_endian(void);
> >>>>
> >>>> +/**
> >>>> + * target_heterogeneous:
> >>>> + *
> >>>> + * Returns true if current binary has support for running several target
> >>>> + * architectures at once (heterogeneous emulation).
> >>>> + */
> >>>> +bool target_heterogeneous(void);
> >>>> +
> >>>>  /**
> >>>>   * target_base_arm:
> >>>>   *
> >>>> diff --git a/target-info.c b/target-info.c
> >>>> index 254530d8ea5..b8a4a7ebf7a 100644
> >>>> --- a/target-info.c
> >>>> +++ b/target-info.c
> >>>> @@ -42,6 +42,12 @@ bool target_big_endian(void)
> >>>>      return target_endian_mode() == ENDIAN_MODE_BIG;
> >>>>  }
> >>>>
> >>>> +bool target_heterogeneous(void)
> >>>> +{
> >>>> +    /* For now, we only run a single target at a time */
> >>>> +    return false;
> >>>> +}
> >>>
> >>> How about place this in stubs/target_heterogeneous.c
> >>> So when do multi-target tests, we can override it with
> >>>
> >>> bool target_heterogeneous(void)
> >>> {
> >>>     /* For now, we only run a single target at a time */
> >>>     return true;
> >>> }
> >>>
> >>
> >> At the moment, even though multiple targets might be supported for the
> >> same binary, we still run only a single one at a time (same in
> >> single-binary), so this function will return false until this changes.
> >>
> >> Why would we want to override it today?
> >
> > Just for less changes in future, this does not mean this patch is not valid,
> > at least it gives an API that I can use later.
> >
> > I did something similar to get the single-binary qemu-system working.
> > And I named it as target_combined_binary(), I think they can act the
> > same function.
> >
> > https://lore.kernel.org/qemu-devel/[email protected]/
> >
>
> For now, I think we can keep the current patch, as there is no need
> (yet) to have conflicting symbols for target_heterogeneous.

Fine with it, I am waiting for it to be merged.

>
> Thanks,
> Pierrick



-- 
         此致
礼
罗勇刚
Yours
    sincerely,
Yonggang Luo

Reply via email to