diff options
author | julian <julian@FreeBSD.org> | 2002-09-14 06:23:43 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 2002-09-14 06:23:43 +0000 |
commit | 2689f8b40eaa44463eb3483912cc9943616e3e79 (patch) | |
tree | a20a5ce4d8beeaf209389c86b153e5df6c2bc727 | |
parent | 775b769d795e0b2a0ba39d7dd61c50b410dfaacc (diff) | |
download | FreeBSD-src-2689f8b40eaa44463eb3483912cc9943616e3e79.zip FreeBSD-src-2689f8b40eaa44463eb3483912cc9943616e3e79.tar.gz |
Apparently something down in the guts of vm/uvm still needs giant
Obtained from: mini via P4 KSE tree.
-rw-r--r-- | sys/kern/kern_kse.c | 2 | ||||
-rw-r--r-- | sys/kern/kern_thread.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/kern/kern_kse.c b/sys/kern/kern_kse.c index 0716d9b..2f5f10a 100644 --- a/sys/kern/kern_kse.c +++ b/sys/kern/kern_kse.c @@ -152,7 +152,9 @@ thread_init(void *mem, int size) ("size mismatch: %d != %d\n", size, (int)sizeof(struct thread))); td = (struct thread *)mem; + mtx_lock(&Giant); pmap_new_thread(td); + mtx_unlock(&Giant); cpu_thread_setup(td); cached_threads++; /* XXXSMP */ allocated_threads++; /* XXXSMP */ diff --git a/sys/kern/kern_thread.c b/sys/kern/kern_thread.c index 0716d9b..2f5f10a 100644 --- a/sys/kern/kern_thread.c +++ b/sys/kern/kern_thread.c @@ -152,7 +152,9 @@ thread_init(void *mem, int size) ("size mismatch: %d != %d\n", size, (int)sizeof(struct thread))); td = (struct thread *)mem; + mtx_lock(&Giant); pmap_new_thread(td); + mtx_unlock(&Giant); cpu_thread_setup(td); cached_threads++; /* XXXSMP */ allocated_threads++; /* XXXSMP */ |