Re: [BUG] Scheduling in interrup

(no name) ((no email))
Tue, 4 Sep 2001 17:20:52 -0400


Hi,

>o Are you attempting to access paged RAM?

I am using kmalloc to reserve my memory.
kmalloc as the options GFP_KERNEL and GFP_DMA.
I am not using any command to reserve memory in
the interrupt handler.

>o Are you accessing anything that sleeps?

Not in the interrupt handler.

>o Are you enabling interrupts without protecting against
re-entry first?

I am not sure what do you mean, but I am attaching the interrupt
handler with the function request_irq with the option SA_INTERRUPT &
SA_SHIRQ.
Does the kernel prevent re-entry of the interrupt handler ?

I look in the function schedule :

asmlinkage void schedule(void)
{
struct schedule_data * sched_data;
struct task_struct *prev, *next, *p;
struct list_head *tmp;
int this_cpu, c;

if (!current->active_mm) BUG();
need_resched_back:
prev = current;
this_cpu = prev->processor;

if (in_interrupt())
goto scheduling_in_interrupt;

<...>

scheduling_in_interrupt:
printk("Scheduling in interrupt\n");
BUG(); <--------------------------------This is the line 706. -->
This is my problem <--
return;
}

Do you have any idea how this could happen ?

Thanks,

Jean-François Hammond .

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/