]> git.ipfire.org Git - thirdparty/util-linux.git/blobdiff - sys-utils/lscpu.h
lsblk: force to print PKNAME for partition
[thirdparty/util-linux.git] / sys-utils / lscpu.h
index 223961d1386f433d5c3f4ab79b76596fbdf13795..5bbdb348e043fd512b3b0d4b9293a645e25156eb 100644 (file)
@@ -48,7 +48,17 @@ enum {
 /* cache(s) description */
 struct cpu_cache {
        char            *name;
-       char            *size;
+       char            *type;
+       char            *allocation_policy;
+       char            *write_policy;
+
+       int             level;
+       uint64_t        size;
+
+       unsigned int    ways_of_associativity;
+       unsigned int    physical_line_partition;
+       unsigned int    number_of_sets;
+       unsigned int    coherency_line_size;
 
        int             nsharedmaps;
        cpu_set_t       **sharedmaps;
@@ -74,6 +84,10 @@ struct polarization_modes {
        char *readable;
 };
 
+struct cpu_vulnerability {
+       char    *name;
+       char    *text;
+};
 
 /* global description */
 struct lscpu_desc {
@@ -103,7 +117,9 @@ struct lscpu_desc {
        char    *bogomips;
        char    *flags;
        char    *mtid;          /* maximum thread id (s390) */
+       char    *addrsz;        /* address sizes */
        int     dispatching;    /* none, horizontal or vertical */
+       int     freqboost;      /* -1 if not evailable */
        int     mode;           /* rm, lm or/and tm */
 
        int             ncpuspos;       /* maximal possible CPUs */
@@ -119,6 +135,9 @@ struct lscpu_desc {
        int             necaches;       /* extra caches (s390) */
        struct cpu_cache *ecaches;
 
+       struct cpu_vulnerability *vuls; /* array of CPU vulnerabilities */
+       int                      nvuls; /* number of CPU vulnerabilities */
+
        /*
         * All maps are sequentially indexed (0..ncpuspos), the array index
         * does not have match with cpuX number as presented by kernel. You
@@ -169,6 +188,7 @@ enum {
        OUTPUT_SUMMARY  = 0,    /* default */
        OUTPUT_PARSABLE,        /* -p */
        OUTPUT_READABLE,        /* -e */
+       OUTPUT_CACHES           /* -C */
 };
 
 enum {
@@ -184,6 +204,7 @@ struct lscpu_modifier {
                        online:1,       /* print online CPUs */
                        offline:1,      /* print offline CPUs */
                        json:1,         /* JSON output format */
+                       bytes:1,        /* output sizes in bytes */
                        physical:1;     /* use physical numbers */
 };