[Crash-utility] [PATCH 1/3] defs.h: Fix the value of TIF_SIGPENDING macro

Youling Tang tangyouling at loongson.cn
Thu Jun 3 07:46:46 UTC 2021


Hi,Kazu

On 06/03/2021 03:14 PM, HAGIO KAZUHITO(萩尾 一仁) wrote:
> -----Original Message-----
>> Use the "grep" command to view the value of the TIF_SIGPENDING
>> macro in the kernel source code, and modify the wrong value in
>> the defs.h file.
> Thank you for the report, good catch!
>
> Those are not wrong values, just have not been updated to the current values..
> For example, with regard to mips (including mips64?), it was changed at v2.6.23:
>
> $ git grep '^#define TIF_SIGPENDING' v2.6.22:include/asm-mips
> v2.6.22:include/asm-mips:thread_info.h:#define TIF_SIGPENDING           2       /* signal pending */
> $ git grep '^#define TIF_SIGPENDING' v2.6.23:include/asm-mips
> v2.6.23:include/asm-mips:thread_info.h:#define TIF_SIGPENDING           1       /* signal pending */
>
> As far as I've checked, those were changed respectively:
>
> ARM     2 -> 0  at v2.6.23
> MIPS    2 -> 1  at v2.6.23
> MIPS64  2 -> 1  at v2.6.23
> PPC     2 -> 1  at v2.6.23
> IA64    1 -> 0  at v2.6.23
> PPC64   2 -> 1  at v2.6.23
> S390    2 -> 1  at v3.16
> S390X   2 -> 1  at v3.16
>
> So how about something like this?
>
> #define TIF_SIGPENDING  (THIS_KERNEL_VERSION >= LINUX(2,6,23) ? 0 : 2)
Thank you for your correction, I will send v2.

Taking MIPS as an example, the definition is changed to the following:

#define TIF_SIGPENDING (THIS_KERNEL_VERSION >= LINUX(2,6,23)? 1: 2)

Thanks,
Youling
>
> Thanks,
> Kazu
>
>> Signed-off-by: Youling Tang <tangyouling at loongson.cn>
>> ---
>>   defs.h | 16 ++++++++--------
>>   1 file changed, 8 insertions(+), 8 deletions(-)
>>
>> diff --git a/defs.h b/defs.h
>> index 396d61a..cd24107 100644
>> --- a/defs.h
>> +++ b/defs.h
>> @@ -2997,7 +2997,7 @@ typedef struct QEMUCPUState QEMUCPUState;
>>   #define __swp_type(entry)	SWP_TYPE(entry)
>>   #define __swp_offset(entry)	SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING		(2)
>> +#define TIF_SIGPENDING		(0)
>>
>>   #define _SECTION_SIZE_BITS	28
>>   #define _MAX_PHYSMEM_BITS	32
>> @@ -3377,7 +3377,7 @@ struct arm64_stackframe {
>>   #define __swp_type(entry)	SWP_TYPE(entry)
>>   #define __swp_offset(entry)	SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING		(2)
>> +#define TIF_SIGPENDING		(1)
>>
>>   #define _SECTION_SIZE_BITS	26
>>   #define _MAX_PHYSMEM_BITS	32
>> @@ -3416,7 +3416,7 @@ struct arm64_stackframe {
>>   #define __swp_type(entry)       SWP_TYPE(entry)
>>   #define __swp_offset(entry)     SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING          (2)
>> +#define TIF_SIGPENDING          (1)
>>
>>   #define _SECTION_SIZE_BITS      28
>>   #define _MAX_PHYSMEM_BITS       48
>> @@ -3884,7 +3884,7 @@ struct machine_specific {
>>   #define __swp_type(entry)   SWP_TYPE(entry)
>>   #define __swp_offset(entry) SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING (2)
>> +#define TIF_SIGPENDING (1)
>>
>>   #define _SECTION_SIZE_BITS	24
>>   #define _MAX_PHYSMEM_BITS	44
>> @@ -4079,7 +4079,7 @@ struct efi_memory_desc_t {
>>   #define __swp_type(entry)    ((entry >> 2) & 0x7f)
>>   #define __swp_offset(entry)  ((entry << 1) >> 10)
>>
>> -#define TIF_SIGPENDING (1)
>> +#define TIF_SIGPENDING (0)
>>
>>   #define KERNEL_TR_PAGE_SIZE (1 << _PAGE_SIZE_64M)
>>   #define KERNEL_TR_PAGE_MASK (~(KERNEL_TR_PAGE_SIZE - 1))
>> @@ -4219,7 +4219,7 @@ struct efi_memory_desc_t {
>>   #define PTE_RPN_MASK    (machdep->machspec->pte_rpn_mask)
>>   #define PTE_RPN_SHIFT   (machdep->machspec->pte_rpn_shift)
>>
>> -#define TIF_SIGPENDING (2)
>> +#define TIF_SIGPENDING (1)
>>
>>   #define SWP_TYPE(entry) (((entry) >> 1) & 0x7f)
>>   #define SWP_OFFSET(entry) ((entry) >> 8)
>> @@ -4259,7 +4259,7 @@ struct efi_memory_desc_t {
>>   #define __swp_type(entry)   SWP_TYPE(entry)
>>   #define __swp_offset(entry) SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING (2)
>> +#define TIF_SIGPENDING (1)
>>
>>   #define _SECTION_SIZE_BITS	25
>>   #define _MAX_PHYSMEM_BITS	31
>> @@ -4284,7 +4284,7 @@ struct efi_memory_desc_t {
>>   #define __swp_type(entry)  SWP_TYPE(entry)
>>   #define __swp_offset(entry) SWP_OFFSET(entry)
>>
>> -#define TIF_SIGPENDING (2)
>> +#define TIF_SIGPENDING (1)
>>
>>   #define _SECTION_SIZE_BITS	28
>>   #define _MAX_PHYSMEM_BITS_OLD	42
>> --
>> 2.1.0

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/crash-utility/attachments/20210603/35f7a771/attachment.htm>


More information about the Crash-utility mailing list