summaryrefslogtreecommitdiffstats
path: root/physmap.c
diff options
context:
space:
mode:
authorStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2013-04-07 13:08:30 +0000
committerStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2013-04-07 13:08:30 +0000
commit363fd7e827e3b630f916f9d2bdda262180274789 (patch)
tree917a00cb091798c90273bf5d45bb86e4160de46a /physmap.c
parent73dc0db7258121f260eeda04f50531f3eda943ee (diff)
downloadast2050-flashrom-363fd7e827e3b630f916f9d2bdda262180274789.zip
ast2050-flashrom-363fd7e827e3b630f916f9d2bdda262180274789.tar.gz
Get rid of perror()
It prints to stderr and that's not what we want necesserily; using msg_*err gives us more control. Corresponding to flashrom svn r1668. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'physmap.c')
-rw-r--r--physmap.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/physmap.c b/physmap.c
index 5aa9874..4ebfb06 100644
--- a/physmap.c
+++ b/physmap.c
@@ -172,7 +172,7 @@ static void *sys_physmap_rw_uncached(unsigned long phys_addr, size_t len)
if (-1 == fd_mem) {
/* Open the memory device UNCACHED. Important for MMIO. */
if (-1 == (fd_mem = open(MEM_DEV, O_RDWR | O_SYNC))) {
- perror("Critical error: open(" MEM_DEV ")");
+ msg_perr("Critical error: open(" MEM_DEV "): %s\n", strerror(errno));
exit(2);
}
}
@@ -192,8 +192,7 @@ static void *sys_physmap_ro_cached(unsigned long phys_addr, size_t len)
if (-1 == fd_mem_cached) {
/* Open the memory device CACHED. */
if (-1 == (fd_mem_cached = open(MEM_DEV, O_RDWR))) {
- msg_perr("Critical error: open(" MEM_DEV "): %s",
- strerror(errno));
+ msg_perr("Critical error: open(" MEM_DEV "): %s\n", strerror(errno));
exit(2);
}
}
@@ -250,7 +249,7 @@ static void *physmap_common(const char *descr, unsigned long phys_addr,
descr = "memory";
msg_perr("Error accessing %s, 0x%lx bytes at 0x%08lx\n", descr,
(unsigned long)len, phys_addr);
- perror(MEM_DEV " mmap failed");
+ msg_perr(MEM_DEV " mmap failed: %s\n", strerror(errno));
#ifdef __linux__
if (EINVAL == errno) {
msg_perr("In Linux this error can be caused by the CONFIG_NONPROMISC_DEVMEM (<2.6.27),\n");
@@ -302,7 +301,7 @@ msr_t rdmsr(int addr)
msr_t msr = { 0xffffffff, 0xffffffff };
if (lseek(fd_msr, (off_t) addr, SEEK_SET) == -1) {
- perror("Could not lseek() to MSR");
+ msg_perr("Could not lseek() MSR: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
@@ -315,7 +314,7 @@ msr_t rdmsr(int addr)
if (errno != EIO) {
// A severe error.
- perror("Could not read() MSR");
+ msg_perr("Could not read() MSR: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
@@ -330,13 +329,13 @@ int wrmsr(int addr, msr_t msr)
buf[1] = msr.hi;
if (lseek(fd_msr, (off_t) addr, SEEK_SET) == -1) {
- perror("Could not lseek() to MSR");
+ msg_perr("Could not lseek() MSR: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
if (write(fd_msr, buf, 8) != 8 && errno != EIO) {
- perror("Could not write() MSR");
+ msg_perr("Could not write() MSR: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
@@ -362,7 +361,7 @@ int setup_cpu_msr(int cpu)
fd_msr = open(msrfilename, O_RDWR);
if (fd_msr < 0) {
- perror("Error while opening /dev/cpu/0/msr");
+ msg_perr("Error while opening %s: %s\n", msrfilename, strerror(errno));
msg_pinfo("Did you run 'modprobe msr'?\n");
return -1;
}
@@ -404,7 +403,7 @@ msr_t rdmsr(int addr)
args.msr = addr;
if (ioctl(fd_msr, CPU_RDMSR, &args) < 0) {
- perror("CPU_RDMSR");
+ msg_perr("Error while executing CPU_RDMSR ioctl: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
@@ -423,7 +422,7 @@ int wrmsr(int addr, msr_t msr)
args.data = (((uint64_t)msr.hi) << 32) | msr.lo;
if (ioctl(fd_msr, CPU_WRMSR, &args) < 0) {
- perror("CPU_WRMSR");
+ msg_perr("Error while executing CPU_WRMSR ioctl: %s\n", strerror(errno));
close(fd_msr);
exit(1);
}
@@ -445,7 +444,7 @@ int setup_cpu_msr(int cpu)
fd_msr = open(msrfilename, O_RDWR);
if (fd_msr < 0) {
- perror("Error while opening /dev/cpu0");
+ msg_perr("Error while opening %s: %s\n", msrfilename, strerror(errno));
msg_pinfo("Did you install ports/sysutils/devcpu?\n");
return -1;
}
OpenPOWER on IntegriCloud