On 10/15, Jens Axboe wrote:
>
> --- a/arch/x86/include/asm/thread_info.h
> +++ b/arch/x86/include/asm/thread_info.h
> @@ -93,6 +93,7 @@ struct thread_info {
>  #define TIF_NOTSC            16      /* TSC is not accessible in userland */
>  #define TIF_IA32             17      /* IA32 compatibility process */
>  #define TIF_SLD                      18      /* Restore split lock detection 
> on context switch */
> +#define TIF_NOTIFY_SIGNAL    19      /* signal notifications exist */
>  #define TIF_MEMDIE           20      /* is terminating due to OOM killer */
>  #define TIF_POLLING_NRFLAG   21      /* idle is polling for TIF_NEED_RESCHED 
> */
>  #define TIF_IO_BITMAP                22      /* uses I/O bitmap */

This is offtopic, but I am wondering if something like the patch below
makes any sense.

It moves the common TIF_ flags into include/asm-generic/thread_info.h

Generated by this script:

        #!/usr/bin/perl -w
        use strict;

        # the (probably incomplete) list of arches which have some bits
        # hardcoded
        my $SKIP = join '|', qw(c6x sparc);

        # the (incomplete) list of "safe" flags which can be moved into
        # asm-generic even if not supported
        my @SAFE = qw(TIF_SECCOMP TIF_UPROBE);

        my %tifs;

        my @files = grep {
                open my $fd, '<', $_ or die $_;
                my $has; local $_;
                /^\s*#define\s*(TIF_\w+)\s+\d+\b/ and $has = ++$tifs{$1}
                        while <$fd>;
                $has;
        }       grep !m{^arch/($SKIP)/}o,
                split "\n", qx(find arch/*/include/asm/thread_info*.h);

        my %comm = map +($_,1), grep $tifs{$_} == @files, keys %tifs;
        $comm{$_} = $tifs{$_} = 1 for @SAFE;

        our $ctr;

        my @comm = sort keys %comm;
        print "--- /dev/null\n+++ x/include/asm-generic/thread_info.h\n";
        print "@@ -0,0 +1,@{[2*@comm+3]} @@\n";
        print "+#define $_\t@{[$ctr++]}\n" for @comm;
        print "+\n+#define TIF__ARCH\t$ctr\n+\n";
        print "+#define _$_\t(1 << $_)\n" for @comm;

        sub patch
        {
                return $_ unless /^(\s*#define\s*)(_)?(TIF_\w+)/ and $tifs{$3};
                return if $comm{$3}; return $_ if $2;
                (!$ctr && "#include <asm-generic/thread_info.h>\n\n")
                        . s/\b\d+/(TIF__ARCH+@{[$ctr++]})/r;
        }

        for my $file (sort @files) {
                open my $fd, '<', $file or die;
                open my $diff, "|diff -u --label=x/$file $file --label=x/$file 
-"
                        or die;
                $ctr = 0; print $diff patch while <$fd>;
        }

Oleg.

--- /dev/null
+++ x/include/asm-generic/thread_info.h
@@ -0,0 +1,17 @@
+#define TIF_MEMDIE     0
+#define TIF_NEED_RESCHED       1
+#define TIF_NOTIFY_RESUME      2
+#define TIF_SECCOMP    3
+#define TIF_SIGPENDING 4
+#define TIF_SYSCALL_TRACE      5
+#define TIF_UPROBE     6
+
+#define TIF__ARCH      7
+
+#define _TIF_MEMDIE    (1 << TIF_MEMDIE)
+#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
+#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
+#define _TIF_SECCOMP   (1 << TIF_SECCOMP)
+#define _TIF_SIGPENDING        (1 << TIF_SIGPENDING)
+#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
+#define _TIF_UPROBE    (1 << TIF_UPROBE)
--- x/arch/alpha/include/asm/thread_info.h
+++ x/arch/alpha/include/asm/thread_info.h
@@ -57,19 +57,12 @@
  *
  * TIF_SYSCALL_TRACE is known to be 0 via blbs.
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1       /* callback before returning to user */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_SYSCALL_AUDIT      4       /* syscall audit active */
-#define TIF_DIE_IF_KERNEL      9       /* dik recursion lock */
-#define TIF_MEMDIE             13      /* is terminating due to OOM killer */
-#define TIF_POLLING_NRFLAG     14      /* idle is polling for TIF_NEED_RESCHED 
*/
+#include <asm-generic/thread_info.h>
+
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+0)   /* syscall audit active */
+#define TIF_DIE_IF_KERNEL      (TIF__ARCH+1)   /* dik recursion lock */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+2)   /* idle is polling for 
TIF_NEED_RESCHED */
 
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
-#define _TIF_NOTIFY_RESUME     (1<<TIF_NOTIFY_RESUME)
 #define _TIF_SYSCALL_AUDIT     (1<<TIF_SYSCALL_AUDIT)
 #define _TIF_POLLING_NRFLAG    (1<<TIF_POLLING_NRFLAG)
 
--- x/arch/arc/include/asm/thread_info.h
+++ x/arch/arc/include/asm/thread_info.h
@@ -74,22 +74,14 @@
  * - pending work-to-be-done flags are in LSW
  * - other flags in MSW
  */
-#define TIF_RESTORE_SIGMASK    0       /* restore sig mask in do_signal() */
-#define TIF_NOTIFY_RESUME      1       /* resumption notification requested */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_SYSCALL_AUDIT      4       /* syscall auditing active */
-#define TIF_SYSCALL_TRACE      15      /* syscall trace active */
+#include <asm-generic/thread_info.h>
+
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+0)   /* restore sig mask in 
do_signal() */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+1)   /* syscall auditing active */
 
 /* true if poll_idle() is polling TIF_NEED_RESCHED */
-#define TIF_MEMDIE             16
 
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1<<TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
 #define _TIF_SYSCALL_AUDIT     (1<<TIF_SYSCALL_AUDIT)
-#define _TIF_MEMDIE            (1<<TIF_MEMDIE)
 
 /* work to do on interrupt/exception return */
 #define _TIF_WORK_MASK         (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
