Modify userspace to use device names [2/3]
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 15 Sep 2015 15:17:29 +0000 (11:17 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Mon, 28 Sep 2015 19:14:00 +0000 (15:14 -0400)
This involved changing any #device from #DC to #name.

Anything outside the repo that accesses #devices, such as the Go port,
personal ifconfig scripts, etc, will need to be updated.

17 files changed:
kern/kfs/bin/m
kern/kfs/bin/ps
kern/kfs/ifconfig
tests/alarm.c
tests/cs.c
tests/srv.c
tests/trandom.c
tests/vmm/virtioconsole.c
tests/vmm/virtiopiocons.c
tests/vmm/virtiostress.c
tests/vmm/vmmcp.c
tests/vmm/vmmcpkernel.c
tests/vmm/vmresume.c
tests/vmm/vmrunkernel.c
tests/vmm/vmrunkernelmmap.c
user/benchutil/alarm.c
user/benchutil/pvcalarm.c

index ae395e3..c4226f7 100644 (file)
@@ -6,4 +6,4 @@ then
        exit
 fi
 
-echo "$@" > "#Z/mondata"
+echo "$@" > "#regress/mondata"
index ccfba8c..95209a2 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/ash
-for i in `echo '#p/*/status'`
+for i in `echo '#proc/*/status'`
 do
 cat $i
 echo
index 4097b78..1a3f574 100755 (executable)
@@ -12,10 +12,10 @@ tower3MAC=00032d196d46
 tower4MAC=00032d196db0
 tower5MAC=00032d196daa
 
-MAC=`cat '#l/ether0/addr'`
+MAC=`cat '#ether/ether0/addr'`
 
-#bind -a '#I' /net
-#bind -a '#l0' /net
+#bind -a '#ip' /net
+#bind -a '#ether.0' /net
 #cat /net/ipifc/clone
 ## bind the ether0 to it
 #echo 'bind ether /net/ether0' > /net/ipifc/0/ctl
@@ -131,18 +131,18 @@ fi
 #/boot/echo -n sys > '#c/hostowner'
 #/boot/paqfs -p -S $beetroot -m /boot -q /boot/$beetroot
 #cd /boot/$cputype/bin
-bind -b '#c' /dev
+bind -b '#cons' /dev
 #bind '#d' /fd
 #bind -c '#e' /env
-bind -b '#p' /proc
-#bind -b -c '#s' /srv
-bind -b '#s' /srv
+bind -b '#proc' /proc
+#bind -b -c '#srv' /srv
+bind -b '#srv' /srv
 
 #
 # Configure the networks.
 #
-bind -a '#I' /net
-bind -a \#l$NIC /net
+bind -a '#ip' /net
+bind -a \#ether.$NIC /net
 
 # note: dhcp is possible, just not done yet.
 #get an instance of a network stack
@@ -161,19 +161,19 @@ echo "bind loopback /dev/null " > /net/ipifc/$i/ctl
 echo "add 127.0.0.1 255.0.0.0 127.0.0.0 " > /net/ipifc/$i/ctl
 
 cs&
-if [ ! -e "#s/cs" ]
+if [ ! -e "#srv/cs" ]
 then
-       echo "cs hasn't created #s/cs yet, sleeping until it does..."
-       until [ -e "#s/cs" ]
+       echo "cs hasn't created #srv/cs yet, sleeping until it does..."
+       until [ -e "#srv/cs" ]
        do
                usleep 1000
        done
 fi
-mount -a \#s/cs /net
+mount -a \#srv/cs /net
 
 # this is noisy, so it is off by default.
 #echo debug > /net/cs
 
-bind -a \#K /prof/
+bind -a \#kprof /prof/
 
 echo "ifconfig complete"
index dae7be6..8f3300c 100644 (file)
@@ -2,7 +2,7 @@
  * Barret Rhoden <brho@cs.berkeley.edu>
  * See LICENSE for details.
  *
- * alarm: basic functionality test for the #A device */
+ * alarm: basic functionality test for the #alarm device */
 
 #include <stdlib.h>
 #include <stdio.h>
@@ -36,9 +36,9 @@ int main(int argc, char **argv)
 
        printf("Starting alarm test\n");
        /* standard 9ns stuff: clone and read it to get our path, ending up with the
-        * ctlfd and timerfd for #A/aN/{ctl,timer}.  if you plan to fork, you can
-        * open CLOEXEC. */
-       ctlfd = open("#A/clone", O_RDWR | O_CLOEXEC);
+        * ctlfd and timerfd for #alarm/aN/{ctl,timer}.  if you plan to fork, you
+        * can open CLOEXEC. */
+       ctlfd = open("#alarm/clone", O_RDWR | O_CLOEXEC);
        if (ctlfd < 0) {
                perror("Can't clone an alarm");
                exit(-1);
@@ -52,7 +52,7 @@ int main(int argc, char **argv)
                exit(-1);
        }
        buf[ret] = 0;
-       snprintf(path, sizeof(path), "#A/a%s/timer", buf);
+       snprintf(path, sizeof(path), "#alarm/a%s/timer", buf);
        /* Don't open CLOEXEC if you want to post it to srv later */
        timerfd = open(path, O_RDWR);
        if (timerfd < 0) {
@@ -102,11 +102,11 @@ int main(int argc, char **argv)
        }
        uthread_sleep(2);
        close(ctlfd);
-       /* get crazy: post the timerfd to #s, then sleep (or even try to exit), and
+       /* get crazy: post the timerfd to #srv, then sleep (or even try to exit), and
         * then echo into it remotely!  A few limitations:
         * - if the process is DYING, you won't be able to send an event to it.
         * - the process won't leave DYING til the srv file is removed. */
-       srvfd = open("#s/alarmtest", O_WRONLY | O_CREAT | O_EXCL, 0666);
+       srvfd = open("#srv/alarmtest", O_WRONLY | O_CREAT | O_EXCL, 0666);
        if (srvfd < 0) {
                perror("Failed to open srv file");
                exit(-1);
@@ -117,11 +117,11 @@ int main(int argc, char **argv)
                perror("Failed to post timerfd");
                exit(-1);
        }
-       printf("Sleeping for 10 sec, try to echo 111 > '#s/alarmtest' now!\n");
+       printf("Sleeping for 10 sec, try to echo 111 > '#srv/alarmtest' now!\n");
        uthread_sleep(10);
-       ret = unlink("#s/alarmtest");
+       ret = unlink("#srv/alarmtest");
        if (ret < 0) {
-               perror("Failed to remove timerfd from #s, proc will never be freed");
+               perror("Failed to remove timerfd from #srv, proc will never be freed");
                exit(-1);
        }
        printf("Done\n");
index 9ed50d9..e49e978 100644 (file)
@@ -236,7 +236,7 @@ procsetname(char *fmt, ...)
        va_end(arg);
        if (cmdname == NULL)
                return;
-       snprintf(buf, sizeof buf, "#p/%d/args", getpid());
+       snprintf(buf, sizeof buf, "#proc/%d/args", getpid());
        if((fd = open(buf, OWRITE)) >= 0){
                write(fd, cmdname, strlen(cmdname)+1);
                close(fd);
@@ -288,7 +288,7 @@ main(int argc, char *argv[])
        /* Make us an SCP with a 2LS */
        parlib_wants_to_be_mcp = FALSE;
 
-       snprintf(servefile, sizeof(servefile), "#s/cs%s", ext);
+       snprintf(servefile, sizeof(servefile), "#srv/cs%s", ext);
        snprintf(netndb, sizeof(netndb), "%s/ndb", mntpt);
        syscall(SYS_nunmount, (unsigned long)servefile, strlen(servefile),
                (unsigned long)mntpt, strlen(mntpt));
@@ -349,9 +349,9 @@ mountinit(char *service, char *mntpt)
        snprintf(buf, sizeof(buf), "%d", p[1]);
        if(write(f, buf, strlen(buf)) != strlen(buf))
                error(1, 0, "Write %s: %r", service);
-       /* using #s: we create a pipe and drop it into #s
+       /* using #s: we create a pipe and drop it into #srv.
         * we no longer mount. That's up to you.
-        * #s will route requests to us.
+        * #srv will route requests to us.
         */
        close(p[1]);
 
index 9876444..073f25d 100644 (file)
@@ -38,7 +38,7 @@ int main(int argc, char *argv[])
                perror("Unable to dial!");
                exit(-1);
        }
-       ret = snprintf(buf, buf_len, "#s/%s", srvname);
+       ret = snprintf(buf, buf_len, "#srv/%s", srvname);
        if (snprintf_overflow(ret, buf, buf_len)) {
                printf("srvname too long\n");
                exit(-1);
index 96a7855..ad21112 100644 (file)
@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
                printf("max amt to read is %d\n", sizeof(data));
        if (amt > sizeof(data))
                amt = sizeof(data);
-       fd = open("#c/random", 0);
+       fd = open("#cons/random", 0);
        if (fd < 0){
                perror("random");
                exit(1);
index af422bf..8f58a2a 100644 (file)
@@ -126,12 +126,12 @@ void *talk_thread(void *arg)
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        debug = argc > 1;
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
 
index 69d4dc3..b7b51ce 100644 (file)
@@ -70,11 +70,11 @@ int nr_threads = 2;
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        if (ros_syscall(SYS_setup_vmm, nr_gpcs, 0, 0, 0, 0, 0) != nr_gpcs) {
index 34b8622..c4fd434 100644 (file)
@@ -209,12 +209,12 @@ void *talk_thread(void *arg)
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        debug = argc > 1;
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
 
index 3ff0964..2c57f4b 100644 (file)
@@ -57,11 +57,11 @@ int nr_threads = 2;
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        if (ros_syscall(SYS_setup_vmm, nr_gpcs, 0, 0, 0, 0, 0) != nr_gpcs) {
index aff6126..12f79b6 100644 (file)
@@ -66,7 +66,7 @@ int nr_threads = 2;
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        /* kernel has to be in the range 16M to 64M for now. */
@@ -77,7 +77,7 @@ int main(int argc, char **argv)
        }
 
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        if (ros_syscall(SYS_setup_vmm, nr_gpcs, 0, 0, 0, 0, 0) != nr_gpcs) {
index 637f50b..f22bddc 100644 (file)
@@ -40,11 +40,11 @@ unsigned long long *p512, *p1, *p2m;
 int main(int argc, char **argv)
 {
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        static char cmd[512];
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        if (ros_syscall(SYS_setup_vmm, nr_gpcs, 0, 0, 0, 0, 0) != nr_gpcs) {
index 461ce89..d878fa8 100644 (file)
@@ -50,7 +50,7 @@ int main(int argc, char **argv)
        int vmmflags = VMM_VMCALL_PRINTF;
        uint64_t entry = 0x101000c, kerneladdress = 0x1010000;
        int nr_gpcs = 1;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        void * x;
        int kfd = -1;
        static char cmd[512];
@@ -64,7 +64,7 @@ int main(int argc, char **argv)
        memset(_kernel, 0, sizeof(_kernel));
 
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        argc--,argv++;
index 4bc9cc7..69cfcb1 100644 (file)
@@ -51,13 +51,13 @@ int main(int argc, char **argv)
        int i, amt;
        int nr_gpcs = 1;
        uint64_t entry;
-       int fd = open("#c/sysctl", O_RDWR), ret;
+       int fd = open("#cons/sysctl", O_RDWR), ret;
        int kfd = -1;
        bool smallkernel = false;
        void * x;
        static char cmd[512];
        if (fd < 0) {
-               perror("#c/sysctl");
+               perror("#cons/sysctl");
                exit(1);
        }
        argc--,argv++;
index 87d690e..c303e66 100644 (file)
@@ -3,23 +3,23 @@
  * See LICENSE for details.
  *
  * Userspace alarms.  There are lower level helpers to build your own alarms
- * from the #A device and an alarm service, based off a slimmed down version of
- * the kernel alarms.  Under the hood, the user alarm uses the #A service for
- * the root of the alarm chain.
+ * from the #alarm device and an alarm service, based off a slimmed down version
+ * of the kernel alarms.  Under the hood, the user alarm uses the #alarm service
+ * for the root of the alarm chain.
  *
  * There's only one timer chain, unlike in the kernel, for the entire process.
  * If you want one-off timers unrelated to the chain (and sent to other vcores),
- * use #A directly.
+ * use #alarm directly.
  *
  * Your handlers will run from vcore context.
  *
  * Code differences from the kernel (for future porting):
  * - init_alarm_service, run once out of init_awaiter (or wherever).
  * - set_alarm() and friends are __tc_set_alarm(), passing global_tchain.
- * - reset_tchain_interrupt() uses #A
+ * - reset_tchain_interrupt() uses #alarm
  * - removed anything related to semaphores or kthreads
  * - spinlocks -> spin_pdr_locks
- * - ev_q wrappers for converting #A events to __triggers
+ * - ev_q wrappers for converting #alarm events to __triggers
  * - printks, and other minor stuff. */
 
 #include <sys/queue.h>
@@ -55,7 +55,7 @@ int devalarm_get_fds(int *ctlfd_r, int *timerfd_r, int *alarmid_r)
                return -1;
        buf[ret] = 0;
        alarmid = atoi(buf);
-       snprintf(path, sizeof(path), "#A/a%s/timer", buf);
+       snprintf(path, sizeof(path), "#alarm/a%s/timer", buf);
        timerfd = open(path, O_RDWR | O_CLOEXEC);
        if (timerfd < 0)
                return -1;
index 59c7812..87f1f0d 100644 (file)
@@ -182,7 +182,7 @@ static void init_pvcalarm(struct pvcalarm_data *pvcalarm_data, int vcoreid)
        char path[32];
        struct event_queue *ev_q;
 
-       ctlfd = open("#A/clone", O_RDWR | O_CLOEXEC);
+       ctlfd = open("#alarm/clone", O_RDWR | O_CLOEXEC);
        if (ctlfd < 0) {
                perror("Pvcalarm: Can't clone an alarm");
                return;
@@ -197,7 +197,7 @@ static void init_pvcalarm(struct pvcalarm_data *pvcalarm_data, int vcoreid)
        }
        buf[ret] = 0;
        alarmid = atoi(buf);
-       snprintf(path, sizeof(path), "#A/a%s/timer", buf);
+       snprintf(path, sizeof(path), "#alarm/a%s/timer", buf);
        timerfd = open(path, O_RDWR | O_CLOEXEC);
        if (timerfd < 0) {
                perror("Pvcalarm: Can't open timer");
@@ -226,7 +226,7 @@ static void init_pvcalarm(struct pvcalarm_data *pvcalarm_data, int vcoreid)
 }
 
 /* TODO: implement a way to completely remove each per-vcore alarm and
- * deregister it from the #A device */
+ * deregister it from the #alarm device */
 
 /* A preamble function to run anytime we are about to do anything on behalf of
  * the pvcalarms while in vcore context.  This preamble is necessary to ensure