[5/6] linux: Sync Linux 6.6 elf.h
Checks
Context |
Check |
Description |
redhat-pt-bot/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_build--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_check--master-arm |
success
|
Testing passed
|
Commit Message
It adds NT_X86_SHST (2fab02b25ae7cf5), NT_RISCV_CSR/NT_RISCV_VECTOR
(9300f00439743c4), and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH
(1a69f7a161a78ae).
---
elf/elf.h | 6 ++++++
1 file changed, 6 insertions(+)
Comments
* Adhemerval Zanella:
> It adds NT_X86_SHST (2fab02b25ae7cf5), NT_RISCV_CSR/NT_RISCV_VECTOR
> (9300f00439743c4), and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH
> (1a69f7a161a78ae).
> ---
> elf/elf.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/elf/elf.h b/elf/elf.h
> index 73a64baa79..50b73fa329 100644
> --- a/elf/elf.h
> +++ b/elf/elf.h
> @@ -796,6 +796,8 @@ typedef struct
> #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
> #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
> #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
> +/* Old binutils treats 0x203 as a CET state */
> +#define NT_X86_SHST 0x204 /* x86 SHSTK state */
> #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
> #define NT_S390_TIMER 0x301 /* s390 timer register */
> #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator reg
That comment will be outdated soon. I'm not sure it's helpful.
On 10/31/23 08:29, Florian Weimer wrote:
> * Adhemerval Zanella:
>
>> It adds NT_X86_SHST (2fab02b25ae7cf5), NT_RISCV_CSR/NT_RISCV_VECTOR
>> (9300f00439743c4), and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH
>> (1a69f7a161a78ae).
>> ---
>> elf/elf.h | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/elf/elf.h b/elf/elf.h
>> index 73a64baa79..50b73fa329 100644
>> --- a/elf/elf.h
>> +++ b/elf/elf.h
>> @@ -796,6 +796,8 @@ typedef struct
>> #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
>> #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
>> #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
>> +/* Old binutils treats 0x203 as a CET state */
>> +#define NT_X86_SHST 0x204 /* x86 SHSTK state */
>> #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
>> #define NT_S390_TIMER 0x301 /* s390 timer register */
>> #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator reg
> That comment will be outdated soon. I'm not sure it's helpful.
For what reason will it find itself outdated ?
* Gabriel Ravier:
> On 10/31/23 08:29, Florian Weimer wrote:
>> * Adhemerval Zanella:
>>
>>> It adds NT_X86_SHST (2fab02b25ae7cf5), NT_RISCV_CSR/NT_RISCV_VECTOR
>>> (9300f00439743c4), and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH
>>> (1a69f7a161a78ae).
>>> ---
>>> elf/elf.h | 6 ++++++
>>> 1 file changed, 6 insertions(+)
>>>
>>> diff --git a/elf/elf.h b/elf/elf.h
>>> index 73a64baa79..50b73fa329 100644
>>> --- a/elf/elf.h
>>> +++ b/elf/elf.h
>>> @@ -796,6 +796,8 @@ typedef struct
>>> #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
>>> #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
>>> #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
>>> +/* Old binutils treats 0x203 as a CET state */
>>> +#define NT_X86_SHST 0x204 /* x86 SHSTK state */
>>> #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
>>> #define NT_S390_TIMER 0x301 /* s390 timer register */
>>> #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator reg
>> That comment will be outdated soon. I'm not sure it's helpful.
>
> For what reason will it find itself outdated ?
The binutils versions that treat this as the CET flag will age out
fairly quickly, I think.
On 31/10/23 07:37, Florian Weimer wrote:
> * Gabriel Ravier:
>
>> On 10/31/23 08:29, Florian Weimer wrote:
>>> * Adhemerval Zanella:
>>>
>>>> It adds NT_X86_SHST (2fab02b25ae7cf5), NT_RISCV_CSR/NT_RISCV_VECTOR
>>>> (9300f00439743c4), and NT_LOONGARCH_HW_BREAK/NT_LOONGARCH_HW_WATCH
>>>> (1a69f7a161a78ae).
>>>> ---
>>>> elf/elf.h | 6 ++++++
>>>> 1 file changed, 6 insertions(+)
>>>>
>>>> diff --git a/elf/elf.h b/elf/elf.h
>>>> index 73a64baa79..50b73fa329 100644
>>>> --- a/elf/elf.h
>>>> +++ b/elf/elf.h
>>>> @@ -796,6 +796,8 @@ typedef struct
>>>> #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
>>>> #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
>>>> #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
>>>> +/* Old binutils treats 0x203 as a CET state */
>>>> +#define NT_X86_SHST 0x204 /* x86 SHSTK state */
>>>> #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
>>>> #define NT_S390_TIMER 0x301 /* s390 timer register */
>>>> #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator reg
>>> That comment will be outdated soon. I'm not sure it's helpful.
>>
>> For what reason will it find itself outdated ?
>
> The binutils versions that treat this as the CET flag will age out
> fairly quickly, I think.
I don't have a strong preference, I will remove it.
@@ -796,6 +796,8 @@ typedef struct
#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
#define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */
+/* Old binutils treats 0x203 as a CET state */
+#define NT_X86_SHST 0x204 /* x86 SHSTK state */
#define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */
#define NT_S390_TIMER 0x301 /* s390 timer register */
#define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */
@@ -834,6 +836,8 @@ typedef struct
#define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */
#define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */
#define NT_MIPS_MSA 0x802 /* MIPS SIMD registers. */
+#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */
+#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */
#define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers. */
#define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and
status registers. */
@@ -843,6 +847,8 @@ typedef struct
SIMD Extension registers. */
#define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary
Translation registers. */
+#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */
+#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */
/* Legal values for the note segment descriptor types for object files. */