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

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

 



-----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)

Thanks,
Kazu

> 
> Signed-off-by: Youling Tang <tangyouling@xxxxxxxxxxx>
> ---
>  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


--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://listman.redhat.com/mailman/listinfo/crash-utility




[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux