[PATCH v2 2/2] Propagate NT_RISCV_VECTOR from Linux kernel headers to binutils. The value is identical to pre-existing NT_RISCV_CSR but the note names different (NT_RISCV_CSR is "GDB" and NT_RISCV_VECTOR is "CORE")

John Baldwin jhb@FreeBSD.org
Sat Aug 12 00:47:29 GMT 2023


On 8/11/23 9:43 AM, Palmer Dabbelt wrote:
> On Fri, 11 Aug 2023 05:51:45 PDT (-0700), Andrew Burgess wrote:
>> Greg Savin via Gdb-patches <gdb-patches@sourceware.org> writes:
>>
>>> ---
>>>   include/elf/common.h | 2 ++
>>>   1 file changed, 2 insertions(+)
>>>
>>> diff --git a/include/elf/common.h b/include/elf/common.h
>>> index e7eede23a07..d28f5c6ccf5 100644
>>> --- a/include/elf/common.h
>>> +++ b/include/elf/common.h
>>> @@ -715,6 +715,8 @@
>>>   					/*   note name must be "CORE".  */
>>>   #define NT_RISCV_CSR    0x900		/* RISC-V Control and Status Registers */
>>>   					/*   note name must be "GDB".  */
>>> +#define NT_RISCV_VECTOR 0x900		/* RISC-V Vector Registers */
>>> +					/*   note name must be "CORE".  */
>>
>> I'm not a binutils maintainer, but do have an interest from the
>> RISC-V/GDB side.
>>
>> Given the comments you made in an earlier mail, I guess we're going to
>> have to restructure some of the core file support in order to handle
>> NT_RISCV_CSR and NT_RISCV_VECTOR having the same values.  But that
>> should be doable.
>>
>> No objections to this patch from me.
> 
> NT_RISCV_VECTOR isn't in a releasted kernel, so it's not a stable uABI
> yet.  So there's still time to change it.  0I've got a revert on the
> kernel lists, it'd mean we miss 6.5 but we'd just end up in 6.6 which
> isn't so bad.

While it is possible to handle colliding NT_RISCV_* values, it will probably
be simpler all-around if you are able to make NT_RISCV_VECTOR be 0x901 since
you are going to revert and redo.

-- 
John Baldwin



More information about the Binutils mailing list