linux/include/linux/sched/stat.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef _LINUX_SCHED_STAT_H
   3#define _LINUX_SCHED_STAT_H
   4
   5#include <linux/percpu.h>
   6
   7/*
   8 * Various counters maintained by the scheduler and fork(),
   9 * exposed via /proc, sys.c or used by drivers via these APIs.
  10 *
  11 * ( Note that all these values are acquired without locking,
  12 *   so they can only be relied on in narrow circumstances. )
  13 */
  14
  15extern unsigned long total_forks;
  16extern int nr_threads;
  17DECLARE_PER_CPU(unsigned long, process_counts);
  18extern int nr_processes(void);
  19extern unsigned long nr_running(void);
  20extern bool single_task_running(void);
  21extern unsigned long nr_iowait(void);
  22extern unsigned long nr_iowait_cpu(int cpu);
  23
  24static inline int sched_info_on(void)
  25{
  26#ifdef CONFIG_SCHEDSTATS
  27        return 1;
  28#elif defined(CONFIG_TASK_DELAY_ACCT)
  29        extern int delayacct_on;
  30        return delayacct_on;
  31#else
  32        return 0;
  33#endif
  34}
  35
  36#ifdef CONFIG_SCHEDSTATS
  37void force_schedstat_enabled(void);
  38#endif
  39
  40#endif /* _LINUX_SCHED_STAT_H */
  41