fix this megashit
This commit is contained in:
parent
75e34ca08a
commit
cdc0b89d81
2 changed files with 5 additions and 0 deletions
|
@ -56,6 +56,7 @@ Timet boottime;
|
||||||
Queue* serveq;
|
Queue* serveq;
|
||||||
Queue* raheadq;
|
Queue* raheadq;
|
||||||
Rabuf* rabuffree;
|
Rabuf* rabuffree;
|
||||||
|
QLock reflock;
|
||||||
Lock rabuflock;
|
Lock rabuflock;
|
||||||
Tlock tlocks[NTLOCK];
|
Tlock tlocks[NTLOCK];
|
||||||
Lock tlocklock;
|
Lock tlocklock;
|
||||||
|
|
|
@ -314,6 +314,8 @@ main(int argc, char **argv)
|
||||||
printsizes();
|
printsizes();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qlock(&reflock);
|
||||||
|
qunlock(&reflock);
|
||||||
serveq = newqueue(1000, "9P service"); /* tunable */
|
serveq = newqueue(1000, "9P service"); /* tunable */
|
||||||
raheadq = newqueue(1000, "readahead"); /* tunable */
|
raheadq = newqueue(1000, "readahead"); /* tunable */
|
||||||
|
|
||||||
|
@ -449,6 +451,7 @@ serve(void *)
|
||||||
Msgbuf *mb;
|
Msgbuf *mb;
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
qlock(&reflock);
|
||||||
/* read 9P request from a network input process */
|
/* read 9P request from a network input process */
|
||||||
mb = fs_recv(serveq, 0);
|
mb = fs_recv(serveq, 0);
|
||||||
assert(mb->magic == Mbmagic);
|
assert(mb->magic == Mbmagic);
|
||||||
|
@ -457,6 +460,7 @@ serve(void *)
|
||||||
if (cp == nil)
|
if (cp == nil)
|
||||||
panic("serve: nil mb->chan");
|
panic("serve: nil mb->chan");
|
||||||
rlock(&cp->reflock);
|
rlock(&cp->reflock);
|
||||||
|
qunlock(&reflock);
|
||||||
|
|
||||||
rlock(&mainlock);
|
rlock(&mainlock);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue