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