linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Guenter Roeck <linux@roeck-us.net>
Cc: Yuanquan Chen <Yuanquan.Chen@freescale.com>,
	Hiroo Matsumoto <matsumoto.hiroo@jp.fujitsu.com>,
	linux-kernel@vger.kernel.org, Paul Mackerras <paulus@samba.org>,
	Chen Yuanquan-B41889 <B41889@freescale.com>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH] powerpc/pci: Improve device hotplug initialization
Date: Thu, 06 Jun 2013 11:00:04 +1000	[thread overview]
Message-ID: <1370480404.3766.260.camel@pasglop> (raw)
In-Reply-To: <20130601135809.GA6395@roeck-us.net>

On Sat, 2013-06-01 at 06:58 -0700, Guenter Roeck wrote:
> the comment was actuially directed towards Yuanquan.
> 
> No problem, take your time. I did my best to test it, but I agree that this is a
> critical area of the code, and it would be desirable to get additional scrutiny
> and test feedback.
> 
> The code has been running in our system (P2020 and P5040) for several months.
> I was preparing a patch for upstream submission when I noticed commit 37f02195b.
> After testing ithis commit, I noticed the problems with it and wrote this patch,
> which aligns the code with our initial patch. I tested it as good as I could on
> our systems as well as with a P5040 evaluation board and an Intel GE PCIe
> card.

Ok, so I like this very much. So much that I was considering still sneaking it
into 3.10, until I hit a snag...

[ Basically, the previous patch that moved the setup to pcibios_enable_device()
always made me nervous. It did regress at least one platform (mac stuff) due
to missed IRQ fixup, which I worked around later on, and I'm still not terribly
happy about it. Your approach is much cleaner. ]

I suppose that when I wrote the original setup stuff there wasn't an add
hook or I didn't see it...

In fact I would go further and completely remove pcibios_setup_bus_devices()
which is now empty since it's only called by the powerpc code, it's not
a generic hook.

However, here's the snag. Unless I missed something, we now setup the devices
DMA before we call pcibios_fixup_bus(). And *that* is going to break some
pseries.

We have an assumption in there that the bus fixup is done first, because in
some cases, the DMA windows are established at the bus level, and the "dev"
setup just picks up the bits.

Now looking at that code, it's not unfixable but it won't make 3.10. Maybe
we need a new pre-scan hook for busses... we can use the pcibios_add_device()
hook of the bridge itself for P2P but that won't do for the root bus and I
don't like having two different path here...

Cheers,
Ben.

  parent reply	other threads:[~2013-06-06  1:00 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-28 17:35 [PATCH] powerpc/pci: Improve device hotplug initialization Guenter Roeck
2013-05-29  9:30 ` Chen Yuanquan-B41889
2013-05-31  5:14   ` Guenter Roeck
2013-05-31  5:44     ` Benjamin Herrenschmidt
2013-06-01 13:58       ` Guenter Roeck
2013-06-03  2:28         ` Chen Yuanquan-B41889
2013-06-03  4:11           ` Guenter Roeck
2013-06-06  1:00         ` Benjamin Herrenschmidt [this message]
2013-06-06  5:25           ` Guenter Roeck
2013-06-06  5:44             ` Benjamin Herrenschmidt

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=1370480404.3766.260.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=B41889@freescale.com \
    --cc=Yuanquan.Chen@freescale.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=matsumoto.hiroo@jp.fujitsu.com \
    --cc=paulus@samba.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).