]> granicus.if.org Git - sysstat/blobdiff - mpstat.h
Merge branch 'scop-grep-E'
[sysstat] / mpstat.h
index 9da8406e458f662580cef85fb34777cf2a62b5f7..23229dcc27eb0443d7728de533372558b3ecafc8 100644 (file)
--- a/mpstat.h
+++ b/mpstat.h
@@ -1,18 +1,22 @@
 /*
  * mpstat: per-processor statistics
- * (C) 2000-2018 by Sebastien Godard (sysstat <at> orange.fr)
+ * (C) 2000-2021 by Sebastien Godard (sysstat <at> orange.fr)
  */
 
 #ifndef _MPSTAT_H
 #define _MPSTAT_H
 
+#include "common.h"
+
 /*
  ***************************************************************************
  * mpstat's specific system files.
  ***************************************************************************
  */
 
-#define SOFTIRQS       "/proc/softirqs"
+#define SOFTIRQS       PRE "/proc/softirqs"
+#define PHYS_PACK_ID   "topology/physical_package_id"
+#define THREAD_SBL_LST "topology/thread_siblings_list"
 
 /*
  ***************************************************************************
  */
 
 /* Indicate that option -P has been used */
-#define F_P_OPTION     0x01
-/* Indicate that stats should be displayed on for online CPU ("-P ON") */
-#define F_P_ON         0x02
+#define F_OPTION_P     0x01
+/* Indicate that option -A has been used */
+#define F_OPTION_A     0x02
 /* JSON output */
 #define F_JSON_OUTPUT  0x04
 /* Indicate that option -N has been used */
-#define F_N_OPTION     0x08
+#define F_OPTION_N     0x08
+/* Display topology */
+#define F_TOPOLOGY     0x10
 
-#define USE_P_OPTION(m)                (((m) & F_P_OPTION) == F_P_OPTION)
-#define DISPLAY_ONLINE_CPU(m)  (((m) & F_P_ON) == F_P_ON)
+#define USE_OPTION_P(m)                (((m) & F_OPTION_P) == F_OPTION_P)
+#define USE_OPTION_A(m)                (((m) & F_OPTION_A) == F_OPTION_A)
 #define DISPLAY_JSON_OUTPUT(m) (((m) & F_JSON_OUTPUT) == F_JSON_OUTPUT)
-#define USE_N_OPTION(m)                (((m) & F_N_OPTION) == F_N_OPTION)
+#define USE_OPTION_N(m)                (((m) & F_OPTION_N) == F_OPTION_N)
+#define DISPLAY_TOPOLOGY(m)    (((m) & F_TOPOLOGY) == F_TOPOLOGY)
 
 #define K_SUM  "SUM"
 #define K_CPU  "CPU"
 #define K_SCPU "SCPU"
-#define K_ON   "ON"
 
 #define NR_IRQCPU_PREALLOC     3
 
@@ -84,6 +90,11 @@ struct stats_irqcpu {
        char         irq_name[MAX_IRQ_LEN];
 };
 
+struct cpu_topology {
+       int phys_package_id;
+       int logical_core_id;
+};
+
 #define STATS_IRQCPU_SIZE      (sizeof(struct stats_irqcpu))
 
 #endif