Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 326 → Rev 327

/shark/trunk/kernel/kill.c
18,11 → 18,11
 
/**
------------
CVS : $Id: kill.c,v 1.5 2003-11-12 17:28:20 giacomo Exp $
CVS : $Id: kill.c,v 1.6 2003-11-13 08:57:21 giacomo Exp $
 
File: $File$
Revision: $Revision: 1.5 $
Last update: $Date: 2003-11-12 17:28:20 $
Revision: $Revision: 1.6 $
Last update: $Date: 2003-11-13 08:57:21 $
------------
 
This file contains:
81,7 → 81,8
{
if (proc_table[exec_shadow].control & KILL_ENABLED &&
!(proc_table[exec_shadow].control & KILL_DEFERRED) &&
proc_table[exec_shadow].control & KILL_REQUEST ) {
proc_table[exec_shadow].control & KILL_REQUEST &&
!(proc_table[exec_shadow].control & TASK_MAKEFREE)) {
task_makefree(TASK_CANCELED);
 
ll_context_to(proc_table[exec_shadow].context);
112,6 → 113,9
PID i; /* used for readableness instead of exec_shadow */
 
i = exec_shadow;
/* Avoid a double call of task_makefree */
proc_table[i].control |= TASK_MAKEFREE;
 
/* first, contol if the task is joinable and someone is waiting for him
This checks has to be done before the shadow check (see below)
210,6 → 214,13
//DON'T REMOVE !!! BUG IF EXEC_SHADOW = -1
//kern_epilogue_macro();
/* there is no epilogue... */
kern_gettime(&schedule_time);
/* we don't have to manage the capacity... because we are killing
ourselves */
if (cap_timer != NIL) {
event_delete(cap_timer);
cap_timer = NIL;
}
scheduler();
}