On Wed, Apr 10, 2024 at 11:01:34AM +0300, Daniil Tatianin wrote:
Previously we would unconditionally lower the alignment for large BARs in case their alignment was greater than "pci_mem64_top >> 11", this would make it impossible to use these devices by the kernel: [ 13.821108] pci 0000:9c:00.0: can't claim BAR 1 [mem 0x66000000000-0x67fffffffff 64bit pref]: no compatible bridge window
128G bar. Wow. May I ask what device this is?
u64 top_align = pci_mem64_top >> 11; if (hotplug_support && pci_pad_mem64 && is64
&& (type == PCI_REGION_TYPE_PREFMEM))
align = pci_mem64_top >> 11;
&& (type == PCI_REGION_TYPE_PREFMEM) && (top_align > align))
align = top_align;
Makes sense.
Reviewed-by: Gerd Hoffmann kraxel@redhat.com
take care, Gerd