This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] mips: Do not include hi and lo in __SYSCALL_CLOBBERS for R6


On 19.11.2019. 19:20, Joseph Myers wrote:
> On Tue, 19 Nov 2019, Dragan Mladjenovic wrote:
>
>>> What is the kernel ABI on r6 systems with the DSP extension - does the
>>> kernel ABI permit the kernel to clobber those registers on syscall return
>>> or not?  This patch looks like it's only safe if the kernel guarantees it
>>> will never clobber those registers on r6 (or later), regardless of
>>> instruction set extensions present.
>>
>> The kernel is not allowed to use DSP ASE. From what I see the DSP state
>> is not restored on syscall exit. Only some vendor specific extension are
>> allowed in the kernel. From what I understand that on "happy path"
>> kernel just saves some registers and relies on C ABI to preserve the
>> rest. The use of hi and lo is result of them not being preserved across
>> the function calls in C.
>
> Thanks.  If this means the kernel always preserves hi and lo for r6,
> regardless of extensions available, then the patch is OK to commit.  Note
> that we no longer include GNU-style ChangeLog entries in commit messages.
>

Thanks,

Committed as [1]. I left the ChangeLog anyway.

[1] 
https://sourceware.org/git/?p=glibc.git;a=commit;h=a2e487ce1c59d19345d9ecacc58de79febd869e4


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]