]> Zhao Yanbai Git Server - minix.git/commitdiff
. service tells you which device it couldn't stat
authorBen Gras <ben@minix3.org>
Fri, 23 Feb 2007 18:22:46 +0000 (18:22 +0000)
committerBen Gras <ben@minix3.org>
Fri, 23 Feb 2007 18:22:46 +0000 (18:22 +0000)
. bigger rs and ramdisk for drivers
. sanity check for pv_set macro for oversized arguments

drivers/memory/ramdisk/proto
include/minix/devio.h
servers/rs/Makefile
servers/rs/service.c

index bbe4c0bb81e557c251285447581f0c6d3252fbf7..2fd3fea7d06735d253ffa040064a813232643946 100644 (file)
@@ -1,5 +1,5 @@
 boot 
-125 400
+130 400
 d--755 0 0
        bin d--755 0 0
                at_wini ---755 0 0 at_wini
index ae8918c32d63e84854add2a7ad91e9014bce3168..e123f85219bc63f6b528db328626c8abf9e5b485 100644 (file)
@@ -24,8 +24,17 @@ typedef struct { u16_t port; u16_t value; } pvw_pair_t;
 typedef struct { u16_t port; u32_t value; } pvl_pair_t;
 
 /* Macro shorthand to set (port,value)-pair. */
-#define pv_set(pv, p, v) ((pv).port = (p), (pv).value = (v))
-#define pv_ptr_set(pv_ptr, p, v) ((pv_ptr)->port = (p), (pv_ptr)->value = (v))
+#define pv_set(pv, p, v) do {                                  \
+       u32_t _p = (p), _v = (v);                               \
+       (pv).port = _p;                                         \
+       (pv).value = _v;                                        \
+       if((pv).port != _p || (pv).value != _v) {               \
+               printf("%s:%d: actual port: %x != %x || "       \
+                       "actual value: %x != %x\n",             \
+                       __FILE__, __LINE__, (pv).port, _p, (pv).value, _v); \
+               panic(__FILE__, "pv_set(" #pv ", " #p ", " #v ")", NO_NUM); \
+       }                                                       \
+} while(0)
 
 #if 0  /* no longer in use !!! */
 /* Define a number of flags to indicate granularity we are using. */
index f644950f9d0517add373a5f463ba09af5f42f48e..94f466551e90e057c1e369eacf9716c22ebb20d0 100644 (file)
@@ -27,7 +27,7 @@ $(UTIL):      $(UTIL_OBJ)
        $(CC) -o $@ $(LDFLAGS) $(UTIL_OBJ) $(UTIL_LIBS)
 $(SERVER):     $(OBJ)
        $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS)
-       install -S 110k $@
+       install -S 120k $@
 
 # install with other servers
 install:       /bin/$(UTIL) /usr/sbin/$(SERVER)
index b2d1f48a4cb9799ad2fb070da45fcd56abe26da0..0cca657815f001f9365ccb8daecd8b4d7d10decf 100644 (file)
@@ -235,6 +235,7 @@ PRIVATE int parse_arguments(int argc, char **argv)
           }
           else if (strcmp(argv[i], ARG_DEV)==0) {
               if (stat(argv[i+1], &stat_buf) == -1) {
+                 perror(argv[i+1]);
                   print_usage(argv[ARG_NAME], "couldn't get status of device");
                   exit(errno);
               }