--- x/arch/arm/include/asm/thread_info.h
+++ x/arch/arm/include/asm/thread_info.h
@@ -127,27 +127,16 @@
  *  TIF_USEDFPU                - FPU was used by this task this quantum (SMP)
  *  TIF_POLLING_NRFLAG - true if poll_idle() is polling TIF_NEED_RESCHED
  */
-#define TIF_SIGPENDING         0       /* signal pending */
-#define TIF_NEED_RESCHED       1       /* rescheduling necessary */
-#define TIF_NOTIFY_RESUME      2       /* callback before returning to user */
-#define TIF_UPROBE             3       /* breakpointed or singlestepping */
-#define TIF_SYSCALL_TRACE      4       /* syscall trace active */
-#define TIF_SYSCALL_AUDIT      5       /* syscall auditing active */
-#define TIF_SYSCALL_TRACEPOINT 6       /* syscall tracepoint instrumentation */
-#define TIF_SECCOMP            7       /* seccomp syscall filtering active */
+#include <asm-generic/thread_info.h>
 
-#define TIF_USING_IWMMXT       17
-#define TIF_MEMDIE             18      /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    20
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+0)   /* syscall auditing active */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+1)   /* syscall tracepoint 
instrumentation */
+
+#define TIF_USING_IWMMXT       (TIF__ARCH+2)
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+3)
 
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_UPROBE            (1 << TIF_UPROBE)
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 #define _TIF_USING_IWMMXT      (1 << TIF_USING_IWMMXT)
 
 /* Checks for any syscall work in entry-common.S */
--- x/arch/arm64/include/asm/thread_info.h
+++ x/arch/arm64/include/asm/thread_info.h
@@ -61,37 +61,26 @@
 
 #endif
 
-#define TIF_SIGPENDING         0       /* signal pending */
-#define TIF_NEED_RESCHED       1       /* rescheduling necessary */
-#define TIF_NOTIFY_RESUME      2       /* callback before returning to user */
-#define TIF_FOREIGN_FPSTATE    3       /* CPU's FP state is not current's */
-#define TIF_UPROBE             4       /* uprobe breakpoint or singlestep */
-#define TIF_FSCHECK            5       /* Check FS is USER_DS on return */
-#define TIF_SYSCALL_TRACE      8       /* syscall trace active */
-#define TIF_SYSCALL_AUDIT      9       /* syscall auditing */
-#define TIF_SYSCALL_TRACEPOINT 10      /* syscall tracepoint for ftrace */
-#define TIF_SECCOMP            11      /* syscall secure computing */
-#define TIF_SYSCALL_EMU                12      /* syscall emulation active */
-#define TIF_MEMDIE             18      /* is terminating due to OOM killer */
-#define TIF_FREEZE             19
-#define TIF_RESTORE_SIGMASK    20
-#define TIF_SINGLESTEP         21
-#define TIF_32BIT              22      /* 32bit process */
-#define TIF_SVE                        23      /* Scalable Vector Extension in 
use */
-#define TIF_SVE_VL_INHERIT     24      /* Inherit sve_vl_onexec across exec */
-#define TIF_SSBD               25      /* Wants SSB mitigation */
-#define TIF_TAGGED_ADDR                26      /* Allow tagged user addresses 
*/
+#include <asm-generic/thread_info.h>
+
+#define TIF_FOREIGN_FPSTATE    (TIF__ARCH+0)   /* CPU's FP state is not 
current's */
+#define TIF_FSCHECK            (TIF__ARCH+1)   /* Check FS is USER_DS on 
return */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+2)   /* syscall auditing */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+3)   /* syscall tracepoint for 
ftrace */
+#define TIF_SYSCALL_EMU                (TIF__ARCH+4)   /* syscall emulation 
active */
+#define TIF_FREEZE             (TIF__ARCH+5)
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+6)
+#define TIF_SINGLESTEP         (TIF__ARCH+7)
+#define TIF_32BIT              (TIF__ARCH+8)   /* 32bit process */
+#define TIF_SVE                        (TIF__ARCH+9)   /* Scalable Vector 
Extension in use */
+#define TIF_SVE_VL_INHERIT     (TIF__ARCH+10)  /* Inherit sve_vl_onexec across 
exec */
+#define TIF_SSBD               (TIF__ARCH+11)  /* Wants SSB mitigation */
+#define TIF_TAGGED_ADDR                (TIF__ARCH+12)  /* Allow tagged user 
addresses */
 
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
 #define _TIF_FOREIGN_FPSTATE   (1 << TIF_FOREIGN_FPSTATE)
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 #define _TIF_SYSCALL_EMU       (1 << TIF_SYSCALL_EMU)
-#define _TIF_UPROBE            (1 << TIF_UPROBE)
 #define _TIF_FSCHECK           (1 << TIF_FSCHECK)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_32BIT             (1 << TIF_32BIT)
--- x/arch/csky/include/asm/thread_info.h
+++ x/arch/csky/include/asm/thread_info.h
@@ -57,29 +57,17 @@
 
 #endif /* !__ASSEMBLY__ */
 
-#define TIF_SIGPENDING         0       /* signal pending */
-#define TIF_NOTIFY_RESUME      1       /* callback before returning to user */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_UPROBE             3       /* uprobe breakpoint or singlestep */
-#define TIF_SYSCALL_TRACE      4       /* syscall trace active */
-#define TIF_SYSCALL_TRACEPOINT 5       /* syscall tracepoint instrumentation */
-#define TIF_SYSCALL_AUDIT      6       /* syscall auditing */
-#define TIF_POLLING_NRFLAG     16      /* poll_idle() is TIF_NEED_RESCHED */
-#define TIF_MEMDIE             18      /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    20      /* restore signal mask in do_signal() */
-#define TIF_SECCOMP            21      /* secure computing */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+0)       /* syscall tracepoint 
instrumentation */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+1)   /* syscall auditing */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+2)   /* poll_idle() is 
TIF_NEED_RESCHED */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+3)   /* restore signal mask in 
do_signal() */
 
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_UPROBE            (1 << TIF_UPROBE)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
-#define _TIF_MEMDIE            (1 << TIF_MEMDIE)
 #define _TIF_RESTORE_SIGMASK   (1 << TIF_RESTORE_SIGMASK)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 
 #define _TIF_WORK_MASK         (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
                                 _TIF_NOTIFY_RESUME | _TIF_UPROBE)
