On Fri, Feb 20, 2009 at 01:55:57PM +0100, Ingo Molnar wrote: > The principle of probing + tearing down the mem64 resource if no > bridge is 64-bit looks worth trying, but i'd suggest a different > code structure to better handle true 32-bit systems built with > 32-bit resource_size_t: > > - move this new code into a new file, arch/x86/pci/dac_64bit.c > > - build this file only if CONFIG_PHYS_ADDR_T_64BIT is set > > - add inline functions for pcibios_pci64_setup() and > pcibios_pci64_verify() in the !CONFIG_PHYS_ADDR_T_64BIT case. Agreed on all points, thanks Ingo. > Furthermore, the filenames are very confusing in the > arch/x86/pci/ directory and should be cleaned up ASAP. At > minimum we should do: > > git mv arch/x86/pci/pcbios.c arch/x86/pci/bios_32.c > git mv arch/x86/pci/i386.c arch/x86/pci/bios.c > > (and fix up the Makefile.) There's nothing 32-bit about > "i386.c", the 64-bit x86 platform code uses it too! Makes sense, but that's perhaps up to Jesse. > Also, this one: > > > + if (insert_resource(root, r64)) { > > + printk(KERN_WARNING "PCI: Failed to allocate PCI64 space\n"); > > + return; > > + } > > Should be a more prominent WARN(), not a printk. We can only hit > this path if the x86 platform and the PCI probing code is buggy, > and we want to fix such bugs. OK. Ivan. -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html