Instead of copying a string for a cpu name, only its pointer is
copied. Thus, no buffer is needed anymore for the cpu name.

Signed-off-by: Robert Richter <robert.rich...@amd.com>
---
 lib/pfmlib_amd64.c      |    8 +++-----
 lib/pfmlib_amd64_priv.h |   22 +++++++++++-----------
 2 files changed, 14 insertions(+), 16 deletions(-)

diff --git a/lib/pfmlib_amd64.c b/lib/pfmlib_amd64.c
index 242fbc1..d2198bd 100644
--- a/lib/pfmlib_amd64.c
+++ b/lib/pfmlib_amd64.c
@@ -75,10 +75,9 @@
 #define AMD64_SEL_BASE 0xc0010000
 #define AMD64_CTR_BASE 0xc0010004
 
-#define NAME_SIZE 32
 static struct {
        amd64_rev_t     revision;
-       char            name[NAME_SIZE];
+       char            *name;
        unsigned int    cpu_clks;
        unsigned int    ret_inst;
        int             family;
@@ -169,8 +168,7 @@ static void
 pfm_amd64_setup(amd64_rev_t revision)
 {
        amd64_pmu.revision = revision;
-       snprintf(amd64_pmu.name, NAME_SIZE, "AMD64 (%s)",
-                amd64_cpu_strs[revision]);
+       amd64_pmu.name = (char *)amd64_cpu_strs[revision];
        amd64_support.pmu_name  = amd64_pmu.name;
 
        /* K8 (default) */
@@ -277,7 +275,7 @@ pfm_amd64_init(void)
        if (forced_pmu != PFMLIB_NO_PMU)
                pfm_amd64_force();
 
-       __pfm_vbprintf("AMD family=%d model=0x%x stepping=0x%x rev=%s (%s)\n",
+       __pfm_vbprintf("AMD family=%d model=0x%x stepping=0x%x rev=%s, %s\n",
                       amd64_family,
                       amd64_model,
                       amd64_stepping,
diff --git a/lib/pfmlib_amd64_priv.h b/lib/pfmlib_amd64_priv.h
index 9f7538a..bda2dd9 100644
--- a/lib/pfmlib_amd64_priv.h
+++ b/lib/pfmlib_amd64_priv.h
@@ -75,17 +75,17 @@ static const char *amd64_rev_strs[]= {
 };
 
 static const char *amd64_cpu_strs[] = {
-       "unknown model",
-       "K7",
-       "K8 RevB",
-       "K8 RevC",
-       "K8 RevD",
-       "K8 RevE",
-       "K8 RevF",
-       "K8 RevG",
-       "Family 10h RevB, Barcelona",
-       "Family 10h RevC, Shanghai",
-       "Family 10h RevD, Istanbul",
+       "AMD64 (unknown model)",
+       "AMD64 (K7)",
+       "AMD64 (K8 RevB)",
+       "AMD64 (K8 RevC)",
+       "AMD64 (K8 RevD)",
+       "AMD64 (K8 RevE)",
+       "AMD64 (K8 RevF)",
+       "AMD64 (K8 RevG)",
+       "AMD64 (Family 10h RevB, Barcelona)",
+       "AMD64 (Family 10h RevC, Shanghai)",
+       "AMD64 (Family 10h RevD, Istanbul)",
 };
 
 /* 
-- 
1.6.1.2



------------------------------------------------------------------------------
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to