--- x/arch/h8300/include/asm/thread_info.h
+++ x/arch/h8300/include/asm/thread_info.h
@@ -63,22 +63,15 @@
 /*
  * thread information flag bit numbers
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_SINGLESTEP         3       /* singlestepping active */
-#define TIF_MEMDIE             4       /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    5       /* restore signal mask in do_signal() */
-#define TIF_NOTIFY_RESUME      6       /* callback before returning to user */
-#define TIF_SYSCALL_AUDIT      7       /* syscall auditing active */
-#define TIF_SYSCALL_TRACEPOINT 8       /* for ftrace syscall instrumentation */
-#define TIF_POLLING_NRFLAG     9       /* true if poll_idle() is polling 
TIF_NEED_RESCHED */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)   /* singlestepping active */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+1)   /* restore signal mask in 
do_signal() */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+2)   /* syscall auditing active */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+3)   /* for ftrace syscall 
instrumentation */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+4)   /* true if poll_idle() is 
polling TIF_NEED_RESCHED */
 
 /* as above, but as bit values */
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
--- x/arch/hexagon/include/asm/thread_info.h
+++ x/arch/hexagon/include/asm/thread_info.h
@@ -89,19 +89,12 @@
  * - other flags in MSW
  */
 
-#define TIF_SYSCALL_TRACE       0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME       1       /* resumption notification requested */
-#define TIF_SIGPENDING          2       /* signal pending */
-#define TIF_NEED_RESCHED        3       /* rescheduling necessary */
-#define TIF_SINGLESTEP          4       /* restore ss @ return to usr mode */
-#define TIF_RESTORE_SIGMASK     6       /* restore sig mask in do_signal() */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP          (TIF__ARCH+0)       /* restore ss @ return to 
usr mode */
+#define TIF_RESTORE_SIGMASK     (TIF__ARCH+1)       /* restore sig mask in 
do_signal() */
 /* true if poll_idle() is polling TIF_NEED_RESCHED */
-#define TIF_MEMDIE              17      /* OOM killer killed process */
 
-#define _TIF_SYSCALL_TRACE      (1 << TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME      (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING         (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED       (1 << TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP         (1 << TIF_SINGLESTEP)
 
 /* work to do on interrupt/exception return - All but TIF_SYSCALL_TRACE */
--- x/arch/ia64/include/asm/thread_info.h
+++ x/arch/ia64/include/asm/thread_info.h
@@ -98,25 +98,18 @@
  * - pending work-to-be-done flags are in least-significant 16 bits, other 
flags
  *   in top 16 bits
  */
-#define TIF_SIGPENDING         0       /* signal pending */
-#define TIF_NEED_RESCHED       1       /* rescheduling necessary */
-#define TIF_SYSCALL_TRACE      2       /* syscall trace active */
-#define TIF_SYSCALL_AUDIT      3       /* syscall auditing active */
-#define TIF_SINGLESTEP         4       /* restore singlestep on return to user 
mode */
-#define TIF_NOTIFY_RESUME      6       /* resumption notification requested */
-#define TIF_MEMDIE             17      /* is terminating due to OOM killer */
-#define TIF_MCA_INIT           18      /* this task is processing MCA or INIT 
*/
-#define TIF_DB_DISABLED                19      /* debug trap disabled for 
fsyscall */
-#define TIF_RESTORE_RSE                21      /* user RBS is newer than 
kernel RBS */
-#define TIF_POLLING_NRFLAG     22      /* idle is polling for TIF_NEED_RESCHED 
*/
+#include <asm-generic/thread_info.h>
+
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+0)   /* syscall auditing active */
+#define TIF_SINGLESTEP         (TIF__ARCH+1)   /* restore singlestep on return 
to user mode */
+#define TIF_MCA_INIT           (TIF__ARCH+2)   /* this task is processing MCA 
or INIT */
+#define TIF_DB_DISABLED                (TIF__ARCH+3)   /* debug trap disabled 
for fsyscall */
+#define TIF_RESTORE_RSE                (TIF__ARCH+4)   /* user RBS is newer 
than kernel RBS */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+5)   /* idle is polling for 
TIF_NEED_RESCHED */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_SYSCALL_TRACEAUDIT        
(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_MCA_INIT          (1 << TIF_MCA_INIT)
 #define _TIF_DB_DISABLED       (1 << TIF_DB_DISABLED)
 #define _TIF_RESTORE_RSE       (1 << TIF_RESTORE_RSE)
--- x/arch/m68k/include/asm/thread_info.h
+++ x/arch/m68k/include/asm/thread_info.h
@@ -60,12 +60,9 @@
  * bits 0-7 are tested at every exception exit
  * bits 8-15 are also tested at syscall exit
  */
-#define TIF_NOTIFY_RESUME      5       /* callback before returning to user */
-#define TIF_SIGPENDING         6       /* signal pending */
-#define TIF_NEED_RESCHED       7       /* rescheduling necessary */
-#define TIF_DELAYED_TRACE      14      /* single step a syscall */
-#define TIF_SYSCALL_TRACE      15      /* syscall trace active */
-#define TIF_MEMDIE             16      /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    18      /* restore signal mask in do_signal */
+#include <asm-generic/thread_info.h>
+
+#define TIF_DELAYED_TRACE      (TIF__ARCH+0)   /* single step a syscall */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+1)   /* restore signal mask in 
do_signal */
 
 #endif /* _ASM_M68K_THREAD_INFO_H */
--- x/arch/microblaze/include/asm/thread_info.h
+++ x/arch/microblaze/include/asm/thread_info.h
@@ -101,27 +101,18 @@
  * - pending work-to-be-done flags are in LSW
  * - other flags in MSW
  */
-#define TIF_SYSCALL_TRACE      0 /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1 /* resumption notification requested */
-#define TIF_SIGPENDING         2 /* signal pending */
-#define TIF_NEED_RESCHED       3 /* rescheduling necessary */
 /* restore singlestep on return to user mode */
-#define TIF_SINGLESTEP         4
-#define TIF_MEMDIE             6       /* is terminating due to OOM killer */
-#define TIF_SYSCALL_AUDIT      9       /* syscall auditing active */
-#define TIF_SECCOMP            10      /* secure computing */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+1)       /* syscall auditing active 
*/
 
 /* true if poll_idle() is polling TIF_NEED_RESCHED */
-#define TIF_POLLING_NRFLAG     16
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+2)
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 
 /* work to do in syscall trace */
 #define _TIF_WORK_SYSCALL_MASK  (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \
--- x/arch/mips/include/asm/thread_info.h
+++ x/arch/mips/include/asm/thread_info.h
@@ -109,36 +109,25 @@
  * - pending work-to-be-done flags are in LSW
  * - other flags in MSW
  */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_SYSCALL_AUDIT      3       /* syscall auditing active */
-#define TIF_SECCOMP            4       /* secure computing */
-#define TIF_NOTIFY_RESUME      5       /* callback before returning to user */
-#define TIF_UPROBE             6       /* breakpointed or singlestepping */
-#define TIF_RESTORE_SIGMASK    9       /* restore signal mask in do_signal() */
-#define TIF_USEDFPU            16      /* FPU was used by this task this 
quantum (SMP) */
-#define TIF_MEMDIE             18      /* is terminating due to OOM killer */
-#define TIF_NOHZ               19      /* in adaptive nohz mode */
-#define TIF_FIXADE             20      /* Fix address errors in software */
-#define TIF_LOGADE             21      /* Log address errors to syslog */
-#define TIF_32BIT_REGS         22      /* 32-bit general purpose registers */
-#define TIF_32BIT_ADDR         23      /* 32-bit address space (o32/n32) */
-#define TIF_FPUBOUND           24      /* thread bound to FPU-full CPU set */
-#define TIF_LOAD_WATCH         25      /* If set, load watch registers */
-#define TIF_SYSCALL_TRACEPOINT 26      /* syscall tracepoint instrumentation */
-#define TIF_32BIT_FPREGS       27      /* 32-bit floating point registers */
-#define TIF_HYBRID_FPREGS      28      /* 64b FP registers, odd singles in 
bits 63:32 of even doubles */
-#define TIF_USEDMSA            29      /* MSA has been used this quantum */
-#define TIF_MSA_CTX_LIVE       30      /* MSA context must be preserved */
-#define TIF_SYSCALL_TRACE      31      /* syscall trace active */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+0)   /* syscall auditing active */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+1)   /* restore signal mask in 
do_signal() */
+#define TIF_USEDFPU            (TIF__ARCH+2)   /* FPU was used by this task 
this quantum (SMP) */
+#define TIF_NOHZ               (TIF__ARCH+3)   /* in adaptive nohz mode */
+#define TIF_FIXADE             (TIF__ARCH+4)   /* Fix address errors in 
software */
+#define TIF_LOGADE             (TIF__ARCH+5)   /* Log address errors to syslog 
*/
+#define TIF_32BIT_REGS         (TIF__ARCH+6)   /* 32-bit general purpose 
registers */
+#define TIF_32BIT_ADDR         (TIF__ARCH+7)   /* 32-bit address space 
(o32/n32) */
+#define TIF_FPUBOUND           (TIF__ARCH+8)   /* thread bound to FPU-full CPU 
set */
+#define TIF_LOAD_WATCH         (TIF__ARCH+9)   /* If set, load watch registers 
*/
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+10)  /* syscall tracepoint 
instrumentation */
+#define TIF_32BIT_FPREGS       (TIF__ARCH+11)  /* 32-bit floating point 
registers */
+#define TIF_HYBRID_FPREGS      (TIF__ARCH+12)  /* 64b FP registers, odd 
singles in bits 63:32 of even doubles */
+#define TIF_USEDMSA            (TIF__ARCH+13)  /* MSA has been used this 
quantum */
+#define TIF_MSA_CTX_LIVE       (TIF__ARCH+14)  /* MSA context must be 
preserved */
 
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
 #define _TIF_SYSCALL_AUDIT     (1<<TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1<<TIF_SECCOMP)
-#define _TIF_NOTIFY_RESUME     (1<<TIF_NOTIFY_RESUME)
-#define _TIF_UPROBE            (1<<TIF_UPROBE)
 #define _TIF_USEDFPU           (1<<TIF_USEDFPU)
 #define _TIF_NOHZ              (1<<TIF_NOHZ)
 #define _TIF_FIXADE            (1<<TIF_FIXADE)
--- x/arch/nds32/include/asm/thread_info.h
+++ x/arch/nds32/include/asm/thread_info.h
@@ -44,21 +44,14 @@
  *  TIF_NOTIFY_RESUME  - callback before returning to user
  *  TIF_POLLING_NRFLAG - true if poll_idle() is polling TIF_NEED_RESCHED
  */
-#define TIF_SIGPENDING         1
-#define TIF_NEED_RESCHED       2
-#define TIF_SINGLESTEP         3
-#define TIF_NOTIFY_RESUME      4       /* callback before returning to user */
-#define TIF_SYSCALL_TRACE      8
-#define TIF_POLLING_NRFLAG     17
-#define TIF_MEMDIE             18
-#define TIF_FREEZE             19
-#define TIF_RESTORE_SIGMASK    20
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+1)
+#define TIF_FREEZE             (TIF__ARCH+2)
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+3)
 
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
 #define _TIF_FREEZE            (1 << TIF_FREEZE)
 #define _TIF_RESTORE_SIGMASK   (1 << TIF_RESTORE_SIGMASK)
