Re: local_irq_disable()

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

 



Please see below

Fawad Lateef <fawadlateef@xxxxxxxxx> wrote:
On 1/12/06, Nauman Tahir wrote:
> On 1/11/06, Anupam Kapoor wrote:
> > 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/

My init_module contains just this

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.

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux