Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1508185

Re: Disabling an interrupt in the handler locks the system up

From Marc Zyngier <marc.zyngier@arm.com>
Newsgroups linux.kernel
Subject Re: Disabling an interrupt in the handler locks the system up
Date 2016-10-25 12:50 +0200
Message-ID <sw7sR-4re-3@gated-at.bofh.it> (permalink)
References (8 earlier) <svdK1-1pN-5@gated-at.bofh.it> <svQ8F-1zn-15@gated-at.bofh.it> <svQLo-1O1-13@gated-at.bofh.it> <sw5r3-39J-5@gated-at.bofh.it> <sw5r3-39J-3@gated-at.bofh.it>
Organization ARM Ltd

Show all headers | View raw


On 25/10/16 09:36, Mason wrote:
> On 25/10/2016 10:29, Sebastian Frias wrote:
> 
>> On 10/24/2016 06:55 PM, Thomas Gleixner wrote:
>>
>>> On Mon, 24 Oct 2016, Mason wrote:
>>>
>>>> For the record, setting the IRQ_DISABLE_UNLAZY flag for this device
>>>> makes the system lock-up disappear.
>>>
>>> The way how lazy irq disabling works is:
>>>
>>> 1) Interrupt is marked disabled in software, but the hardware is not masked
>>>
>>> 2) If the interrupt fires befor the interrupt is reenabled, then it's
>>>    masked at the hardware level in the low level interrupt flow handler.
>>
>> Would you mind explaining what is the intention behind?
>> Because it does not seem obvious why there isn't a direct map between
>> "disable_irq*()" and "mask_irq()"
> 
> I had a similar, but slightly different question:
> 
> What is the difference between struct irq_chip's
> 
>  * @irq_shutdown:	shut down the interrupt (defaults to ->disable if NULL)
>  * @irq_disable:	disable the interrupt
>  * @irq_mask:		mask an interrupt source

One important difference between disable and mask is that disable is
perfectly allowed not to care about pending signals, whereas mask must
preserve an interrupt becoming pending whilst masked.

Thanks,

	M.
-- 
Jazz is not dead. It just smells funny...

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-21 18:40 +0200
  Re: Disabling an interrupt in the handler locks the system up Marc Zyngier <marc.zyngier@arm.com> - 2016-10-21 19:50 +0200
    Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-21 20:50 +0200
      Re: Disabling an interrupt in the handler locks the system up Marc Zyngier <marc.zyngier@arm.com> - 2016-10-21 21:20 +0200
        Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-21 21:50 +0200
          Re: Disabling an interrupt in the handler locks the system up Thomas Gleixner <tglx@linutronix.de> - 2016-10-21 22:00 +0200
            Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-21 22:30 +0200
              Re: Disabling an interrupt in the handler locks the system up Marc Zyngier <marc.zyngier@arm.com> - 2016-10-22 13:40 +0200
                Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-23 01:20 +0200
                Re: Disabling an interrupt in the handler locks the system up Marc Zyngier <marc.zyngier@arm.com> - 2016-10-24 10:20 +0200
                Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-24 18:20 +0200
                Re: Disabling an interrupt in the handler locks the system up Thomas Gleixner <tglx@linutronix.de> - 2016-10-24 19:00 +0200
                Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-25 10:40 +0200
                Re: Disabling an interrupt in the handler locks the system up Marc Zyngier <marc.zyngier@arm.com> - 2016-10-25 12:50 +0200
                Re: Disabling an interrupt in the handler locks the system up Mason <slash.tmp@free.fr> - 2016-10-25 16:00 +0200
                Re: Disabling an interrupt in the handler locks the system up Thomas Gleixner <tglx@linutronix.de> - 2016-10-25 16:00 +0200
                Re: Disabling an interrupt in the handler locks the system up Sebastian Frias <sf84@laposte.net> - 2016-10-25 11:00 +0200
                Re: Disabling an interrupt in the handler locks the system up Thomas Gleixner <tglx@linutronix.de> - 2016-10-25 11:30 +0200

csiph-web