--- x/arch/nios2/include/asm/thread_info.h
+++ x/arch/nios2/include/asm/thread_info.h
@@ -79,23 +79,14 @@
  * - pending work-to-be-done flags are in LSW
  * - other flags in MSW
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1       /* resumption notification requested */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_MEMDIE             4       /* is terminating due to OOM killer */
-#define TIF_SECCOMP            5       /* secure computing */
-#define TIF_SYSCALL_AUDIT      6       /* syscall auditing active */
-#define TIF_RESTORE_SIGMASK    9       /* restore signal mask in do_signal() */
+#include <asm-generic/thread_info.h>
 
-#define TIF_POLLING_NRFLAG     16      /* true if poll_idle() is polling
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+0)   /* syscall auditing active */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+1)   /* restore signal mask in 
do_signal() */
+
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+2)   /* true if poll_idle() is 
polling
                                           TIF_NEED_RESCHED */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
 #define _TIF_RESTORE_SIGMASK   (1 << TIF_RESTORE_SIGMASK)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
--- x/arch/openrisc/include/asm/thread_info.h
+++ x/arch/openrisc/include/asm/thread_info.h
@@ -91,23 +91,16 @@
  *   - pending work-to-be-done flags are in LSW
  *   - other flags in MSW
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1       /* resumption notification requested */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_SINGLESTEP         4       /* restore singlestep on return to user
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)   /* restore singlestep on return 
to user
                                         * mode
                                         */
-#define TIF_SYSCALL_TRACEPOINT  8       /* for ftrace syscall instrumentation 
*/
-#define TIF_RESTORE_SIGMASK     9
-#define TIF_POLLING_NRFLAG     16      /* true if poll_idle() is polling       
                                         * TIF_NEED_RESCHED
+#define TIF_SYSCALL_TRACEPOINT  (TIF__ARCH+1)       /* for ftrace syscall 
instrumentation */
+#define TIF_RESTORE_SIGMASK     (TIF__ARCH+2)
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+3)   /* true if poll_idle() is 
polling                                                * TIF_NEED_RESCHED
                                         */
-#define TIF_MEMDIE              17
 
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1<<TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP                (1<<TIF_SINGLESTEP)
 #define _TIF_POLLING_NRFLAG    (1<<TIF_POLLING_NRFLAG)
 
--- x/arch/parisc/include/asm/thread_info.h
+++ x/arch/parisc/include/asm/thread_info.h
@@ -46,29 +46,20 @@
 /*
  * thread information flags
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_POLLING_NRFLAG     3       /* true if poll_idle() is polling 
TIF_NEED_RESCHED */
-#define TIF_32BIT               4       /* 32 bit binary */
-#define TIF_MEMDIE             5       /* is terminating due to OOM killer */
-#define TIF_SYSCALL_AUDIT      7       /* syscall auditing active */
-#define TIF_NOTIFY_RESUME      8       /* callback before returning to user */
-#define TIF_SINGLESTEP         9       /* single stepping? */
-#define TIF_BLOCKSTEP          10      /* branch stepping? */
-#define TIF_SECCOMP            11      /* secure computing */
-#define TIF_SYSCALL_TRACEPOINT 12      /* syscall tracepoint instrumentation */
+#include <asm-generic/thread_info.h>
+
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+0)   /* true if poll_idle() is 
polling TIF_NEED_RESCHED */
+#define TIF_32BIT               (TIF__ARCH+1)       /* 32 bit binary */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+2)   /* syscall auditing active */
+#define TIF_SINGLESTEP         (TIF__ARCH+3)   /* single stepping? */
+#define TIF_BLOCKSTEP          (TIF__ARCH+4)   /* branch stepping? */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+5)   /* syscall tracepoint 
instrumentation */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
 #define _TIF_32BIT             (1 << TIF_32BIT)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_BLOCKSTEP         (1 << TIF_BLOCKSTEP)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
 
 #define _TIF_USER_WORK_MASK     (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | \
--- x/arch/powerpc/include/asm/thread_info.h
+++ x/arch/powerpc/include/asm/thread_info.h
@@ -87,46 +87,35 @@
 /*
  * thread information flag bit numbers
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_FSCHECK            3       /* Check FS is USER_DS on return */
-#define TIF_SYSCALL_EMU                4       /* syscall emulation active */
-#define TIF_RESTORE_TM         5       /* need to restore TM FP/VEC/VSX */
-#define TIF_PATCH_PENDING      6       /* pending live patching update */
-#define TIF_SYSCALL_AUDIT      7       /* syscall auditing active */
-#define TIF_SINGLESTEP         8       /* singlestepping active */
-#define TIF_NOHZ               9       /* in adaptive nohz mode */
-#define TIF_SECCOMP            10      /* secure computing */
-#define TIF_RESTOREALL         11      /* Restore all regs (implies NOERROR) */
-#define TIF_NOERROR            12      /* Force successful syscall return */
-#define TIF_NOTIFY_RESUME      13      /* callback before returning to user */
-#define TIF_UPROBE             14      /* breakpointed or single-stepping */
-#define TIF_SYSCALL_TRACEPOINT 15      /* syscall tracepoint instrumentation */
-#define TIF_EMULATE_STACK_STORE        16      /* Is an instruction emulation
+#include <asm-generic/thread_info.h>
+
+#define TIF_FSCHECK            (TIF__ARCH+0)   /* Check FS is USER_DS on 
return */
+#define TIF_SYSCALL_EMU                (TIF__ARCH+1)   /* syscall emulation 
active */
+#define TIF_RESTORE_TM         (TIF__ARCH+2)   /* need to restore TM 
FP/VEC/VSX */
+#define TIF_PATCH_PENDING      (TIF__ARCH+3)   /* pending live patching update 
*/
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+4)   /* syscall auditing active */
+#define TIF_SINGLESTEP         (TIF__ARCH+5)   /* singlestepping active */
+#define TIF_NOHZ               (TIF__ARCH+6)   /* in adaptive nohz mode */
+#define TIF_RESTOREALL         (TIF__ARCH+7)   /* Restore all regs (implies 
NOERROR) */
+#define TIF_NOERROR            (TIF__ARCH+8)   /* Force successful syscall 
return */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+9)   /* syscall tracepoint 
instrumentation */
+#define TIF_EMULATE_STACK_STORE        (TIF__ARCH+10)  /* Is an instruction 
emulation
                                                for stack store? */
