From: Jiang Liu <jiang.liu@linux.intel.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Arthur Marsh <arthur.marsh@internode.on.net>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
"x86@kernel.org" <x86@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Subject: Re: [Bugfix] PCI, x86: Correctly allocate IRQs for PCI devices managed by non-PCI drivers
Date: Thu, 10 Sep 2015 16:58:01 +0800 [thread overview]
Message-ID: <55F14619.4030007@linux.intel.com> (raw)
In-Reply-To: <CAErSpo4oignSpK-LCLO=deW_FZ-V58GUhBxJ5uvmXe4DYo4WdA@mail.gmail.com>
On 2015/9/10 3:11, Bjorn Helgaas wrote:
> On Tue, Sep 8, 2015 at 11:49 AM, Jiang Liu <jiang.liu@linux.intel.com> wrote:
>> Hi Bjorn,
>> We have used another draft version to fix this issue by changing
>> eata driver as below. But that needs to export pcibios_alloc_irq. And
>> I'm not sure whether there are other drivers having the same behavior.
>> If we think it's a legacy behavior and only a few drivers may have
>> such a behavior, I prefer changing drivers to fix the issue too.
>
> Did you look at changing the driver to use pci_register_driver()? I
> bet it's pretty straightforward.
Hi Bjorn,
I have done some investigation. It's doable, but the change
may be a little bigger. Will send the patch out for comments once
it's done.
Thanks!
Gerry
>
>> drivers/pci/pci-driver.c | 1 +
>> drivers/scsi/eata.c | 2 ++
>> 2 files changed, 3 insertions(+)
>>
>> diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
>> index 52a880ca1768..17d2a0b1de18 100644
>> --- a/drivers/pci/pci-driver.c
>> +++ b/drivers/pci/pci-driver.c
>> @@ -392,6 +392,7 @@ int __weak pcibios_alloc_irq(struct pci_dev *dev)
>> {
>> return 0;
>> }
>> +EXPORT_SYMBOL_GPL(pcibios_alloc_irq);
>>
>> void __weak pcibios_free_irq(struct pci_dev *dev)
>> {
>> diff --git a/drivers/scsi/eata.c b/drivers/scsi/eata.c
>> index 227dd2c2ec2f..7e6eaf867987 100644
>> --- a/drivers/scsi/eata.c
>> +++ b/drivers/scsi/eata.c
>> @@ -1061,6 +1061,7 @@ static void enable_pci_ports(void)
>> driver_name, dev->bus->number, dev->devfn);
>> #endif
>>
>> + pcibios_alloc_irq(dev);
>> if (pci_enable_device(dev))
>> printk
>> ("%s: warning, pci_enable_device failed, bus %d devfn 0x%x.\n",
>> @@ -1520,6 +1521,7 @@ static void add_pci_ports(void)
>> if (!(dev = pci_get_class(PCI_CLASS_STORAGE_SCSI << 8, dev)))
>> break;
>>
>> + pcibios_alloc_irq(dev);
>> if (pci_enable_device(dev)) {
>> #if defined(DEBUG_PCI_DETECT)
>> printk
>>
>>
>>>
>>>> return pci_enable_resources(dev, mask);
>>>> }
>>>>
>>>> --
>>>> 1.7.10.4
>>>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
next prev parent reply other threads:[~2015-09-10 8:58 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-06 6:28 eata fails to load on post 4.2 kernels Arthur Marsh
2015-09-06 9:04 ` Arthur Marsh
2015-09-06 11:37 ` Arthur Marsh
2015-09-06 20:31 ` Arthur Marsh
2015-09-07 3:06 ` Jiang Liu
[not found] ` <55ED2DFA.6030502@internode.on.net>
2015-09-07 9:24 ` Fwd: " Arthur Marsh
2015-09-08 5:19 ` Jiang Liu
2015-09-08 6:32 ` Arthur Marsh
2015-09-08 6:37 ` Jiang Liu
2015-09-08 7:26 ` [Bugfix] PCI, x86: Correctly allocate IRQs for PCI devices managed by non-PCI drivers Jiang Liu
2015-09-08 9:03 ` Arthur Marsh
2015-09-08 9:44 ` Jiang Liu
2015-09-08 16:27 ` Bjorn Helgaas
2015-09-08 16:49 ` Jiang Liu
2015-09-09 19:11 ` Bjorn Helgaas
2015-09-10 8:58 ` Jiang Liu [this message]
2015-09-14 3:08 ` [Bugfix 0/3] Convert eata driver to a normal PCI device driver Jiang Liu
2015-09-14 3:08 ` [Bugfix 1/3] eata: Use IDA to manage eata board IDs Jiang Liu
2015-09-14 8:08 ` Hannes Reinecke
2015-09-14 8:08 ` Hannes Reinecke
2015-09-14 3:08 ` [Bugfix 2/3] eata: Implement PCI driver to manage eata PCI devices Jiang Liu
2015-09-14 8:17 ` Hannes Reinecke
2015-09-14 8:31 ` Jiang Liu
2015-09-14 3:08 ` [Bugfix 3/3] eata: Enhance eata driver to support PCI device hot-removal Jiang Liu
2015-09-14 8:21 ` Hannes Reinecke
2015-09-14 8:31 ` Ballabio, Dario
2015-09-14 8:33 ` Jiang Liu
2015-09-16 13:42 ` Christoph Hellwig
2015-09-17 6:49 ` Jiang Liu
2015-09-18 15:08 ` Arthur Marsh
2015-09-22 7:30 ` [RFT v3] eata: Convert eata driver as normal PCI and platform device drivers Jiang Liu
2015-09-22 20:27 ` Hannes Reinecke
2015-09-22 22:25 ` Arthur Marsh
2015-09-22 22:45 ` James Bottomley
2015-09-22 23:36 ` Arthur Marsh
2015-09-23 5:24 ` Jiang Liu
2015-09-23 10:44 ` Arthur Marsh
2015-09-23 14:40 ` James Bottomley
2015-09-24 4:28 ` Jiang Liu
2015-09-24 5:56 ` Arthur Marsh
2015-09-26 6:27 ` Arthur Marsh
2015-10-03 8:11 ` Jiang Liu
2015-10-03 11:14 ` Arthur Marsh
2015-10-05 8:29 ` Arthur Marsh
2015-09-14 16:01 ` [Bugfix 0/3] Convert eata driver to a normal PCI device driver Arthur Marsh
2015-09-15 2:31 ` Jiang Liu
2015-09-15 7:19 ` Arthur Marsh
2015-09-16 5:07 ` Jiang Liu
2015-09-16 7:37 ` Arthur Marsh
2015-09-16 8:21 ` Jiang Liu
2015-09-16 11:29 ` Arthur Marsh
2015-09-09 19:04 ` [Bugfix] PCI, x86: Correctly allocate IRQs for PCI devices managed by non-PCI drivers Arthur Marsh
2015-09-10 7:50 ` eata fails to load on post 4.2 kernels Arthur Marsh
2015-09-10 8:13 ` Jiang Liu
2015-09-10 9:00 ` Arthur Marsh
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=55F14619.4030007@linux.intel.com \
--to=jiang.liu@linux.intel.com \
--cc=arthur.marsh@internode.on.net \
--cc=bhelgaas@google.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.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.