On Thu, May 28, 2015 at 10:40:00PM -0700, Yinghai Lu wrote: > In d74b9027a4da ("PCI: Consider additional PF's IOV BAR alignment in sizing > and assigning"), it stores additional alignment in realloc_head and takes > this into consideration for assignment. > During update the resource before reordering, it does not calculate > resource end correctly. > > We need to keep the original resource size before updating start. > otherwise we will smaller size during updating end. > > Fixes: d74b9027a4da ("PCI: Consider additional PF's IOV BAR alignment in sizing and assigning") > Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> > Cc: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx> > Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> I applied this with the following changelog, included here so search engines can find the original thread: PCI: Preserve resource size during alignment reordering In d74b9027a4da ("PCI: Consider additional PF's IOV BAR alignment in sizing and assigning"), we store additional alignment in realloc_head and take this into consideration for assignment. In __assign_resources_sorted(), we changed dev_res->res->start, then used resource_start() (which depends on res->start), so the recomputed res->end was completely bogus. Even if we'd had the correct size, the end would have been off by one. Preserve the resource size when we adjust its alignment. [bhelgaas: changelog] Fixes: d74b9027a4da ("PCI: Consider additional PF's IOV BAR alignment in sizing and assigning") Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> Acked-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx> CC: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> -- 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