From: "Derrick, Jonathan" <jonathan.derrick@intel.com>
To: "helgaas@kernel.org" <helgaas@kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"lorenzo.pieralisi@arm.com" <lorenzo.pieralisi@arm.com>,
"okaya@codeaurora.org" <okaya@codeaurora.org>,
"sbates@raithlin.com" <sbates@raithlin.com>,
"logang@deltatee.com" <logang@deltatee.com>,
"mika.westerberg@linux.intel.com"
<mika.westerberg@linux.intel.com>,
"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
"Busch, Keith" <keith.busch@intel.com>
Subject: Re: [PATCH] PCI: Equalize hotplug memory for non/occupied slots
Date: Tue, 14 Aug 2018 18:20:34 +0000 [thread overview]
Message-ID: <1534270827.4361.3.camel@intel.com> (raw)
In-Reply-To: <20180814181634.GQ113140@bhelgaas-glaptop.roam.corp.google.com>
[-- Attachment #1: Type: text/plain, Size: 1658 bytes --]
On Tue, 2018-08-14 at 13:16 -0500, Bjorn Helgaas wrote:
> On Wed, Jul 25, 2018 at 05:02:59PM -0600, Jon Derrick wrote:
> > Currently, a hotplug bridge will be given hpmemsize additional
> > memory if
> > available, in order to satisfy any future hotplug allocation
> > requirements.
> >
> > These calculations don't consider the current memory size of the
> > hotplug
> > bridge/slot, so hotplug bridges/slots which have downstream devices
> > will
> > get their current allocation in addition to the hpmemsize value.
> >
> > This makes for possibly undesirable results with a mix of
> > unoccupied and
> > occupied slots (ex, with hpmemsize=2M):
> >
> > 02:03.0 PCI bridge: <-- Occupied
> > Memory behind bridge: d6200000-d64fffff [size=3M]
> > 02:04.0 PCI bridge: <-- Unoccupied
> > Memory behind bridge: d6500000-d66fffff [size=2M]
> >
> > This change considers the current allocation size when using the
> > hpmemsize parameter to make the reservations predictable for the
> > mix of
> > unoccupied and occupied slots:
> >
> > 02:03.0 PCI bridge: <-- Occupied
> > Memory behind bridge: d6200000-d63fffff [size=2M]
> > 02:04.0 PCI bridge: <-- Unoccupied
> > Memory behind bridge: d6400000-d65fffff [size=2M]
>
> The I/O sizing code (pbus_size_io() and calculate_iosize()) is
> essentially
> identical to the mem sizing code you're updating. I assume the same
> considerations would apply there? If not, please include a note in
> the
> changelog about why you changed the mem code but not the I/O code.
>
Thanks for the look Bjorn.
I'll follow-up with v2 set with an I/O patch in a few days
[snip]
[-- Attachment #2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 3278 bytes --]
prev parent reply other threads:[~2018-08-14 18:20 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-25 23:02 [PATCH] PCI: Equalize hotplug memory for non/occupied slots Jon Derrick
2018-08-14 16:12 ` Derrick, Jonathan
2018-08-14 18:16 ` Bjorn Helgaas
2018-08-14 18:20 ` Derrick, Jonathan [this message]
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=1534270827.4361.3.camel@intel.com \
--to=jonathan.derrick@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=helgaas@kernel.org \
--cc=keith.busch@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=logang@deltatee.com \
--cc=lorenzo.pieralisi@arm.com \
--cc=mika.westerberg@linux.intel.com \
--cc=okaya@codeaurora.org \
--cc=sbates@raithlin.com \
/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.