From: dushistov@mail.ru (Evgeniy Dushistov)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] fix for certain sequnce of request_irq can cause irq storm
Date: Wed, 15 Oct 2014 04:08:34 +0400 [thread overview]
Message-ID: <20141015000834.GA3983@fifteen> (raw)
In-Reply-To: <20140726155659.GA22977@fifteen>
On Sat, Jul 26, 2014 at 07:56:59PM +0400, Evgeniy Dushistov wrote:
> The problem is that hardware handled by arm/plat-orion/gpio.c,
> require ack for edge irq, and no ack for level irq.
>
> The code handle this issue, by two "struct irq_chip_type" per
> one "struct irq_chip_generic". For one "struct irq_chip_generic"
> irq_ack pointer is setted, for another it is NULL.
>
> But we have only one mask_cache per two "struct irq_chip_type".
> So if we
> 1)unmask interrupt A for "edge type" trigger,
> 2)unmask interrupt B for "level type" trigger,
> 3)unmask interrupt C for "edge type",
>
> we, because of usage of generic irq_gc_mask_clr_bit/irq_gc_mask_set_bit,
> have hardware configured to trigger interrupt B on "edge type",
> because of shared mask_cache. But kernel think that B is "level type",
> so when interrupt B occur via "edge" reason, we don't ack it,
> and B triggered again and again.
>
Any news about mergin this patch?
--
/Evgeniy
next prev parent reply other threads:[~2014-10-15 0:08 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-26 15:56 [PATCH] fix for certain sequnce of request_irq can cause irq storm Evgeniy Dushistov
2014-07-26 16:56 ` Andrew Lunn
2014-07-26 17:12 ` Evgeniy Dushistov
2014-10-21 14:15 ` Thomas Petazzoni
2014-10-21 15:20 ` Evgeniy Dushistov
2014-10-21 15:37 ` Thomas Petazzoni
2014-10-21 18:54 ` Evgeniy Dushistov
2014-07-26 17:45 ` Andrew Lunn
2014-07-26 18:48 ` Evgeniy Dushistov
2014-10-15 0:08 ` Evgeniy Dushistov [this message]
2014-10-15 15:51 ` Jason Cooper
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20141015000834.GA3983@fifteen \
--to=dushistov@mail.ru \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.