* Josh Cartwright | 2016-02-24 16:35:47 [-0600]: >On Wed, Feb 24, 2016 at 06:39:46PM +0100, Sean Nyekj?r wrote: >> CC'ing RT > >I'm assuming this is with the other patch killing off IRQF_ONESHOT? > >> On 2016-02-24 16:31, Sean Nyekjær wrote: >> >Hi >> > >> >I'm using the sc16is750 on an imx6d platform with RT patches applied. >> > >> >I have observed that sometimes the driver locks the whole system as is >> >loops inside the sc16is7xx_port_irq. >> >I have applied some debug and seen we are looping upto 130000 times in the >> >while(1) loop. >> >The SC16IS7XX_IIR_REG does signal the SC16IS7XX_IIR_XOFFI_SRC but the >> >SC16IS7XX_IER_XOFFI_BIT is not set. > >Ouch. > >I don't quite understand how the interrupt handling in this driver is >supposed to work. sc16is7xx_irq() is invoked to handle the interrupt, >but it does absolutely nothing to squelch it... how does this not cause >an interrupt storm? The irq core is free to unmask the interrupt when >the handler return IRQ_HANDLED, and if you're dealing with >level-sensitive interrupts... The irqcore does not shut down the driver because it always returns IRQ_HANDLED. The reason why don't end up in a storm is the IRQF_ONESHOT part. However it should use proper irq threads and not this homegrow stuff. I could be a bug in general and not related to -RT. > Josh Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html