On Tue, Dec 09, 2014 at 11:11:19AM +1100, Gavin Shan wrote: >On Mon, Dec 08, 2014 at 03:59:54PM -0800, Yinghai Lu wrote: >>On Mon, Dec 8, 2014 at 2:56 PM, Benjamin Herrenschmidt >><benh@xxxxxxxxxxxxxxxxxxx> wrote: >>> On Mon, 2014-12-08 at 13:52 -0800, Yinghai Lu wrote: >>>> 2. or scan the children resource other than ROM to clear bridge MEM_64 >>>> for mmio pref. >>>> >>>> The patch is using second way so will keep child mmio pref into bridge >>>> mmio pref range. >>> >>> That means that having a single ROM BAR that is 32-bit and prefetchable >>> will downgrade the entire window to 32-bit ? That's not going to work >>> either. >> >>the ROM BAR get skipped during the checking. >> >>+ if (i != PCI_ROM_RESOURCE) >>+ mem64_mask &= r->flags & IORESOURCE_MEM_64; >>+ } >> >>> >>> I have GPUs with 16G BARs for example... suddenly they don't fit >>> anaymore because we downgraded the window to 32 bit because somewhere >>> there's a 32-bit pref resource ? >>> >>> That will break more than it fixes... >> >>Please check if this patch break your platform. I tried on my setup on >>x86. and it is still >>working on 64 bit resource allocation. >> > >I'm going to give it a spin and Richard, could you please apply Yinghai's >patch to see if your SRIOV code can work properly? > Yinghai & Gavin, I did a quick test on my machine. This patch doesn't affect the MMIO allocation on out platform, so SRIOV works fine. I will spend more time to read the patch to get more understanding about the problem. >Thanks, >Gavin -- Richard Yang Help you, Help me -- 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