>
> Hello
> Since I know the rtlinux interrupt handler will execute with interrupt disabled,
> i traced the source code rtl_core.c and found that the do_IRQ function will be
>replaced
> with the rtl_intercept function while loading the rtl.o module .
>
> There's one thing confusing me that in the rtl_intercept function , it doesn't
>disable
> the irq before dispath the realtime interrupt handler , but only execute the
> rtl_irq_controller_ack(irq) to acknoledge the PIC(Programable interrupt
>controller).
>
> under the mechanism, there's two points i can't understand.
>
> 1. why the man page says that irq will be disabled during the realtime handler
>execution.
> In which stage it disabled the IRQ?
>
>
look at the startup of rtlinux (init_module of main/rtl_core.c == rtl.o)
main/rtl_core.c:init_module ->
main/i386/arch.h:arch_tackover ->
linux/arch/i386/kernel/rtlinux.c:rtl_hard_cli()
<-
<-
(interrupts are now disabled)
main/rtl_core.c:init_module:rtl_soft_sti ->
main/rtl_core.c:rtl_soft_sti()
after that linux will only see the emulated (soft) interrupts when rtlinux
passes them on.
hofrat
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/