Subversion Repositories shark

Compare Revisions

Regard whitespace Rev 1076 → Rev 1077

/shark/trunk/kernel/signal.c
18,11 → 18,11
 
/**
------------
CVS : $Id: signal.c,v 1.15 2006-03-07 19:11:58 mauro Exp $
CVS : $Id: signal.c,v 1.16 2007-05-04 10:53:30 fabio Exp $
 
File: $File$
Revision: $Revision: 1.15 $
Last update: $Date: 2006-03-07 19:11:58 $
Revision: $Revision: 1.16 $
Last update: $Date: 2007-05-04 10:53:30 $
------------
 
This file contains:
1397,6 → 1397,7
/* interrupts enabled to allow interrupt nesting */
 
extern int add_interrupt_job(int no);
extern int invalidate_pending_jobs(int no);
 
void irq_fasthandler(void *n)
{
1482,6 → 1483,9
return -1;
}
 
if (int_table[no].intdrv != NULL)
invalidate_pending_jobs(no);
 
int_table[no].fast = NULL;
int_table[no].intdrv = NULL;
int_table[no].proc_index = NIL;
/shark/trunk/modules/intdrive/inttask.c
149,6 → 149,22
}
}
 
/*
* When an handler is removed pending activations have to be removed.
* This may cause interrupt losses, drivers should be aware of that.
*/
void invalidate_pending_jobs(int no)
{
int i;
 
i = next_execute_int;
while (i != next_free_int) {
if (int_list[i] == no)
int_list[i] = -1;
i = (i + 1) % MAX_INT_LIST;
}
}
 
TASK Interrupt_Server(void *arg)
{
while(1) {