Re: hwo to adjust interrupt?

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

 



>so it is possible that both card raise intr quicker than isr run, then
>both isr will do mmio and go ahead, but then what is
>
>device 1 raise intr
>device 2 isr run and not belong to it, so quit, but before it clear intr
>and quit
>device 2 raise intr
>device 1 isr run and handle device 1, then clear intr and quit.
>
>then device 2 intr lost?

As these are level sensitive interrupt requests, they can't be lost.  As 
long as Device 2 is requesting service,
the shared IRQ is raised and at some point Linux will call Device 2's 
interrupt handler.  Either the first level IRQ handler will keep calling 
all the interrupt handlers that service that IRQ until the IRQ subsides, 
or it will unmask the IRQ, causing an immediate new interrupt and the 
first level interrupt handler runs again and calls all the device drivers 
again.

The raised IRQ says, "Device 1 or Device 2 needs service."  The device 
drivers clear the service request of the individual device; as long as 
either device requests service, the IRQ is raised.

--
Bryan Henderson                     IBM Almaden Research Center
San Jose CA                         Filesystems

-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux