diff options
author | Jonathan Adams <Jonathan.Adams@Sun.COM> | 2009-12-16 10:18:11 -0800 |
---|---|---|
committer | Jonathan Adams <Jonathan.Adams@Sun.COM> | 2009-12-16 10:18:11 -0800 |
commit | aab2fe4104e428e5213f84aee65b9905ec97cf9a (patch) | |
tree | 2206821772c10b03082d3bc404073590e43ea6ea /usr/src/uts/common/os/lwp.c | |
parent | 3006ae8299c242a6ac48c0384a6167bcc3303d69 (diff) | |
download | illumos-gate-aab2fe4104e428e5213f84aee65b9905ec97cf9a.tar.gz |
6909721 assertion failed: t->t_lpl < t->t_cpupart->cp_lgrploads + t->t_cpupart->cp_nlgrp
6910240 sysdc_batch_niceness doesn't help performance
Diffstat (limited to 'usr/src/uts/common/os/lwp.c')
-rw-r--r-- | usr/src/uts/common/os/lwp.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/usr/src/uts/common/os/lwp.c b/usr/src/uts/common/os/lwp.c index 229c3d1177..3fa5dcbc7a 100644 --- a/usr/src/uts/common/os/lwp.c +++ b/usr/src/uts/common/os/lwp.c @@ -527,10 +527,10 @@ grow: lgrp_move_thread(t, t->t_bound_cpu->cpu_lpl, 1); } else if (CLASS_KERNEL(cid)) { /* - * For kernel threads, assign ourselves to the root lgrp. + * Kernel threads are always in the root lgrp. */ lgrp_move_thread(t, - &curthread->t_cpupart->cp_lgrploads[LGRP_ROOTID], 1); + &t->t_cpupart->cp_lgrploads[LGRP_ROOTID], 1); } else { lgrp_move_thread(t, lgrp_choose(t, t->t_cpupart), 1); } @@ -545,20 +545,11 @@ grow: t->t_cpupart->cp_nlgrploads); /* - * If we're creating a new process, then inherit the project from our - * parent. If we're only creating an additional lwp then use the - * project pointer of the target process. - */ - if (p->p_task == NULL) - newkpj = ttoproj(curthread); - else - newkpj = p->p_task->tk_proj; - - /* * It is safe to point the thread to the new project without holding it * since we're holding the target process' p_lock here and therefore * we're guaranteed that it will not move to another project. */ + newkpj = p->p_task->tk_proj; oldkpj = ttoproj(t); if (newkpj != oldkpj) { t->t_proj = newkpj; |