reverse_lookup = { 0x00000001: "PF_VCPU", # I'm a virtual CPU 0x00000002: "PF_IDLE", # I am an IDLE thread 0x00000004: "PF_EXITING", # Getting shut down 0x00000008: "PF_POSTCOREDUMP", # Coredumps should ignore this task 0x00000010: "PF_IO_WORKER", # Task is an IO worker 0x00000020: "PF_WQ_WORKER", # I'm a workqueue worker 0x00000040: "PF_FORKNOEXEC", # Forked but didn't exec 0x00000080: "PF_MCE_PROCESS", # Process policy on mce errors 0x00000100: "PF_SUPERPRIV", # Used super-user privileges 0x00000200: "PF_DUMPCORE", # Dumped core 0x00000400: "PF_SIGNALED", # Killed by a signal 0x00000800: "PF_MEMALLOC", # Allocating memory 0x00001000: "PF_NPROC_EXCEEDED", # set_user() noticed that RLIMIT_NPROC was exceeded 0x00002000: "PF_USED_MATH", # If unset the fpu must be initialized before use 0x00004000: "PF_USER_WORKER", # Kernel thread cloned from userspace thread 0x00008000: "PF_NOFREEZE", # This thread should not be frozen 0x00010000: "PF__HOLE__00010000", 0x00020000: "PF_KSWAPD", # I am kswapd 0x00040000: "PF_MEMALLOC_NOFS", # All allocation requests will inherit GFP_NOFS 0x00080000: "PF_MEMALLOC_NOIO", # All allocation requests will inherit GFP_NOIO 0x00100000: "PF_LOCAL_THROTTLE", # Throttle writes only against the bdi I write to, I am cleaning dirty pages from some other bdi. 0x00200000: "PF_KTHREAD", # I am a kernel thread 0x00400000: "PF_RANDOMIZE", # Randomize virtual address space 0x00800000: "PF__HOLE__00800000", 0x01000000: "PF__HOLE__01000000", 0x02000000: "PF__HOLE__02000000", 0x04000000: "PF_NO_SETAFFINITY", # Userland is not allowed to meddle with cpus_mask 0x08000000: "PF_MCE_EARLY", # Early kill for mce process policy 0x10000000: "PF_MEMALLOC_PIN", # Allocation context constrained to zones which allow long term pinning. 0x20000000: "PF__HOLE__20000000", 0x40000000: "PF__HOLE__40000000", 0x80000000: "PF_SUSPEND_TASK", # This thread called freeze_processes() and should not be frozen } def listFlags(flag): for i in reverse_lookup.keys(): if flag & i: print(reverse_lookup[i])