From: Jiang Liu <jiang.liu@linux.intel.com>
To: Joerg Roedel <joro@8bytes.org>
Cc: "Borislav Petkov" <bp@alien8.de>,
"Daniel Vetter" <daniel@ffwll.ch>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Alex Deucher" <alexdeucher@gmail.com>,
"Alex Deucher" <alexander.deucher@amd.com>,
"Christian König" <christian.koenig@amd.com>,
"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
lkml <linux-kernel@vger.kernel.org>
Subject: Re: WARNING: CPU: 4 PID: 863 at include/drm/drm_crtc.h:1577 drm_helper_choose_encoder_dpms+0x88/0x90() - evildoer found and neutralized
Date: Thu, 1 Oct 2015 01:00:44 +0800 [thread overview]
Message-ID: <560C153C.10600@linux.intel.com> (raw)
In-Reply-To: <20150930124432.GS3036@8bytes.org>
On 2015/9/30 20:44, Joerg Roedel wrote:
> On Wed, Sep 30, 2015 at 03:45:39PM +0800, Jiang Liu wrote:
>> So we need to figure out why we got irq number 0 after enabling
>> MSI for AMD IOMMU device. The only hint I got is that iommu driver just
>> grabbing the PCI device without providing a PCI device driver for IOMMU
>> PCI device, we have solved a similar case for eata driver. So could you
>> please help to apply this debug patch to gather more info and send me
>> /proc/interrupts?
>
> I think I have an idea on how dev->irq got 0 after pci_enable_msi(). The
> PCI probe code calls pcibios_alloc_irq() and after a failed probe it calls
> pcibios_free_irq(), which sets dev->irq to 0.
> The AMD IOMMU driver does not register a pci_driver for itself, it just
> doesn't make sense for it. But the PCI device containing the IOMMU gets
> probed later, which fails because there is no driver for it. So the
> following call to pcibios_free_irq() clears dev->irq, so that it is 0 on
> the next resume. Does that make sense?
Thanks Joerg, that makes sense. If some driver tries to binding to the
IOMMU device, it will trigger the scenario as you described. For
example, Xen backend driver will try to probe all PCI devices
if enabled. I will do more investigation tomorrow.
Thanks!
Gerry
next prev parent reply other threads:[~2015-09-30 17:00 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-21 13:31 WARNING: CPU: 4 PID: 863 at include/drm/drm_crtc.h:1577 drm_helper_choose_encoder_dpms+0x88/0x90() Borislav Petkov
2015-09-22 19:06 ` Borislav Petkov
2015-09-22 19:58 ` Alex Deucher
2015-09-22 20:21 ` Borislav Petkov
2015-09-22 20:54 ` Alex Deucher
2015-09-23 7:25 ` Daniel Vetter
2015-09-23 8:59 ` Borislav Petkov
2015-09-23 14:44 ` Daniel Vetter
2015-09-23 16:06 ` Borislav Petkov
2015-09-23 16:18 ` Borislav Petkov
2015-09-26 16:46 ` WARNING: CPU: 4 PID: 863 at include/drm/drm_crtc.h:1577 drm_helper_choose_encoder_dpms+0x88/0x90() - evildoer found and neutralized Borislav Petkov
2015-09-29 8:50 ` Jiang Liu
2015-09-29 10:51 ` Borislav Petkov
2015-09-30 7:45 ` Jiang Liu
2015-09-30 12:44 ` Joerg Roedel
2015-09-30 17:00 ` Jiang Liu [this message]
2015-09-30 17:36 ` Borislav Petkov
2015-09-30 18:07 ` Joerg Roedel
2015-10-03 7:36 ` Jiang Liu
2015-10-03 9:35 ` Borislav Petkov
2015-10-05 10:03 ` Joerg Roedel
2015-10-06 13:13 ` Jiang Liu
2015-10-09 10:24 ` Joerg Roedel
2015-09-30 18:06 ` Joerg Roedel
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=560C153C.10600@linux.intel.com \
--to=jiang.liu@linux.intel.com \
--cc=alexander.deucher@amd.com \
--cc=alexdeucher@gmail.com \
--cc=bhelgaas@google.com \
--cc=bp@alien8.de \
--cc=christian.koenig@amd.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=joro@8bytes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/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).