[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 17/21] LoongArch Linux User Emulation
From: |
Song Gao |
Subject: |
Re: [PATCH v4 17/21] LoongArch Linux User Emulation |
Date: |
Sat, 11 Sep 2021 13:58:59 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux mips64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
Hi, Richard.
On 09/10/2021 08:52 PM, Richard Henderson wrote:
> On 9/8/21 11:50 AM, Song Gao wrote:
>>
>> Hi Richard,
>>
>> On 09/05/2021 06:04 PM, Richard Henderson wrote:
>>>> +struct sigframe {
>>>> + uint32_t sf_ass[4]; /* argument save space for o32 */
>>>
>>> Surely there is no "o32" for loongarch?
>>>
>>
>> Yes, qemu only support 64bit. but the kernel has 'o32'. Should we have to
>> be consistent with the kernel?
>
> Yes, you need to be consistent with the kernel. However... the kernel is not
> yet upstream, and therefore the ABI is (officially) still malleable.
>
> Anyway, this padding was copied from mips o32, and should not have been.
> Looking at the loongarch gcc sources, REG_PARM_STACK_SPACE is always 0, and
> thus the 4 words reserved here are never used.
>
> I see that gcc/libgcc/config/loongarch/linux-unwind.h builds in knowledge of
> these unused words. I also see that linux/arch/loongarch/vdso/sigreturn.S
> does not provide correct unwind info. Certainly the kernel vdso should be
> fixed, so that code within gcc should not be needed. At which point the ABI
> for the signal frame is entirely private to the kernel.
>
We are cleanning up 'o32' code for gcc and kernel.
By the way, We have already prepared V5 patches. but I see that patches [1] and
[2] have not push into master. How can I use these patches?
[1]:
https://patchew.org/QEMU/20210618192951.125651-1-richard.henderson@linaro.org/
[2]:
https://patchew.org/QEMU/20210822035537.283193-1-richard.henderson@linaro.org/
Song Gao
thanks
>
> r~
- [PATCH v4 18/21] default-configs: Add loongarch linux-user support, (continued)
- [PATCH v4 18/21] default-configs: Add loongarch linux-user support, Song Gao, 2021/09/02
- [PATCH v4 19/21] target/loongarch: Add target build suport, Song Gao, 2021/09/02
- [PATCH v4 21/21] scripts: add loongarch64 binfmt config, Song Gao, 2021/09/02
- [PATCH v4 16/21] target/loongarch: Add disassembler, Song Gao, 2021/09/02
- [PATCH v4 17/21] LoongArch Linux User Emulation, Song Gao, 2021/09/02