From: "Christian König" <ckoenig.leichtzumerken@gmail.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
Boris Ostrovsky <boris.ostrovsky@oracle.com>,
Juergen Gross <jgross@suse.com>,
xen-devel <xen-devel@lists.xen.org>
Subject: Re: [PATCH] x86/PCI: limit the size of the 64bit BAR to 256GB
Date: Tue, 12 Dec 2017 19:38:51 +0100 [thread overview]
Message-ID: <ca0ac4ea-59cd-375c-f0ef-a80b2eb6deb0@gmail.com> (raw)
In-Reply-To: <20171212181237.GD53955@bhelgaas-glaptop.roam.corp.google.com>
Am 12.12.2017 um 19:12 schrieb Bjorn Helgaas:
> [+cc Boris, Juergen, xen-devel]
>
> On Mon, Dec 11, 2017 at 04:04:52PM +0100, Christian König wrote:
>> Xen hides a bit of system memory from the OS for its own purpose by
>> intercepting e820. This memory is unfortunately not reported as
>> reserved, but rather completely invisible.
>>
>> Avoid this address space collision and possible similar problems by
>> limiting the size of the newly allocated root hub window to 256GB which
>> should be sufficient for the short term.
> It sounds like Boris is working on a more complete fix, so I'm going
> to drop this for now. This changelog includes a few more details, but
> I think it makes implicit assumptions about where memory and holes
> are and how big they are, and it's still not clear why 256GB is the
> right number. Is it connected to the expected size of the BAR, or
> related somehow to the size of the hole?
256GB was just an arbitrary number I've thought should work for at least
my use case.
And yes Boris is working on a more complete and cleaner fix. I agree
that we can completely drop my patch for now.
> If we need this as a short-term workaround, we can do that, but I
> would like to include a reference to f5775e0b6116 ("x86/xen: discard
> RAM regions above the maximum reservation") and somehow make what's
> going on here a little more explicit.
That patch looks more like it only applies to Xen guests, but not dom0.
But take that with a grain of salt I really don't know anything about
that code.
Christian.
>
>> Signed-off-by: Christian König <christian.koenig@amd.com>
>> ---
>> arch/x86/pci/fixup.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/pci/fixup.c b/arch/x86/pci/fixup.c
>> index 8f86060f5cf6..ed8bc6ab0573 100644
>> --- a/arch/x86/pci/fixup.c
>> +++ b/arch/x86/pci/fixup.c
>> @@ -702,7 +702,7 @@ static void pci_amd_enable_64bit_bar(struct pci_dev *dev)
>> res->name = "PCI Bus 0000:00";
>> res->flags = IORESOURCE_PREFETCH | IORESOURCE_MEM |
>> IORESOURCE_MEM_64 | IORESOURCE_WINDOW;
>> - res->start = 0x100000000ull;
>> + res->start = 0xbd00000000ull;
>> res->end = 0xfd00000000ull - 1;
>>
>> /* Just grab the free area behind system memory for this */
>> --
>> 2.11.0
>>
next prev parent reply other threads:[~2017-12-12 18:38 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-11 15:04 Christian König
2017-12-12 18:12 ` Bjorn Helgaas
2017-12-12 18:38 ` Christian König [this message]
2017-12-12 18:49 ` Boris Ostrovsky
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=ca0ac4ea-59cd-375c-f0ef-a80b2eb6deb0@gmail.com \
--to=ckoenig.leichtzumerken@gmail.com \
--cc=boris.ostrovsky@oracle.com \
--cc=christian.koenig@amd.com \
--cc=helgaas@kernel.org \
--cc=jgross@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=xen-devel@lists.xen.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
all inboxes | Powered by JetHome®