-#define TIF_MEMDIE             17      /* is terminating due to OOM killer */
 #if defined(CONFIG_PPC64)
-#define TIF_ELF2ABI            18      /* function descriptors must die! */
+#define TIF_ELF2ABI            (TIF__ARCH+11)  /* function descriptors must 
die! */
 #endif
-#define TIF_POLLING_NRFLAG     19      /* true if poll_idle() is polling 
TIF_NEED_RESCHED */
-#define TIF_32BIT              20      /* 32 bit binary */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+12)  /* true if poll_idle() is 
polling TIF_NEED_RESCHED */
+#define TIF_32BIT              (TIF__ARCH+13)  /* 32 bit binary */
 
 /* as above, but as bit values */
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
 #define _TIF_POLLING_NRFLAG    (1<<TIF_POLLING_NRFLAG)
 #define _TIF_32BIT             (1<<TIF_32BIT)
 #define _TIF_RESTORE_TM                (1<<TIF_RESTORE_TM)
 #define _TIF_PATCH_PENDING     (1<<TIF_PATCH_PENDING)
 #define _TIF_SYSCALL_AUDIT     (1<<TIF_SYSCALL_AUDIT)
 #define _TIF_SINGLESTEP                (1<<TIF_SINGLESTEP)
-#define _TIF_SECCOMP           (1<<TIF_SECCOMP)
 #define _TIF_RESTOREALL                (1<<TIF_RESTOREALL)
 #define _TIF_NOERROR           (1<<TIF_NOERROR)
-#define _TIF_NOTIFY_RESUME     (1<<TIF_NOTIFY_RESUME)
-#define _TIF_UPROBE            (1<<TIF_UPROBE)
 #define _TIF_SYSCALL_TRACEPOINT        (1<<TIF_SYSCALL_TRACEPOINT)
 #define _TIF_EMULATE_STACK_STORE       (1<<TIF_EMULATE_STACK_STORE)
 #define _TIF_NOHZ              (1<<TIF_NOHZ)
--- x/arch/riscv/include/asm/thread_info.h
+++ x/arch/riscv/include/asm/thread_info.h
@@ -71,23 +71,14 @@
  * - pending work-to-be-done flags are in lowest half-word
  * - other flags in upper half-word(s)
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1       /* callback before returning to user */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_RESTORE_SIGMASK    4       /* restore signal mask in do_signal() */
-#define TIF_MEMDIE             5       /* is terminating due to OOM killer */
-#define TIF_SYSCALL_TRACEPOINT  6       /* syscall tracepoint instrumentation 
*/
-#define TIF_SYSCALL_AUDIT      7       /* syscall auditing */
-#define TIF_SECCOMP            8       /* syscall secure computing */
+#include <asm-generic/thread_info.h>
+
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+0)   /* restore signal mask in 
do_signal() */
+#define TIF_SYSCALL_TRACEPOINT  (TIF__ARCH+1)       /* syscall tracepoint 
instrumentation */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+2)   /* syscall auditing */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 
 #define _TIF_WORK_MASK \
        (_TIF_NOTIFY_RESUME | _TIF_SIGPENDING | _TIF_NEED_RESCHED)
--- x/arch/s390/include/asm/thread_info.h
+++ x/arch/s390/include/asm/thread_info.h
@@ -58,33 +58,24 @@
  * thread information flags bit numbers
  */
 /* _TIF_WORK bits */
-#define TIF_NOTIFY_RESUME      0       /* callback before returning to user */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_UPROBE             3       /* breakpointed or single-stepping */
-#define TIF_GUARDED_STORAGE    4       /* load guarded storage control block */
-#define TIF_PATCH_PENDING      5       /* pending live patching update */
-#define TIF_PGSTE              6       /* New mm's will use 4K page tables */
-#define TIF_ISOLATE_BP         8       /* Run process with isolated BP */
-#define TIF_ISOLATE_BP_GUEST   9       /* Run KVM guests with isolated BP */
-
-#define TIF_31BIT              16      /* 32bit process */
-#define TIF_MEMDIE             17      /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    18      /* restore signal mask in do_signal() */
-#define TIF_SINGLE_STEP                19      /* This task is single stepped 
*/
-#define TIF_BLOCK_STEP         20      /* This task is block stepped */
-#define TIF_UPROBE_SINGLESTEP  21      /* This task is uprobe single stepped */
+#include <asm-generic/thread_info.h>
+
+#define TIF_GUARDED_STORAGE    (TIF__ARCH+0)   /* load guarded storage control 
block */
+#define TIF_PATCH_PENDING      (TIF__ARCH+1)   /* pending live patching update 
*/
+#define TIF_PGSTE              (TIF__ARCH+2)   /* New mm's will use 4K page 
tables */
+#define TIF_ISOLATE_BP         (TIF__ARCH+3)   /* Run process with isolated BP 
*/
+#define TIF_ISOLATE_BP_GUEST   (TIF__ARCH+4)   /* Run KVM guests with isolated 
BP */
+
+#define TIF_31BIT              (TIF__ARCH+5)   /* 32bit process */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+6)   /* restore signal mask in 
do_signal() */
+#define TIF_SINGLE_STEP                (TIF__ARCH+7)   /* This task is single 
stepped */
+#define TIF_BLOCK_STEP         (TIF__ARCH+8)   /* This task is block stepped */
+#define TIF_UPROBE_SINGLESTEP  (TIF__ARCH+9)   /* This task is uprobe single 
stepped */
 
 /* _TIF_TRACE bits */
