On Fri, 18 Sep 2015 18:22:07 +0900
Kohji Okuno <okuno.ko...@jp.panasonic.com> wrote:

> From: Thomas Gleixner <t...@linutronix.de>
> Date: Fri, 18 Sep 2015 11:04:23 +0200
> > That's weird. The flow is:
> > 
> > interrupt()
> >   mask()
> >   ret = primary_handler()
> >   if (ret == WAKE_THREAD)
> >     wake_thread()
> >   else
> >     unmask()
> > 
> > thread_handler()
> >   ....
> >   unmask()
> > 
> > So if an interrupt is triggered on the device while the interrupt is
> > masked it should be raised again immediately when the unmask happens
> > because its level type.
> > 
> > I'm wondering why that doesn't work.
> 
> Yes. I think so. And, I have just found that sdhci_thread_irq() don't
> finish in this case. I'm analyzing about this now. But, after I apply
> my patch, sdhci_thread_irq() can finish. I will share the result with
> you.

What do you mean exactly by "don't finish"? Does it hang somewhere? Or
keeps processing data but never drains?

Thanks,

        M.
-- 
Jazz is not dead. It just smells funny.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to