]> git.lizzy.rs Git - plan9front.git/commitdiff
kernel: various cleanups
authorcinap_lenrek <cinap_lenrek@felloff.net>
Mon, 20 Jan 2014 01:16:42 +0000 (02:16 +0100)
committercinap_lenrek <cinap_lenrek@felloff.net>
Mon, 20 Jan 2014 01:16:42 +0000 (02:16 +0100)
sys/src/9/alphapc/trap.c
sys/src/9/bitsy/trap.c
sys/src/9/kw/fpiarm.c
sys/src/9/mtx/trap.c
sys/src/9/omap/fpiarm.c
sys/src/9/omap4/trap.c
sys/src/9/pc/trap.c
sys/src/9/port/sysproc.c
sys/src/9/ppc/trap.c

index 0861abbcec55cf0ac1c6081238dd50d1e700e7cb..a879ab6ca59c106a87026e8d374849295561858c 100644 (file)
@@ -562,7 +562,7 @@ notify(Ureg *ur)
        sp = ur->usp & ~(BY2V-1);
        sp -= sizeof(Ureg);
 
-       if(!okaddr((ulong)up->notify, BY2WD, 0)
+       if(!okaddr((uintptr)up->notify, BY2WD, 0)
        || !okaddr(sp-ERRMAX-6*BY2WD, sizeof(Ureg)+ERRMAX-6*BY2WD, 1)) {
                qunlock(&up->debug);
                pprint("suicide: bad address or sp in notify\n");
@@ -627,7 +627,7 @@ noted(Ureg *kur, Ureg **urp, ulong arg0)
 
        oureg = (ulong)nur;
        if((oureg & (BY2V-1))
-       || !okaddr((ulong)oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
+       || !okaddr(oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted() when not notified\n");
                pexit("Suicide", 0);
index d71d96664f9401b2e41643c5e6a85d96078a6238..fd0644f6b8a52d1c81336261a1e365716f020def 100644 (file)
@@ -616,7 +616,7 @@ noted(Ureg* ureg, ulong arg0)
 
        /* sanity clause */
        oureg = (ulong)nureg;
-       if(!okaddr((ulong)oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
+       if(!okaddr(oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted when not notified\n");
                pexit("Suicide", 0);
@@ -714,7 +714,7 @@ notify(Ureg* ureg)
        sp = ureg->sp;
        sp -= sizeof(Ureg);
 
-       if(!okaddr((ulong)up->notify, 1, 0)
+       if(!okaddr((uintptr)up->notify, 1, 0)
        || !okaddr(sp-ERRMAX-4*BY2WD, sizeof(Ureg)+ERRMAX+4*BY2WD, 1)){
                qunlock(&up->debug);
                pprint("suicide: bad address in notify\n");
index 8d5a20e52ae6baee24abb780e6eb9e5aa60d26d1..8735f87ba813ef3cbef4a27d4535d09069cf4678 100644 (file)
@@ -648,7 +648,7 @@ casemu(ulong pc, ulong op, Ureg *ur)
        rn = rp[op>>0 & 0x7];
        rd = rp + (op>>12 & 0x7);
        rp = (ulong*)*rd;
-       validaddr((ulong)rp, 4, 1);
+       validaddr((uintptr)rp, 4, 1);
        splhi();
        if(*rd = (*rp == ro))
                *rp = rn;
@@ -667,7 +667,7 @@ ldrex(ulong pc, ulong op, Ureg *ur)
        rp = (ulong*)ur;
        rd = rp + (op>>16 & 0x7);
        addr = (ulong*)*rd;
-       validaddr((ulong)addr, 4, 0);
+       validaddr((uintptr)addr, 4, 0);
        ldrexvalid = 1;
        rp[op>>12 & 0x7] = *addr;
        if(fpemudebug)
@@ -686,7 +686,7 @@ strex(ulong pc, ulong op, Ureg *ur)
        rd = rp + (op>>16 & 0x7);
        rn = rp[op>>0 & 0x7];
        addr = (ulong*)*rd;
-       validaddr((ulong)addr, 4, 1);
+       validaddr((uintptr)addr, 4, 1);
        splhi();
        if(ldrexvalid){
                if(fpemudebug)
index d0a16225f3de3e043bae82e08851c616d1548b3f..022ec4903086d11eae62ce1a491a307e6d753803 100644 (file)
@@ -736,7 +736,7 @@ notify(Ureg* ur)
        sp = ur->usp & ~(BY2V-1);
        sp -= sizeof(Ureg);
 
-       if(!okaddr((ulong)up->notify, BY2WD, 0) ||
+       if(!okaddr((uintptr)up->notify, BY2WD, 0) ||
           !okaddr(sp-ERRMAX-4*BY2WD, sizeof(Ureg)+ERRMAX+4*BY2WD, 1)) {
                qunlock(&up->debug);
                pprint("suicide: bad address or sp in notify\n");
@@ -787,7 +787,7 @@ noted(Ureg* ureg, ulong arg0)
 
        /* sanity clause */
        oureg = (ulong)nureg;
-       if(!okaddr((ulong)oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
+       if(!okaddr(oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted when not notified\n");
                pexit("Suicide", 0);
index 8d5a20e52ae6baee24abb780e6eb9e5aa60d26d1..8735f87ba813ef3cbef4a27d4535d09069cf4678 100644 (file)
@@ -648,7 +648,7 @@ casemu(ulong pc, ulong op, Ureg *ur)
        rn = rp[op>>0 & 0x7];
        rd = rp + (op>>12 & 0x7);
        rp = (ulong*)*rd;
-       validaddr((ulong)rp, 4, 1);
+       validaddr((uintptr)rp, 4, 1);
        splhi();
        if(*rd = (*rp == ro))
                *rp = rn;
@@ -667,7 +667,7 @@ ldrex(ulong pc, ulong op, Ureg *ur)
        rp = (ulong*)ur;
        rd = rp + (op>>16 & 0x7);
        addr = (ulong*)*rd;
-       validaddr((ulong)addr, 4, 0);
+       validaddr((uintptr)addr, 4, 0);
        ldrexvalid = 1;
        rp[op>>12 & 0x7] = *addr;
        if(fpemudebug)
@@ -686,7 +686,7 @@ strex(ulong pc, ulong op, Ureg *ur)
        rd = rp + (op>>16 & 0x7);
        rn = rp[op>>0 & 0x7];
        addr = (ulong*)*rd;
-       validaddr((ulong)addr, 4, 1);
+       validaddr((uintptr)addr, 4, 1);
        splhi();
        if(ldrexvalid){
                if(fpemudebug)
index 14e4ee0ad4705abdaed298e1a4bb28b64e2cfacf..26de7ac8dec06e7940c2e1c5e797354ebd034b00 100644 (file)
@@ -170,7 +170,7 @@ notify(Ureg *ureg)
        }
        sp = ureg->sp;
        sp -= 256 + sizeof(Ureg);
-       if(!okaddr((ulong)up->notify, 1, 0)
+       if(!okaddr((uintptr)up->notify, 1, 0)
        || !okaddr(sp - ERRMAX - 4 * BY2WD, sizeof(Ureg) + ERRMAX + 4 * BY2WD, 1)){
                qunlock(&up->debug);
                pprint("suicide: bad address in notify\n");
@@ -216,7 +216,7 @@ noted(Ureg *ureg, ulong arg0)
        
        nureg = up->ureg;
        oureg = (ulong) nureg;
-       if(!okaddr((ulong) oureg - BY2WD, BY2WD + sizeof(Ureg), 0)){
+       if(!okaddr(oureg - BY2WD, BY2WD + sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted when not notified\n");
                pexit("Suicide", 0);
index c8a43bbb51e3ff459edb7dc3fba55859520d213d..cf85bcad69f8010fa78b0b23fbd0ae97862d84ef 100644 (file)
@@ -867,7 +867,7 @@ notify(Ureg* ureg)
 if(0) print("%s %lud: notify %.8lux %.8lux %.8lux %s\n",
        up->text, up->pid, ureg->pc, ureg->usp, sp, n->msg);
 
-       if(!okaddr((ulong)up->notify, 1, 0)
+       if(!okaddr((uintptr)up->notify, 1, 0)
        || !okaddr(sp-ERRMAX-4*BY2WD, sizeof(Ureg)+ERRMAX+4*BY2WD, 1)){
                qunlock(&up->debug);
                pprint("suicide: bad address in notify\n");
@@ -920,7 +920,7 @@ noted(Ureg* ureg, ulong arg0)
 
        /* sanity clause */
        oureg = (ulong)nureg;
-       if(!okaddr((ulong)oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
+       if(!okaddr(oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted when not notified\n");
                pexit("Suicide", 0);
index 2a1b15b941f7ef97b09dae53d186bc7ea1a2764c..2b368e7ca23b239b878cfc48eb285c6d81969d34 100644 (file)
@@ -221,7 +221,7 @@ sysrfork(va_list list)
                procwired(p, wm->machno);
        ready(p);
        sched();
-       return (uintptr)pid;
+       return pid;
 }
 
 static ulong
@@ -579,7 +579,7 @@ syssleep(va_list list)
 uintptr
 sysalarm(va_list list)
 {
-       return (uintptr)procalarm(va_arg(list, ulong));
+       return procalarm(va_arg(list, ulong));
 }
 
 
@@ -612,34 +612,32 @@ sysexits(va_list list)
 uintptr
 sys_wait(va_list list)
 {
-       int pid;
+       ulong pid;
        Waitmsg w;
        OWaitmsg *ow;
 
        ow = va_arg(list, OWaitmsg*);
-       if(ow == 0)
+       if(ow == nil)
                pid = pwait(nil);
        else {
                validaddr((uintptr)ow, sizeof(OWaitmsg), 1);
                evenaddr((uintptr)ow);
                pid = pwait(&w);
-               if(pid >= 0){
-                       readnum(0, ow->pid, NUMSIZE, w.pid, NUMSIZE);
-                       readnum(0, ow->time+TUser*NUMSIZE, NUMSIZE, w.time[TUser], NUMSIZE);
-                       readnum(0, ow->time+TSys*NUMSIZE, NUMSIZE, w.time[TSys], NUMSIZE);
-                       readnum(0, ow->time+TReal*NUMSIZE, NUMSIZE, w.time[TReal], NUMSIZE);
-                       strncpy(ow->msg, w.msg, sizeof(ow->msg)-1);
-                       ow->msg[sizeof(ow->msg)-1] = '\0';
-               }
        }
-       return (uintptr)pid;
+       if(ow != nil){
+               readnum(0, ow->pid, NUMSIZE, w.pid, NUMSIZE);
+               readnum(0, ow->time+TUser*NUMSIZE, NUMSIZE, w.time[TUser], NUMSIZE);
+               readnum(0, ow->time+TSys*NUMSIZE, NUMSIZE, w.time[TSys], NUMSIZE);
+               readnum(0, ow->time+TReal*NUMSIZE, NUMSIZE, w.time[TReal], NUMSIZE);
+               strncpy(ow->msg, w.msg, sizeof(ow->msg)-1);
+               ow->msg[sizeof(ow->msg)-1] = '\0';
+       }
+       return pid;
 }
 
 uintptr
 sysawait(va_list list)
 {
-       int i;
-       int pid;
        char *p;
        Waitmsg w;
        uint n;
@@ -647,16 +645,11 @@ sysawait(va_list list)
        p = va_arg(list, char*);
        n = va_arg(list, uint);
        validaddr((uintptr)p, n, 1);
-       pid = pwait(&w);
-       if(pid < 0)
-               i = -1;
-       else {
-               i = snprint(p, n, "%d %lud %lud %lud %q",
-                       w.pid,
-                       w.time[TUser], w.time[TSys], w.time[TReal],
-                       w.msg);
-       }
-       return (uintptr)i;
+       pwait(&w);
+       return (uintptr)snprint(p, n, "%d %lud %lud %lud %q",
+               w.pid,
+               w.time[TUser], w.time[TSys], w.time[TReal],
+               w.msg);
 }
 
 void
index 5099b4d149413a293671862e8d9b194affbc84a0..1dca774825fb5b6accc7a815aaf42a0861fe2b1a 100644 (file)
@@ -748,7 +748,7 @@ notify(Ureg* ur)
        sp = ur->usp & ~(BY2V-1);
        sp -= sizeof(Ureg);
 
-       if(!okaddr((ulong)up->notify, BY2WD, 0) ||
+       if(!okaddr((uintptr)up->notify, BY2WD, 0) ||
           !okaddr(sp-ERRMAX-4*BY2WD, sizeof(Ureg)+ERRMAX+4*BY2WD, 1)) {
                qunlock(&up->debug);
                pprint("suicide: bad address or sp in notify\n");
@@ -799,7 +799,7 @@ noted(Ureg* ureg, ulong arg0)
 
        /* sanity clause */
        oureg = (ulong)nureg;
-       if(!okaddr((ulong)oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
+       if(!okaddr(oureg-BY2WD, BY2WD+sizeof(Ureg), 0)){
                qunlock(&up->debug);
                pprint("bad ureg in noted or call to noted when not notified\n");
                pexit("Suicide", 0);