[PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs

Philippe Mathieu-Daudé posted 3 patches 3 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20250814070650.78657-1-philmd@linaro.org
Maintainers: Laurent Vivier <laurent@vivier.eu>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Jiaxun Yang <jiaxun.yang@flygoat.com>
include/elf.h                | 7 +++++++
linux-user/mips/target_elf.h | 6 ++++++
2 files changed, 13 insertions(+)
[PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Philippe Mathieu-Daudé 3 months ago
We weren't parsing MIPS ASE in the ELF header, so couldn't
automatically pick an appropriate CPU.

Since we'll have a rc4, I propose these sensible patches
for 10.1, but both ASEs are available since 15 years in QEMU,
so this isn't something broken since the latest release, and
I don't mind holding it for 10.2.

Regards,

Phil.

Philippe Mathieu-Daudé (3):
  elf: Add EF_MIPS_ARCH_ASE definitions
  linux-user/mips: Select 74Kf CPU to run MIPS16e binaries
  linux-user/mips: Select M14Kc CPU to run microMIPS binaries

 include/elf.h                | 7 +++++++
 linux-user/mips/target_elf.h | 6 ++++++
 2 files changed, 13 insertions(+)

-- 
2.49.0


Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Richard Henderson 3 months ago
On 8/14/25 17:06, Philippe Mathieu-Daudé wrote:
> We weren't parsing MIPS ASE in the ELF header, so couldn't
> automatically pick an appropriate CPU.
> 
> Since we'll have a rc4, I propose these sensible patches
> for 10.1, but both ASEs are available since 15 years in QEMU,
> so this isn't something broken since the latest release, and
> I don't mind holding it for 10.2.
> 
> Regards,
> 
> Phil.
> 
> Philippe Mathieu-Daudé (3):
>    elf: Add EF_MIPS_ARCH_ASE definitions
>    linux-user/mips: Select 74Kf CPU to run MIPS16e binaries
>    linux-user/mips: Select M14Kc CPU to run microMIPS binaries
> 
>   include/elf.h                | 7 +++++++
>   linux-user/mips/target_elf.h | 6 ++++++
>   2 files changed, 13 insertions(+)
> 

Does mips16 or micromips apply to mips64 as well?
If so, we're missing changes to linux-user/mips64/target_elf.h.

Otherwise,
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~

Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Philippe Mathieu-Daudé 3 months ago
On 14/8/25 11:57, Richard Henderson wrote:
> On 8/14/25 17:06, Philippe Mathieu-Daudé wrote:
>> We weren't parsing MIPS ASE in the ELF header, so couldn't
>> automatically pick an appropriate CPU.
>>
>> Since we'll have a rc4, I propose these sensible patches
>> for 10.1, but both ASEs are available since 15 years in QEMU,
>> so this isn't something broken since the latest release, and
>> I don't mind holding it for 10.2.
>>
>> Regards,
>>
>> Phil.
>>
>> Philippe Mathieu-Daudé (3):
>>    elf: Add EF_MIPS_ARCH_ASE definitions
>>    linux-user/mips: Select 74Kf CPU to run MIPS16e binaries
>>    linux-user/mips: Select M14Kc CPU to run microMIPS binaries
>>
>>   include/elf.h                | 7 +++++++
>>   linux-user/mips/target_elf.h | 6 ++++++
>>   2 files changed, 13 insertions(+)
>>
> 
> Does mips16 or micromips apply to mips64 as well?

Yes (both).

> If so, we're missing changes to linux-user/mips64/target_elf.h.

Unfortunately no 64-bit CPU we implement support these ASEs.

I'll add to patch 2 & 3 descriptions:

"Note, currently QEMU doesn't have 64-bit CPU supporting $FOO ASE."

> Otherwise,
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

Thanks!

Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Philippe Mathieu-Daudé 2 months, 1 week ago
On 14/8/25 09:06, Philippe Mathieu-Daudé wrote:
> We weren't parsing MIPS ASE in the ELF header, so couldn't
> automatically pick an appropriate CPU.


> Philippe Mathieu-Daudé (3):
>    elf: Add EF_MIPS_ARCH_ASE definitions
>    linux-user/mips: Select 74Kf CPU to run MIPS16e binaries
>    linux-user/mips: Select M14Kc CPU to run microMIPS binaries

Series now queued, thanks.

Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Stefan Hajnoczi 2 months, 4 weeks ago
On Thu, Aug 14, 2025 at 09:06:47AM +0200, Philippe Mathieu-Daudé wrote:
> We weren't parsing MIPS ASE in the ELF header, so couldn't
> automatically pick an appropriate CPU.
> 
> Since we'll have a rc4, I propose these sensible patches
> for 10.1, but both ASEs are available since 15 years in QEMU,
> so this isn't something broken since the latest release, and
> I don't mind holding it for 10.2.

Starting from -rc3 onwards I prefer to merge only release blockers.
Other bug fixes should wait for the next release because non-essential
fixes might introduce issues that cause the release schedule to slip.

Thanks,
Stefan

> 
> Regards,
> 
> Phil.
> 
> Philippe Mathieu-Daudé (3):
>   elf: Add EF_MIPS_ARCH_ASE definitions
>   linux-user/mips: Select 74Kf CPU to run MIPS16e binaries
>   linux-user/mips: Select M14Kc CPU to run microMIPS binaries
> 
>  include/elf.h                | 7 +++++++
>  linux-user/mips/target_elf.h | 6 ++++++
>  2 files changed, 13 insertions(+)
> 
> -- 
> 2.49.0
> 
> 
Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Peter Maydell 3 months ago
On Thu, 14 Aug 2025 at 08:07, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> We weren't parsing MIPS ASE in the ELF header, so couldn't
> automatically pick an appropriate CPU.
>
> Since we'll have a rc4, I propose these sensible patches
> for 10.1, but both ASEs are available since 15 years in QEMU,
> so this isn't something broken since the latest release, and
> I don't mind holding it for 10.2.

If this is a long-standing bug then I think it's best
held for 10.2.

thanks
-- PMM
Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Michael Tokarev 2 months, 1 week ago
On 14.08.2025 10:06, Philippe Mathieu-Daudé wrote:
> We weren't parsing MIPS ASE in the ELF header, so couldn't
> automatically pick an appropriate CPU.
> 
> Since we'll have a rc4, I propose these sensible patches
> for 10.1, but both ASEs are available since 15 years in QEMU,
> so this isn't something broken since the latest release, and
> I don't mind holding it for 10.2.

Now I wonder what should I do with this wrt qemu-stable series.
Since no one complained (?) for so many years..  is it worth
to add this to previous stable releases?

(fwiw, all 3 patches are needed, obviously.  Also, for 7.2,
the following 2 patches can also be picked up:
f7e3d7521b4 "linux-user/mips: Use P5600 as default CPU to run NaN2008 
ELF binaries"
3e8130da7c9 "linux-user/mips: Do not try to use removed R5900 CPU")

What do you think?

I picked all 3 up for 7.2, 10.0 and 10.1 series for now.

Thanks,

/mjt

Re: [PATCH-for-10.1? 0/3] linux-user: Select default CPUs for MicroMIPS and MIPS16e ASEs
Posted by Philippe Mathieu-Daudé 1 month, 3 weeks ago
On 4/9/25 22:15, Michael Tokarev wrote:
> On 14.08.2025 10:06, Philippe Mathieu-Daudé wrote:
>> We weren't parsing MIPS ASE in the ELF header, so couldn't
>> automatically pick an appropriate CPU.
>>
>> Since we'll have a rc4, I propose these sensible patches
>> for 10.1, but both ASEs are available since 15 years in QEMU,
>> so this isn't something broken since the latest release, and
>> I don't mind holding it for 10.2.
> 
> Now I wonder what should I do with this wrt qemu-stable series.
> Since no one complained (?) for so many years..  is it worth
> to add this to previous stable releases?

I fixed these for correctness, but indeed nobody cares.

> 
> (fwiw, all 3 patches are needed, obviously.  Also, for 7.2,
> the following 2 patches can also be picked up:
> f7e3d7521b4 "linux-user/mips: Use P5600 as default CPU to run NaN2008 
> ELF binaries"
> 3e8130da7c9 "linux-user/mips: Do not try to use removed R5900 CPU")
> 
> What do you think?

Ditto. If this is too much burden for you to carry them,
don't worry dropping them.

> 
> I picked all 3 up for 7.2, 10.0 and 10.1 series for now.

Thanks for your careful work with the stable tree :)