-#define TIF_SYSCALL_TRACE      24      /* syscall trace active */
-#define TIF_SYSCALL_AUDIT      25      /* syscall auditing active */
-#define TIF_SECCOMP            26      /* secure computing */
-#define TIF_SYSCALL_TRACEPOINT 27      /* syscall tracepoint instrumentation */
-
-#define _TIF_NOTIFY_RESUME     BIT(TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                BIT(TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      BIT(TIF_NEED_RESCHED)
-#define _TIF_UPROBE            BIT(TIF_UPROBE)
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+10)  /* syscall auditing active */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+11)  /* syscall tracepoint 
instrumentation */
+
 #define _TIF_GUARDED_STORAGE   BIT(TIF_GUARDED_STORAGE)
 #define _TIF_PATCH_PENDING     BIT(TIF_PATCH_PENDING)
 #define _TIF_ISOLATE_BP                BIT(TIF_ISOLATE_BP)
@@ -93,9 +84,7 @@
 #define _TIF_31BIT             BIT(TIF_31BIT)
 #define _TIF_SINGLE_STEP       BIT(TIF_SINGLE_STEP)
 
-#define _TIF_SYSCALL_TRACE     BIT(TIF_SYSCALL_TRACE)
 #define _TIF_SYSCALL_AUDIT     BIT(TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           BIT(TIF_SECCOMP)
 #define _TIF_SYSCALL_TRACEPOINT        BIT(TIF_SYSCALL_TRACEPOINT)
 
 #endif /* _ASM_THREAD_INFO_H */
--- x/arch/sh/include/asm/thread_info.h
+++ x/arch/sh/include/asm/thread_info.h
@@ -102,24 +102,15 @@
  *   we blow the tst immediate size constraints and need to fix up
  *   arch/sh/kernel/entry-common.S.
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_SINGLESTEP         4       /* singlestepping active */
-#define TIF_SYSCALL_AUDIT      5       /* syscall auditing active */
-#define TIF_SECCOMP            6       /* secure computing */
-#define TIF_NOTIFY_RESUME      7       /* callback before returning to user */
-#define TIF_SYSCALL_TRACEPOINT 8       /* for ftrace syscall instrumentation */
-#define TIF_POLLING_NRFLAG     17      /* true if poll_idle() is polling 
TIF_NEED_RESCHED */
-#define TIF_MEMDIE             18      /* is terminating due to OOM killer */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)   /* singlestepping active */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+1)   /* syscall auditing active */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+2)   /* for ftrace syscall 
instrumentation */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+3)   /* true if poll_idle() is 
polling TIF_NEED_RESCHED */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
 #define _TIF_SYSCALL_TRACEPOINT        (1 << TIF_SYSCALL_TRACEPOINT)
 #define _TIF_POLLING_NRFLAG    (1 << TIF_POLLING_NRFLAG)
 
--- x/arch/um/include/asm/thread_info.h
+++ x/arch/um/include/asm/thread_info.h
@@ -54,21 +54,12 @@
 
 #endif
 
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_RESTART_BLOCK      4
-#define TIF_MEMDIE             5       /* is terminating due to OOM killer */
-#define TIF_SYSCALL_AUDIT      6
-#define TIF_RESTORE_SIGMASK    7
-#define TIF_NOTIFY_RESUME      8
-#define TIF_SECCOMP            9       /* secure computing */
+#include <asm-generic/thread_info.h>
+
+#define TIF_RESTART_BLOCK      (TIF__ARCH+0)
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+1)
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+2)
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
-#define _TIF_MEMDIE            (1 << TIF_MEMDIE)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 
 #endif
--- x/arch/x86/include/asm/thread_info.h
+++ x/arch/x86/include/asm/thread_info.h
@@ -74,49 +74,38 @@
  * - these are process state flags that various assembly files
  *   may need to access
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_NOTIFY_RESUME      1       /* callback before returning to user */
-#define TIF_SIGPENDING         2       /* signal pending */
-#define TIF_NEED_RESCHED       3       /* rescheduling necessary */
-#define TIF_SINGLESTEP         4       /* reenable singlestep on user return*/
-#define TIF_SSBD               5       /* Speculative store bypass disable */
-#define TIF_SYSCALL_EMU                6       /* syscall emulation active */
-#define TIF_SYSCALL_AUDIT      7       /* syscall auditing active */
-#define TIF_SECCOMP            8       /* secure computing */
-#define TIF_SPEC_IB            9       /* Indirect branch speculation 
mitigation */
-#define TIF_SPEC_FORCE_UPDATE  10      /* Force speculation MSR update in 
context switch */
-#define TIF_USER_RETURN_NOTIFY 11      /* notify kernel of userspace return */
-#define TIF_UPROBE             12      /* breakpointed or singlestepping */
-#define TIF_PATCH_PENDING      13      /* pending live patching update */
-#define TIF_NEED_FPU_LOAD      14      /* load FPU on return to userspace */
-#define TIF_NOCPUID            15      /* CPUID is not accessible in userland 
*/
-#define TIF_NOTSC              16      /* TSC is not accessible in userland */
-#define TIF_IA32               17      /* IA32 compatibility process */
-#define TIF_SLD                        18      /* Restore split lock detection 
on context switch */
-#define TIF_MEMDIE             20      /* is terminating due to OOM killer */
-#define TIF_POLLING_NRFLAG     21      /* idle is polling for TIF_NEED_RESCHED 
*/
-#define TIF_IO_BITMAP          22      /* uses I/O bitmap */
-#define TIF_FORCED_TF          24      /* true if TF in eflags artificially */
-#define TIF_BLOCKSTEP          25      /* set when we want DEBUGCTLMSR_BTF */
-#define TIF_LAZY_MMU_UPDATES   27      /* task is updating the mmu lazily */
-#define TIF_SYSCALL_TRACEPOINT 28      /* syscall tracepoint instrumentation */
-#define TIF_ADDR32             29      /* 32-bit address space on 64 bits */
-#define TIF_X32                        30      /* 32-bit native x86-64 binary 
*/
-#define TIF_FSCHECK            31      /* Check FS is USER_DS on return */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)   /* reenable singlestep on user 
return*/
+#define TIF_SSBD               (TIF__ARCH+1)   /* Speculative store bypass 
disable */
+#define TIF_SYSCALL_EMU                (TIF__ARCH+2)   /* syscall emulation 
active */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+3)   /* syscall auditing active */
+#define TIF_SPEC_IB            (TIF__ARCH+4)   /* Indirect branch speculation 
mitigation */
+#define TIF_SPEC_FORCE_UPDATE  (TIF__ARCH+5)   /* Force speculation MSR update 
in context switch */
+#define TIF_USER_RETURN_NOTIFY (TIF__ARCH+6)   /* notify kernel of userspace 
return */
+#define TIF_PATCH_PENDING      (TIF__ARCH+7)   /* pending live patching update 
*/
+#define TIF_NEED_FPU_LOAD      (TIF__ARCH+8)   /* load FPU on return to 
userspace */
+#define TIF_NOCPUID            (TIF__ARCH+9)   /* CPUID is not accessible in 
userland */
+#define TIF_NOTSC              (TIF__ARCH+10)  /* TSC is not accessible in 
userland */
+#define TIF_IA32               (TIF__ARCH+11)  /* IA32 compatibility process */
+#define TIF_SLD                        (TIF__ARCH+12)  /* Restore split lock 
detection on context switch */
+#define TIF_POLLING_NRFLAG     (TIF__ARCH+13)  /* idle is polling for 
TIF_NEED_RESCHED */
+#define TIF_IO_BITMAP          (TIF__ARCH+14)  /* uses I/O bitmap */
+#define TIF_FORCED_TF          (TIF__ARCH+15)  /* true if TF in eflags 
artificially */
+#define TIF_BLOCKSTEP          (TIF__ARCH+16)  /* set when we want 
DEBUGCTLMSR_BTF */
+#define TIF_LAZY_MMU_UPDATES   (TIF__ARCH+17)  /* task is updating the mmu 
lazily */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+18)  /* syscall tracepoint 
instrumentation */
+#define TIF_ADDR32             (TIF__ARCH+19)  /* 32-bit address space on 64 
bits */
+#define TIF_X32                        (TIF__ARCH+20)  /* 32-bit native x86-64 
binary */
+#define TIF_FSCHECK            (TIF__ARCH+21)  /* Check FS is USER_DS on 
return */
 
