Small tweaks to make things build again.
This commit is contained in:
parent
91c13e54b5
commit
f063dad96e
18 changed files with 43 additions and 48 deletions
|
|
@ -195,7 +195,7 @@ startfsys(void)
|
|||
if(post9pservice(p[1], "plumb") < 0)
|
||||
sysfatal("post9pservice plumb: %r");
|
||||
close(p[1]);
|
||||
proccreate(fsysproc, nil, Stack);
|
||||
threadcreate(fsysproc, nil, Stack);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -213,14 +213,14 @@ fsysproc(void *v)
|
|||
if(buf == nil)
|
||||
error("malloc failed: %r");
|
||||
qlock(&readlock);
|
||||
n = read9pmsg(srvfd, buf, messagesize);
|
||||
n = threadread9pmsg(srvfd, buf, messagesize);
|
||||
if(n <= 0){
|
||||
if(n < 0)
|
||||
error("i/o error on server channel");
|
||||
threadexitsall("unmounted");
|
||||
}
|
||||
if(readlock.head == nil) /* no other processes waiting to read; start one */
|
||||
proccreate(fsysproc, nil, Stack);
|
||||
threadcreate(fsysproc, nil, Stack);
|
||||
qunlock(&readlock);
|
||||
if(t == nil)
|
||||
t = emalloc(sizeof(Fcall));
|
||||
|
|
|
|||
|
|
@ -431,7 +431,7 @@ execproc(void *v)
|
|||
av = v;
|
||||
stackargv(av, args, argc);
|
||||
free(av);
|
||||
procexec(nil, fd, args[0], args);
|
||||
threadexec(nil, fd, args[0], args);
|
||||
threadexits("can't exec");
|
||||
}
|
||||
|
||||
|
|
@ -458,6 +458,6 @@ Found:
|
|||
argv = buildargv(rs->act[i]->arg, e);
|
||||
if(argv[0] == nil)
|
||||
return "empty argument list";
|
||||
proccreate(execproc, argv, EXECSTACK);
|
||||
threadcreate(execproc, argv, EXECSTACK);
|
||||
return nil;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,4 +14,4 @@ $PLUMB: $HFILES
|
|||
$O.plumb: $PLUMB
|
||||
$O.plumber: $PLUMBER
|
||||
|
||||
LDFLAGS=$LDFLAGS -lplumb -lfs -lmux -lthread -lregexp9 -l9 -lbio -lfmt -lutf
|
||||
LDFLAGS=$LDFLAGS -lplumb -lfs -lmux -lthread -lregexp9 -lbio -l9
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#include <u.h>
|
||||
#include <libc.h>
|
||||
#include <plumb.h>
|
||||
#include <thread.h>
|
||||
|
||||
char *plumbfile = nil;
|
||||
Plumbmsg m;
|
||||
|
|
@ -36,7 +37,7 @@ gather(void)
|
|||
}
|
||||
|
||||
void
|
||||
main(int argc, char *argv[])
|
||||
threadmain(int argc, char *argv[])
|
||||
{
|
||||
char buf[1024], *p;
|
||||
int fd, i, input;
|
||||
|
|
@ -115,5 +116,5 @@ main(int argc, char *argv[])
|
|||
exits("error");
|
||||
}
|
||||
}
|
||||
exits(nil);
|
||||
threadexitsall(nil);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,24 +25,11 @@ makeports(Ruleset *rules[])
|
|||
addport(rules[i]->port);
|
||||
}
|
||||
|
||||
void
|
||||
mainproc(void *v)
|
||||
{
|
||||
Channel *c;
|
||||
|
||||
c = v;
|
||||
printerrors = 0;
|
||||
makeports(rules);
|
||||
startfsys();
|
||||
sendp(c, nil);
|
||||
}
|
||||
|
||||
void
|
||||
threadmain(int argc, char *argv[])
|
||||
{
|
||||
char buf[512];
|
||||
int fd;
|
||||
Channel *c;
|
||||
|
||||
progname = "plumber";
|
||||
|
||||
|
|
@ -79,11 +66,18 @@ threadmain(int argc, char *argv[])
|
|||
* Start all processes and threads from other proc
|
||||
* so we (main pid) can return to user.
|
||||
*/
|
||||
c = chancreate(sizeof(void*), 0);
|
||||
proccreate(mainproc, c, 8192);
|
||||
recvp(c);
|
||||
chanfree(c);
|
||||
threadexits(nil);
|
||||
switch(fork()){
|
||||
case -1:
|
||||
sysfatal("fork: %r");
|
||||
case 0:
|
||||
break;
|
||||
default:
|
||||
_exit(0);
|
||||
}
|
||||
|
||||
printerrors = 0;
|
||||
makeports(rules);
|
||||
startfsys();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue