Author: stefanct
Date: Fri Sep 13 21:19:25 2013
New Revision: 1744
URL: http://flashrom.org/trac/flashrom/changeset/1744

Log:
Remove exit call from sys_physmap_*.

All callers are prepared to handle error if ERROR_PTR is returned.
The Manpage mentioning the respective return code is readapted.

Signed-off-by: Niklas Söderlund <[email protected]>
Acked-by: Stefan Tauner <[email protected]>

Modified:
   trunk/flashrom.8.tmpl
   trunk/physmap.c

Modified: trunk/flashrom.8.tmpl
==============================================================================
--- trunk/flashrom.8.tmpl       Fri Sep 13 19:21:05 2013        (r1743)
+++ trunk/flashrom.8.tmpl       Fri Sep 13 21:19:25 2013        (r1744)
@@ -857,8 +857,7 @@
 .B BUGS
 for contact info.
 .SH EXIT STATUS
-flashrom exits with 0 on success, 1 on most failures but with 2 if /dev/mem
-(/dev/xsvc on Solaris) can not be opened and with 3 if a call to mmap() fails.
+flashrom exits with 0 on success, 1 on most failures but with 3 if a call to 
mmap() fails.
 .SH REQUIREMENTS
 flashrom needs different access permissions for different programmers.
 .sp

Modified: trunk/physmap.c
==============================================================================
--- trunk/physmap.c     Fri Sep 13 19:21:05 2013        (r1743)
+++ trunk/physmap.c     Fri Sep 13 21:19:25 2013        (r1744)
@@ -165,12 +165,11 @@
                /* Open the memory device UNCACHED. Important for MMIO. */
                if (-1 == (fd_mem = open(MEM_DEV, O_RDWR | O_SYNC))) {
                        msg_perr("Critical error: open(" MEM_DEV "): %s\n", 
strerror(errno));
-                       exit(2);
+                       return ERROR_PTR;
                }
        }
 
-       virt_addr = mmap(NULL, len, PROT_WRITE | PROT_READ, MAP_SHARED,
-                        fd_mem, (off_t)phys_addr);
+       virt_addr = mmap(NULL, len, PROT_WRITE | PROT_READ, MAP_SHARED, fd_mem, 
(off_t)phys_addr);
        return MAP_FAILED == virt_addr ? ERROR_PTR : virt_addr;
 }
 
@@ -185,12 +184,11 @@
                /* Open the memory device CACHED. */
                if (-1 == (fd_mem_cached = open(MEM_DEV, O_RDWR))) {
                        msg_perr("Critical error: open(" MEM_DEV "): %s\n", 
strerror(errno));
-                       exit(2);
+                       return ERROR_PTR;
                }
        }
 
-       virt_addr = mmap(NULL, len, PROT_READ, MAP_SHARED,
-                        fd_mem_cached, (off_t)phys_addr);
+       virt_addr = mmap(NULL, len, PROT_READ, MAP_SHARED, fd_mem_cached, 
(off_t)phys_addr);
        return MAP_FAILED == virt_addr ? ERROR_PTR : virt_addr;
 }
 
@@ -200,7 +198,7 @@
                msg_pspew("Not unmapping zero size at %p\n", virt_addr);
                return;
        }
-               
+
        munmap(virt_addr, len);
 }
 #endif

_______________________________________________
flashrom mailing list
[email protected]
http://www.flashrom.org/mailman/listinfo/flashrom

Reply via email to