tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ptrace(2) interface for TLSBASE



Today it's missing.. do we need it in core files?

On 04.12.2019 16:56, Andrew Cagney wrote:
> Where is it in a core file?
> 
> On Tue, 3 Dec 2019 at 11:18, Kamil Rytarowski <n54%gmx.com@localhost> wrote:
>>
>> TLSBASE is stored on a selection of ports in a dedicated mcontext entry,
>> out of gpregs.
>>
>> In the amd64 case mcontext looks like this:
>>
>> typedef struct {
>>         __gregset_t     __gregs;
>>         __greg_t        _mc_tlsbase;
>>         __fpregset_t    __fpregs;
>> } mcontext_t;
>>
>> The same situation is for: i386, arm, m68k and mips.
>>
>> This patch implements the accessors for amd64:
>>
>> http://netbsd.org/~kamil/patch-00199-TLSBASE.txt
>>
>> Does it look correct? If so I will add the same code for i386,
>> i386-on-amd64, arm, m68k and mips.
>>
>> I'm not completely sure as l_private might be desynced with TLSBASE that
>> was updated without letting the kernel know.
>>
>> I intend to get this change merged into -9, before 9.0.
>>
>> This interface pending to be introduced in GDB/NetBSD.
>>
>> NB. FS/GS in x86 __gpregs is confusing as it is not TLS base.
>>


Attachment: signature.asc
Description: OpenPGP digital signature



Home | Main Index | Thread Index | Old Index