]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Support auxilliary vector components for cache geometries.
authorPaul Clarke <pc@us.ibm.com>
Tue, 11 Apr 2017 14:19:28 +0000 (11:19 -0300)
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Tue, 11 Apr 2017 17:05:54 +0000 (14:05 -0300)
Add support to getauxval() for new types to get L1, L2, L3 cache sizes,
cache line sizes, and cache associativities.  The new types for
getauxval() were added in the stream for Linux kernel v4.11 in commit
98a5f361b8625c6f4841d6ba013bbf0e80d08147.

* elf/elf.h (AT_L1I_CACHESIZE, AT_L1I_CACHEGEOMETRY, AT_L1D_CACHESIZE,
AT_L1D_CACHEGEOMETRY, AT_L2_CACHESIZE, AT_L2_CACHEGEOMETRY,
AT_L3_CACHESIZE, AT_L3_CACHEGEOMETRY): New.  Add auxvec
identifiers from kernel arch/powerpc/include/uapi/asm/auxvec.h.

ChangeLog
elf/elf.h

index 0dd3057200cf3a69c46954c179b61544035d9e40..5df70040e3a2ac7310dd9c0ac09abb020f169459 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-04-11  Paul Clarke  <pc@us.ibm.com>
+
+       * elf/elf.h (AT_L1I_CACHESIZE, AT_L1I_CACHEGEOMETRY, AT_L1D_CACHESIZE,
+       AT_L1D_CACHEGEOMETRY, AT_L2_CACHESIZE, AT_L2_CACHEGEOMETRY,
+       AT_L3_CACHESIZE, AT_L3_CACHEGEOMETRY): New.  Add auxvec
+       identifiers from kernel arch/powerpc/include/uapi/asm/auxvec.h.
+
 2017-04-11  Florian Weimer  <fweimer@redhat.com>
            Zack Weinberg  <zackw@panix.com>
 
index 6d3b356f14dd3aac53370c26d63ab631c438c3a3..fff893d433d925bea7c6ea8251425e11feee1b8f 100644 (file)
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -1170,6 +1170,18 @@ typedef struct
 #define AT_L2_CACHESHAPE       36
 #define AT_L3_CACHESHAPE       37
 
+/* Shapes of the caches, with more room to describe them.
+   *GEOMETRY are comprised of cache line size in bytes in the bottom 16 bits
+   and the cache associativity in the next 16 bits.  */
+#define AT_L1I_CACHESIZE       40
+#define AT_L1I_CACHEGEOMETRY   41
+#define AT_L1D_CACHESIZE       42
+#define AT_L1D_CACHEGEOMETRY   43
+#define AT_L2_CACHESIZE                44
+#define AT_L2_CACHEGEOMETRY    45
+#define AT_L3_CACHESIZE                46
+#define AT_L3_CACHEGEOMETRY    47
+
 /* Note section contents.  Each entry in the note section begins with
    a header of a fixed form.  */