|
@@ -42,7 +42,7 @@ static LIST_HEAD ( run_queue );
|
42
|
42
|
* have no effect.
|
43
|
43
|
*/
|
44
|
44
|
void process_add ( struct process *process ) {
|
45
|
|
- if ( list_empty ( &process->list ) ) {
|
|
45
|
+ if ( ! process_running ( process ) ) {
|
46
|
46
|
DBGC ( process, "PROCESS %p starting\n", process );
|
47
|
47
|
ref_get ( process->refcnt );
|
48
|
48
|
list_add_tail ( &process->list, &run_queue );
|
|
@@ -60,7 +60,7 @@ void process_add ( struct process *process ) {
|
60
|
60
|
* have no effect.
|
61
|
61
|
*/
|
62
|
62
|
void process_del ( struct process *process ) {
|
63
|
|
- if ( ! list_empty ( &process->list ) ) {
|
|
63
|
+ if ( process_running ( process ) ) {
|
64
|
64
|
DBGC ( process, "PROCESS %p stopping\n", process );
|
65
|
65
|
list_del ( &process->list );
|
66
|
66
|
INIT_LIST_HEAD ( &process->list );
|