-#define _TIF_SYSCALL_TRACE     (1 << TIF_SYSCALL_TRACE)
-#define _TIF_NOTIFY_RESUME     (1 << TIF_NOTIFY_RESUME)
-#define _TIF_SIGPENDING                (1 << TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1 << TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP                (1 << TIF_SINGLESTEP)
 #define _TIF_SSBD              (1 << TIF_SSBD)
 #define _TIF_SYSCALL_EMU       (1 << TIF_SYSCALL_EMU)
 #define _TIF_SYSCALL_AUDIT     (1 << TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1 << TIF_SECCOMP)
 #define _TIF_SPEC_IB           (1 << TIF_SPEC_IB)
 #define _TIF_SPEC_FORCE_UPDATE (1 << TIF_SPEC_FORCE_UPDATE)
 #define _TIF_USER_RETURN_NOTIFY        (1 << TIF_USER_RETURN_NOTIFY)
-#define _TIF_UPROBE            (1 << TIF_UPROBE)
 #define _TIF_PATCH_PENDING     (1 << TIF_PATCH_PENDING)
 #define _TIF_NEED_FPU_LOAD     (1 << TIF_NEED_FPU_LOAD)
 #define _TIF_NOCPUID           (1 << TIF_NOCPUID)
--- x/arch/xtensa/include/asm/thread_info.h
+++ x/arch/xtensa/include/asm/thread_info.h
@@ -106,25 +106,17 @@
  * thread information flags
  * - these are process state flags that various assembly files may need to 
access
  */
-#define TIF_SYSCALL_TRACE      0       /* syscall trace active */
-#define TIF_SIGPENDING         1       /* signal pending */
-#define TIF_NEED_RESCHED       2       /* rescheduling necessary */
-#define TIF_SINGLESTEP         3       /* restore singlestep on return to user 
mode */
-#define TIF_SYSCALL_TRACEPOINT 4       /* syscall tracepoint instrumentation */
-#define TIF_MEMDIE             5       /* is terminating due to OOM killer */
-#define TIF_RESTORE_SIGMASK    6       /* restore signal mask in do_signal() */
-#define TIF_NOTIFY_RESUME      7       /* callback before returning to user */
-#define TIF_DB_DISABLED                8       /* debug trap disabled for 
syscall */
-#define TIF_SYSCALL_AUDIT      9       /* syscall auditing active */
-#define TIF_SECCOMP            10      /* secure computing */
+#include <asm-generic/thread_info.h>
+
+#define TIF_SINGLESTEP         (TIF__ARCH+0)   /* restore singlestep on return 
to user mode */
+#define TIF_SYSCALL_TRACEPOINT (TIF__ARCH+1)   /* syscall tracepoint 
instrumentation */
+#define TIF_RESTORE_SIGMASK    (TIF__ARCH+2)   /* restore signal mask in 
do_signal() */
+#define TIF_DB_DISABLED                (TIF__ARCH+3)   /* debug trap disabled 
for syscall */
+#define TIF_SYSCALL_AUDIT      (TIF__ARCH+4)   /* syscall auditing active */
 
-#define _TIF_SYSCALL_TRACE     (1<<TIF_SYSCALL_TRACE)
-#define _TIF_SIGPENDING                (1<<TIF_SIGPENDING)
-#define _TIF_NEED_RESCHED      (1<<TIF_NEED_RESCHED)
 #define _TIF_SINGLESTEP                (1<<TIF_SINGLESTEP)
 #define _TIF_SYSCALL_TRACEPOINT        (1<<TIF_SYSCALL_TRACEPOINT)
 #define _TIF_SYSCALL_AUDIT     (1<<TIF_SYSCALL_AUDIT)
-#define _TIF_SECCOMP           (1<<TIF_SECCOMP)
 
 #define _TIF_WORK_MASK         (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \
                                 _TIF_SYSCALL_TRACEPOINT | \

Reply via email to