diff options
Diffstat (limited to 'src/lib9/_p9proc.c')
-rw-r--r-- | src/lib9/_p9proc.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/lib9/_p9proc.c b/src/lib9/_p9proc.c index c492ae15..9543bf24 100644 --- a/src/lib9/_p9proc.c +++ b/src/lib9/_p9proc.c @@ -18,6 +18,19 @@ static Uproc *alluproc[PIDHASH]; static int allupid[PIDHASH]; static Lock uproclock; +void +_clearuproc(void) +{ + int i; + + /* called right after fork - no locking needed */ + for(i=0; i<PIDHASH; i++) + if(alluproc[i] != T && alluproc[i] != 0) + free(alluproc[i]); + memset(alluproc, 0, sizeof alluproc); + memset(allupid, 0, sizeof allupid); +} + Uproc* _p9uproc(int inhandler) { |