summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/9/port/proc.c2
-rw-r--r--sys/src/9/port/segment.c4
-rw-r--r--sys/src/9/port/swap.c4
-rw-r--r--sys/src/9/zynq/screen.c8
4 files changed, 1 insertions, 17 deletions
diff --git a/sys/src/9/port/proc.c b/sys/src/9/port/proc.c
index 766ab52b9..eadca93ec 100644
--- a/sys/src/9/port/proc.c
+++ b/sys/src/9/port/proc.c
@@ -1387,7 +1387,7 @@ kproc(char *name, void (*func)(void *), void *arg)
p->s = up->s;
p->nerrlab = 0;
p->slash = up->slash;
- p->dot = up->dot;
+ p->dot = up->slash; /* unlike fork, do not inherit the dot for kprocs */
if(p->dot != nil)
incref(p->dot);
diff --git a/sys/src/9/port/segment.c b/sys/src/9/port/segment.c
index c2ad137f1..a15f928cc 100644
--- a/sys/src/9/port/segment.c
+++ b/sys/src/9/port/segment.c
@@ -837,10 +837,6 @@ segmentioproc(void *arg)
incref(sio->s);
up->seg[sno] = sio->s;
- cclose(up->dot);
- up->dot = up->slash;
- incref(up->dot);
-
while(waserror())
;
for(done = 0; !done;){
diff --git a/sys/src/9/port/swap.c b/sys/src/9/port/swap.c
index efbf3cbb4..73d12345a 100644
--- a/sys/src/9/port/swap.c
+++ b/sys/src/9/port/swap.c
@@ -149,10 +149,6 @@ pager(void*)
Segment *s;
Proc *p, *ep;
- cclose(up->dot);
- up->dot = up->slash;
- incref(up->dot);
-
p = proctab(0);
ep = &p[conf.nproc];
diff --git a/sys/src/9/zynq/screen.c b/sys/src/9/zynq/screen.c
index dbed776c9..fcf3a365c 100644
--- a/sys/src/9/zynq/screen.c
+++ b/sys/src/9/zynq/screen.c
@@ -116,10 +116,6 @@ cursorproc(void *arg)
up->seg[i] = arg;
- cclose(up->dot);
- up->dot = up->slash;
- incref(up->dot);
-
hwcursor.proc = up;
if(waserror()){
hwcursor.addr = 0;
@@ -204,10 +200,6 @@ screenproc(void *arg)
up->seg[sno] = arg;
- cclose(up->dot);
- up->dot = up->slash;
- incref(up->dot);
-
fbscreen.proc = up;
if(waserror()){
fbscreen.addr = 0;