Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757150Ab2FFQSj (ORCPT ); Wed, 6 Jun 2012 12:18:39 -0400 Received: from mail-lb0-f174.google.com ([209.85.217.174]:53319 "EHLO mail-lb0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754113Ab2FFQSg convert rfc822-to-8bit (ORCPT ); Wed, 6 Jun 2012 12:18:36 -0400 MIME-Version: 1.0 In-Reply-To: <1338975852.5858.2.camel@Nokia-N900> References: <1337754877-19759-1-git-send-email-yinghai@kernel.org> <20120525043651.GA1391@google.com> <20120525193716.GA8817@google.com> <4FC50E09.4000204@zytor.com> <4FC51D79.6010804@zytor.com> <4FC536A5.6020600@zytor.com> <1338975852.5858.2.camel@Nokia-N900> From: Bjorn Helgaas Date: Wed, 6 Jun 2012 09:18:13 -0700 Message-ID: Subject: Re: [PATCH 02/11] PCI: Try to allocate mem64 above 4G at first To: Steven Newbury Cc: Yinghai Lu , "H. Peter Anvin" , David Miller , Tony Luck , Linus Torvalds , Andrew Morton , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT X-System-Of-Record: true Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2675 Lines: 46 On Wed, Jun 6, 2012 at 2:44 AM, Steven Newbury wrote: > On Tue,? ?5 Jun 2012, 06:04:57 BST, Yinghai Lu wrote: >> > Linux has a long history of allocating bottom-up. ?Windows has a long >> > history of allocating top-down. ?You're proposing a third alternative, >> > allocating bottom-up starting at 4GB for 64-bit BARs. ?If we change >> > this area, I would prefer something that follows Windows because I >> > think it will be closer to what's been tested by Windows. ?Do you >> > think your alternative is better? >> >> hope we can figure out how windows is making it work. >> >> Steve, Can you check if Windows is working with your test case ? >> >> If it works, we may try do the same thing from Linux, so you will not >> need to append "pci=nocrs pci=alloc_high"... >> > Unfortunately I don't have a 64 bit version of Windows to test with. ?Vista(32 bit) fails to even boot when docked, hot-plugging fails to allocate resources, but at least doesn't crash. > > From what I've read about the (64 bit) Windows allocation stragegy it's closer to Yinghai's method than the Linux default, preferring 64 bit resources (>4G) when possible. ?I'll try to find the specification document again. Here's the host bridge info from the BIOS (from https://bugzilla.kernel.org/show_bug.cgi?id=10461 attachment https://bugzilla.kernel.org/attachment.cgi?id=72869): ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] pci_root PNP0A03:00: host bridge window [io 0x0d00-0xffff] pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000dffff] pci_root PNP0A03:00: host bridge window [mem 0xe0000000-0xf7ffffff] pci_root PNP0A03:00: host bridge window [mem 0xfc000000-0xfebfffff] pci_root PNP0A03:00: host bridge window [mem 0xfec10000-0xfecfffff] pci_root PNP0A03:00: host bridge window [mem 0xfed1c000-0xfed1ffff] pci_root PNP0A03:00: host bridge window [mem 0xfed90000-0xfed9ffff] pci_root PNP0A03:00: host bridge window [mem 0xfed40000-0xfed44fff] pci_root PNP0A03:00: host bridge window [mem 0xfeda7000-0xfedfffff] pci_root PNP0A03:00: host bridge window [mem 0xfee10000-0xff9fffff] pci_root PNP0A03:00: host bridge window [mem 0xffc00000-0xffdfffff] There's no aperture above 4GB. So I don't think any version of Windows will ever assign a BAR above 4GB. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/