From: Pingfan Liu <kernelfans@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: Pingfan Liu <kernelfans@gmail.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Grygorii Strashko <grygorii.strashko@ti.com>,
Christoph Hellwig <hch@infradead.org>,
Bjorn Helgaas <helgaas@kernel.org>,
Dave Young <dyoung@redhat.com>,
linux-pci@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: [PATCHv2 0/2] drivers/base: bugfix for supplier<-consumer ordering in device_kset
Date: Mon, 25 Jun 2018 15:47:37 +0800 [thread overview]
Message-ID: <1529912859-10475-1-git-send-email-kernelfans@gmail.com> (raw)
commit 52cdbdd49853 ("driver core: correct device's shutdown order")
places an assumption of supplier<-consumer order on the process of probe.
But it turns out to break down the parent <- child order in some scene.
E.g in pci, a bridge is enabled by pci core, and behind it, the devices
have been probed. Then comes the bridge's module, which enables extra
feature(such as hotplug) on this bridge.
This will break the parent<-children order and cause failure when
"kexec -e" in some scenario.
I tried to fix this issue in pci subsystem, and it turns out to be wrong.
Thanks to Christoph Hellwig, he enlightens me that it should be a bug in
driver core.
note: This series has some lock issue, should be fixed in next version
v1 -> v2:
refragment
Pingfan Liu (2):
drivers/base: only reordering consumer device when probing
drivers/base: reorder consumer and its children behind suppliers
drivers/base/base.h | 1 +
drivers/base/core.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++
drivers/base/dd.c | 9 +---
3 files changed, 138 insertions(+), 7 deletions(-)
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Bjorn Helgaas <helgaas@kernel.org>
Cc: Dave Young <dyoung@redhat.com>
Cc: linux-pci@vger.kernel.org
Cc: linuxppc-dev@lists.ozlabs.org
--
2.7.4
next reply other threads:[~2018-06-25 7:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-25 7:47 Pingfan Liu [this message]
2018-06-25 7:47 ` [PATCHv2 1/2] drivers/base: only reordering consumer device when probing Pingfan Liu
2018-06-25 7:47 ` [PATCHv2 2/2] drivers/base: reorder consumer and its children behind suppliers Pingfan Liu
2018-06-25 10:45 ` Greg Kroah-Hartman
2018-06-26 3:29 ` Pingfan Liu
2018-06-26 11:54 ` Greg Kroah-Hartman
2018-07-03 6:48 ` Pingfan 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=1529912859-10475-1-git-send-email-kernelfans@gmail.com \
--to=kernelfans@gmail.com \
--cc=dyoung@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=grygorii.strashko@ti.com \
--cc=hch@infradead.org \
--cc=helgaas@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.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).