aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Black <daniel.black@au1.ibm.com>2016-07-21 10:55:48 +1000
committerNivedita Swaminathan <nivedita.swaminathan@intel.com>2016-07-21 15:12:34 -0700
commitbd8ca689fb90268dab1b35aa95d826614981d582 (patch)
tree97ee84d819a0fc87398a7cef5a7f564bd27c8a31
parent06696d4e5f2ef7ba36fa0c8c6b34f72eefcb4c05 (diff)
MSR is valid for x86_32/x86_64 only
As such we compile guard the portions of code related to msr modprobing, reads and writes. Signed-off-by: Daniel Black <daniel.black@au1.ibm.com>
-rw-r--r--src/lib.cpp8
-rw-r--r--src/main.cpp2
2 files changed, 10 insertions, 0 deletions
diff --git a/src/lib.cpp b/src/lib.cpp
index cdbd0cd..5e48f37 100644
--- a/src/lib.cpp
+++ b/src/lib.cpp
@@ -497,6 +497,7 @@ int get_user_input(char *buf, unsigned sz)
int read_msr(int cpu, uint64_t offset, uint64_t *value)
{
+#if defined(__i386__) || defined(__x86_64__)
ssize_t retval;
uint64_t msr;
int fd;
@@ -526,10 +527,14 @@ int read_msr(int cpu, uint64_t offset, uint64_t *value)
*value = msr;
return retval;
+#else
+ return -1;
+#endif
}
int write_msr(int cpu, uint64_t offset, uint64_t value)
{
+#if defined(__i386__) || defined(__x86_64__)
ssize_t retval;
int fd;
char msr_path[256];
@@ -557,6 +562,9 @@ int write_msr(int cpu, uint64_t offset, uint64_t value)
}
return retval;
+#else
+ return -1;
+#endif
}
#define UI_NOTIFY_BUFF_SZ 2048
diff --git a/src/main.cpp b/src/main.cpp
index c51a9f7..f700208 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -328,8 +328,10 @@ static void powertop_init(int auto_tune)
if (system("/sbin/modprobe cpufreq_stats > /dev/null 2>&1"))
fprintf(stderr, _("modprobe cpufreq_stats failed"));
+#if defined(__i386__) || defined(__x86_64__)
if (system("/sbin/modprobe msr > /dev/null 2>&1"))
fprintf(stderr, _("modprobe msr failed"));
+#endif
statfs("/sys/kernel/debug", &st_fs);
if (st_fs.f_type != (long) DEBUGFS_MAGIC) {