[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

interrupt handler



Title: interrupt handler

Hi,

I ported ethernet driver (intel 82559 / "e100" driver) for RTLINUX,

I have an  rt_Interrupt handler which get the frame ("e100_rx_srv"),
and rt_task ("rt_net_bh")  which do repeating to the frame.
The rt_task is in suspend mode ("pthread_suspend_np(pthread_self())").
The recieve rt_interrupt handler resume the rt_task ("pthraed_wakeup_np(rxtask)").
Its work fine in low rate.
   
My problem: I found that when  I resume the rt_task from the  rt_interrupt handler the
rt_task start immediately to run and does NOT wait till the rt_interrupt end its code before!!
(which is not an accepted  behaviour)
Does its forbidden to resume (other) task from interrup handler, or it's a bug in rtlinux ?     

(sorry for my English)
shlomi Rechtman
Allot software engineer