Please see below
Fawad Lateef <fawadlateef@xxxxxxxxx> wrote:
int init_module(void)
{
long int flags;
printk(KERN_INFO "Hello World \n");
local_irq_disable();
// disable_irq(169);
}
When I inserted this module, nothing happened. But when I tried disable_irq(169), the eth0 network card stopped sending/receiving packets. So it means disable_irq() worked. But not local_irq_disable(). Why ?
Is it like when insmod process finishes, the kernel automatically reenables the interrupts ? If so why not for disable_irq() ?
Also can anybody let me know what is the IRQ number of the mouse ?
Thanks,
Rajaram.
Fawad Lateef <fawadlateef@xxxxxxxxx> wrote:
On 1/12/06, Nauman TahirMy init_module contains just thiswrote:
> On 1/11/06, Anupam Kapoorwrote:
> > on a single cpu system calling "local_irq_disable" should be sufficient. no ?
> >
> well
>
> void local_irq_save(unsigned long flags);
>
> may also be used. I would suggest Rajaram to observe the difference in
> the behaviour of both calls.
>
local_irq_disable and local_irq_save are identical, local_irq_save
actually saves the previous flags and then disable irqs whereas
local_irq_disable simply disables the interrupts on the current CPU
and previous flags are lost (CMIIW)
--
Fawad Lateef
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/
int init_module(void)
{
long int flags;
printk(KERN_INFO "Hello World \n");
local_irq_disable();
// disable_irq(169);
}
When I inserted this module, nothing happened. But when I tried disable_irq(169), the eth0 network card stopped sending/receiving packets. So it means disable_irq() worked. But not local_irq_disable(). Why ?
Is it like when insmod process finishes, the kernel automatically reenables the interrupts ? If so why not for disable_irq() ?
Also can anybody let me know what is the IRQ number of the mouse ?
Thanks,
Rajaram.
Yahoo! Photos
Ring in the New Year with Photo Calendars. Add photos, events, holidays, whatever.