Re: [PATCH v3 25/51] PCI: Fix size calculation with old_size on rescan path
From: Yinghai Lu
Date: Wed Aug 19 2015 - 02:25:29 EST
On Mon, Aug 17, 2015 at 9:09 PM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote:
> On Mon, Jul 27, 2015 at 04:29:43PM -0700, Yinghai Lu wrote:
>> On booting path, we don't pass realloc at first, and treat all optional just
>> as must, in some case we can smaller size/align with optional than must only.
>>
>> 04:00.0 has four child bridges: 05:01.0, 05:02.0, 05:03.0, 05:04.0
>> pref layout after booting path like followings:
>>
>> pci 0000:04:00.0: BAR 9: assigned [mem 0x84000000-0x9fffffff 64bit pref]
>> pci 0000:05:04.0: BAR 9: assigned [mem 0x88000000-0x9fffffff 64bit pref]
>> pci 0000:05:03.0: BAR 9: assigned [mem 0x84000000-0x841fffff 64bit pref]
>> pci 0000:07:00.0: BAR 0: assigned [mem 0x81200000-0x8123ffff 64bit]
>> pci 0000:05:03.0: PCI bridge to [bus 08-0f]
>> pci 0000:05:03.0: bridge window [mem 0x84000000-0x841fffff 64bit pref]
>> pci 0000:10:00.0: BAR 0: assigned [mem 0x90000000-0x9fffffff 64bit pref]
>> pci 0000:10:00.0: BAR 2: assigned [mem 0x88000000-0x8800ffff 64bit pref]
>> pci 0000:05:04.0: PCI bridge to [bus 10]
>> pci 0000:05:04.0: bridge window [mem 0x88000000-0x9fffffff 64bit pref]
>> pci 0000:04:00.0: PCI bridge to [bus 05-10]
>> pci 0000:04:00.0: bridge window [mem 0x84000000-0x9fffffff 64bit pref]
>
> Unless 07:00.0 and 10:00.0 are relevant, please remove them.
ok
>
>> so the old size in rescan for 04:00.0 would be 0x1c000000, and align is 0x4000000
>>
>> during remove and rescan:
>>
>> pci 0000:05:03.0: bridge window [mem 0x00000000-0xffffffffffffffff 64bit pref] to [bus 08-0f] add_size 200000 add_align 100000 alt_size 0 alt_align 0 must_size 0 must_align 0
>
> What is "[mem 0x00000000-0xffffffffffffffff 64bit pref]" telling us?
> Surely that's not an actual aperture, is it?
required size is 0, the optional only resources.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/