linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: yangyingliang@huawei.com (Yang Yingliang)
To: linux-arm-kernel@lists.infradead.org
Subject: A problem about interrupt when booting a captured kernel
Date: Thu, 19 Nov 2015 11:42:08 +0800	[thread overview]
Message-ID: <564D4510.5000303@huawei.com> (raw)
In-Reply-To: <20151117091613.10ce486f@arm.com>



On 2015/11/17 17:16, Marc Zyngier wrote:
> On Tue, 17 Nov 2015 11:48:07 +0800
> Yang Yingliang <yangyingliang@huawei.com> wrote:
>
>> Hi
>>
>> On 2015/11/17 3:26, Marc Zyngier wrote:
>>> On 13/11/15 10:09, Yang Yingliang wrote:
>>>> Hi, Marc
>>>>
>>>>
>>>>        The kexec will boot a captured kernel while the kernel panic. But
>>>> it boots failed if the kernel panic in handler function of PPI. The
>>>> reason is that the PPI has not been 'eoi', other interrupts can not be
>>>> handled when booting  the captured kernel.
>>>>
>>>>        The kexec will call irq_eoi to end the irqs that have
>>>> IRQD_IRQ_INPROGRESS flag. But PPIs don't have this flag, so it won't be
>>>> ended.
>>>>
>>>>       Three ways to solve this problem we can think :
>>>>       1. Is there a way to reset gic like its_reset ?
>>>>       2. Can we add some flag for calling irq_eoi ?
>>>>       3. Just 'eoi' all PPIs without checking flags in kexec.
>>>>
>>>>        Please give some advice.
>>>
>>> Good timing. Please see:
>>>
>>> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-November/385383.html
>>>
>>> and let me know if that fixes things for you.
>>
>> I tried patch #1, deactivating interrupt can not fix the problem. But
>> EOI the interrupt can.
>
> You have noticed that this patch is for ARM, not arm64, right?

Yes, I noticed.

>
>> I think the reason is GICC status is not cleared.
>> So if it means, in hardware, we should clear the GICC status while
>> deactivating the.
>
> Writing to the EOI register or writing to the ACTIVE register have the
> exact same result as far as kexec is concerned (unless your GIC is not
> compliant with the architecture - in which case I can't help you).
>
> Does applying the other patches help?

No, it doesn't help.

>
> Thanks,
>
> 	M.
>

  reply	other threads:[~2015-11-19  3:42 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-13 10:09 A problem about interrupt when booting a captured kernel Yang Yingliang
2015-11-16 19:26 ` Marc Zyngier
2015-11-17  1:05   ` AKASHI Takahiro
2015-11-17  9:07     ` Marc Zyngier
2015-11-18  8:03       ` AKASHI Takahiro
2015-11-18 11:29         ` Marc Zyngier
2015-11-17  3:48   ` Yang Yingliang
2015-11-17  9:16     ` Marc Zyngier
2015-11-19  3:42       ` Yang Yingliang [this message]
2015-11-19  8:40         ` Marc Zyngier

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=564D4510.5000303@huawei.com \
    --to=yangyingliang@huawei.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).