From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Martin Mokrejs <mmokrejs@fold.natur.cuni.cz>
Cc: Yinghai Lu <yinghai@kernel.org>, Myron Stowe <mstowe@redhat.com>,
Jiang Liu <liuj97@gmail.com>, Jiang Liu <jiang.liu@huawei.com>,
Yijing Wang <wangyijing@huawei.com>,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
Myron Stowe <myron.stowe@redhat.com>,
bhelgaas <bhelgaas@google.com>
Subject: Re: [PATCH v3 3/6] ACPI/pci_slot: update PCI slot information when PCI hotplug event happens
Date: Fri, 11 Jan 2013 13:07:07 +0100 [thread overview]
Message-ID: <5909244.EGY0dYuDSG@vostro.rjw.lan> (raw)
In-Reply-To: <50EFF27F.6030802@fold.natur.cuni.cz>
On Friday, January 11, 2013 12:07:43 PM Martin Mokrejs wrote:
> Hi,
> I just hit this thread in my bloated Inbox.
>
> Rafael J. Wysocki wrote:
> > On Thursday, January 10, 2013 03:03:53 PM Yinghai Lu wrote:
> >> On Thu, Jan 10, 2013 at 1:50 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> >>> Well, I don't see what functional problems that can bring.
> >>>
> >>> In theory people may want to have them as modules to avoid loading them on
> >>> systems that don't use PCI hotplug, but honestly I think that the complexity
> >>> this causes us to deal with is not worth it.
> >>>
> >>> Moreover, removing the modularity may actually allow us to solve some ordering
> >>> issues once and for good.
> >>
> >> No, the world is not really ideal yet.
> >>
> >> looks like laptops have problem with pci express cards.
> >>
> >> when pciehp is used, surprise insert/removal does not work because
> >> PresDect does not change properly, so no interrupt is generated.
> >> --- i suspects that is silicon problem.
>
> That's what seemed to be the conclusion half a year ago around 3.2.x/3.3.x
> for my issues as well (SandyBridge C6/C200 chipset).
>
> >>
> >> but when acpiphp is used, that surprise insert/removal is working.
>
> That's what I discovered few days ago as well. However, there are still some
> differences between individual express cards and I just need to find some time to
> dig through the data I collected.
>
> >>
> >> some laptop like thinkpad, just don't give osc to kernel..
> >> [ 0.505117] pci0000:00: Requesting ACPI _OSC control (0x1d)
> >> [ 0.505413] pci0000:00: ACPI _OSC request failed (AE_SUPPORT),
> >> returned control mask: 0x0d
> >> [ 0.505517] ACPI _OSC control for PCIe not granted, disabling ASPM
> >>
> >> and other laptop give that to kernel, in recent kernel will not give
> >> acpiphp to have that slot, because it want to hold that for pciehp.
> >> poor user have to pass 'pci_aspm=off" to disable _OSC for all.
> >> --- please check the mail that i forward to you yesterday.
> >
> > Yes, this is a bug, but I'm not sure how to fix it yet.
>
> Looks like what I see with Dell Vostro 3550 as well.
>
> >
> >> Anyway, we do need to let the user to have choice to use acpiphp and pciehp.
> >> and it should be first come and first serve policy.
> >
> > And that's why you think they should be modules? I disagree if so.
>
> For me it is easier to cold boot with a card plugged in and fiddle later with
> hotplug if I want to unload the card. Until that, I can inspect wheteher PresDet
> really reports the card is in, and the see if system reports same after loading
> acpiphp or pciehp. I wouldn't drop the possibility to have them as modules, at
> least for now when finally we have some clue what is going on and can load the
> modules as we want while chasing the bugs.
The problem with modules is that the initialization ordering depends on the
order in which the modules are loaded. If there are two modules, there are 2
different ways, if there are 3 modules, there are 6 ways and so on. You get
the idea. :-)
Now, we need to take all of the possible orderings in the code and that's
quite complicated. Also it is easy to leave one ordering untested if the
distro you use for testing happens to prefer a different one. So the fact that
they are modules very well may be the _source_ of the problems you're seeing.
Thanks,
Rafael
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
next prev parent reply other threads:[~2013-01-11 12:01 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-25 14:29 [PATCH v3 1/7] PCI: make PCI device create/destroy logic symmetric Jiang Liu
2012-09-25 14:29 ` [PATCH v3 2/7] PCI: split registration of PCI bus devices into two stages Jiang Liu
2012-09-25 14:29 ` [PATCH v3 3/7] ACPI/pci_bind: correctly update binding relationship for PCI hotplug Jiang Liu
2013-01-08 0:05 ` Bjorn Helgaas
2013-01-08 16:52 ` [PATCH v3 0/6] Update PCI notification patchset to latest kernel version Jiang Liu
2013-01-08 18:30 ` Yinghai Lu
2013-01-09 9:11 ` Yijing Wang
2013-01-08 16:52 ` [PATCH v3 1/6] PCI: make PCI device create/destroy logic symmetric Jiang Liu
2013-01-08 16:52 ` [PATCH v3 2/6] PCI: split registration of PCI bus devices into two stages Jiang Liu
2013-01-08 23:29 ` Rafael J. Wysocki
2013-01-09 16:10 ` Jiang Liu
2013-01-08 16:52 ` [PATCH v3 3/6] ACPI/pci_slot: update PCI slot information when PCI hotplug event happens Jiang Liu
2013-01-09 0:01 ` Rafael J. Wysocki
2013-01-09 16:58 ` Jiang Liu
2013-01-09 20:19 ` Rafael J. Wysocki
2013-01-09 20:44 ` Bjorn Helgaas
2013-01-09 21:00 ` Rafael J. Wysocki
2013-01-10 21:24 ` Myron Stowe
2013-01-10 21:50 ` Rafael J. Wysocki
2013-01-10 23:03 ` Yinghai Lu
2013-01-10 23:39 ` Rafael J. Wysocki
2013-01-10 23:40 ` Yinghai Lu
2013-01-10 23:59 ` Rafael J. Wysocki
2013-01-11 18:06 ` Bjorn Helgaas
2013-01-11 20:46 ` Rafael J. Wysocki
2013-01-11 11:07 ` Martin Mokrejs
2013-01-11 12:07 ` Rafael J. Wysocki [this message]
2013-01-08 16:52 ` [PATCH v3 4/6] PCI/acpiphp: update ACPI hotplug slot information when PCI hotplug happens Jiang Liu
2013-01-09 0:04 ` Rafael J. Wysocki
2013-01-09 16:29 ` Jiang Liu
2013-01-09 20:23 ` Rafael J. Wysocki
2013-01-13 15:13 ` Jiang Liu
2013-01-13 20:33 ` Rafael J. Wysocki
2013-01-08 16:52 ` [PATCH v3 5/6] PCI/acpiphp: serialize access to the bridge_list list Jiang Liu
2013-01-08 16:52 ` [PATCH v3 6/6] PCI/AER: update AER configuration when PCI hotplug event happens Jiang Liu
2012-09-25 14:29 ` [PATCH v3 4/7] ACPI/pci-bind: remove bind/unbind callbacks from acpi_device_ops Jiang Liu
2012-09-25 14:29 ` [PATCH v3 5/7] ACPI/pci_slot: update PCI slot information when PCI hotplug event happens Jiang Liu
2012-09-25 14:29 ` [PATCH v3 6/7] PCI/acpiphp: update ACPI hotplug slot information when PCI hotplug happens Jiang Liu
2012-09-25 14:29 ` [PATCH v3 7/7] PCI/acpiphp: serialize access to the bridge_list list Jiang Liu
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=5909244.EGY0dYuDSG@vostro.rjw.lan \
--to=rjw@sisk.pl \
--cc=bhelgaas@google.com \
--cc=jiang.liu@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=liuj97@gmail.com \
--cc=mmokrejs@fold.natur.cuni.cz \
--cc=mstowe@redhat.com \
--cc=myron.stowe@redhat.com \
--cc=wangyijing@huawei.com \
--cc=yinghai@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox