summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2024-01-05 07:07:53 +0000
committercinap_lenrek <cinap_lenrek@felloff.net>2024-01-05 07:07:53 +0000
commite80c7eb50b65ff7bc864fe551c24ac26c15f3e8d (patch)
tree77053d615b1b0245e7a651b6384e5aadb9a856a0
parentee2174eb6d33da8eea7d1f68101b70deb12a2a4c (diff)
cifs: fix rfork() race with shard pid variable
-rw-r--r--sys/src/cmd/cifs/main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/src/cmd/cifs/main.c b/sys/src/cmd/cifs/main.c
index 2878537a1..6808a14c4 100644
--- a/sys/src/cmd/cifs/main.c
+++ b/sys/src/cmd/cifs/main.c
@@ -1325,10 +1325,11 @@ connected:
if(Nshares == 0)
fprint(2, "no available shares\n");
- if((Keeppid = rfork(RFPROC|RFMEM|RFNOTEG|RFFDG|RFNAMEG)) == 0){
+ if((i = rfork(RFPROC|RFMEM|RFNOTEG|RFFDG|RFNAMEG)) == 0){
keepalive();
exits(nil);
}
+ Keeppid = i;
postmountsrv(&fs, svs, mtpt, MREPL|MCREATE);
exits(nil);
}