On Wed, Nov 10, 2021 at 07:36:37AM -0800, Georgi Djakov wrote: > @@ -21,7 +19,18 @@ enum psi_task_count { > * don't have to special case any state tracking for it. > */ > NR_ONCPU, > - NR_PSI_TASK_COUNTS = 4, > + NR_BLK_CGROUP_THROTTLE, > + NR_BIO, > + NR_COMPACTION, > + NR_THRASHING, > + NR_CGROUP_RECLAIM_HIGH, > + NR_CGROUP_RECLAIM_HIGH_SLEEP, > + NR_CGROUP_TRY_CHARGE, > + NR_DIRECT_COMPACTION, > + NR_DIRECT_RECLAIM, > + NR_READ_SWAPPAGE, > + NR_KSWAPD, > + NR_PSI_TASK_COUNTS = 16, > }; > > @@ -51,9 +80,20 @@ enum psi_states { > PSI_MEM_FULL, > PSI_CPU_SOME, > PSI_CPU_FULL, > + PSI_BLK_CGROUP_THROTTLE, > + PSI_BIO, > + PSI_COMPACTION, > + PSI_THRASHING, > + PSI_CGROUP_RECLAIM_HIGH, > + PSI_CGROUP_RECLAIM_HIGH_SLEEP, > + PSI_CGROUP_TRY_CHARGE, > + PSI_DIRECT_COMPACTION, > + PSI_DIRECT_RECLAIM, > + PSI_READ_SWAPPAGE, > + PSI_KSWAPD, > /* Only per-CPU, to weigh the CPU in the global average: */ > PSI_NONIDLE, > - NR_PSI_STATES = 7, > + NR_PSI_STATES = 18, > }; Have you considered what this does to psi_group_cpu's size and layout and the impact thereof on performance?