MdeModulePkg/PciBus: Fix bug that PCI BUS claims too much resource
authorRuiyu Ni <ruiyu.ni@intel.com>
Fri, 20 Oct 2017 09:55:01 +0000 (17:55 +0800)
committerRuiyu Ni <ruiyu.ni@intel.com>
Mon, 23 Oct 2017 07:50:55 +0000 (15:50 +0800)
commit6e3287442774c1a4bc83f127694700eeb07c18dc
tree9ad5b76c124281424e643434b4fcf9714a72e0d1
parente00e0dd7228c00b27cea5de9ed061576d2cd85b5
MdeModulePkg/PciBus: Fix bug that PCI BUS claims too much resource

The bug was caused by 728d74973c9262b6c7b7ef4be213223d55affec3
"MdeModulePkg/PciBus: Count multiple hotplug resource paddings".

The patch firstly updated the Bridge->Alignment to the maximum
alignment of all devices under the bridge, then aligned the
Bridge->Length to Bridge->Alignment.
It caused too much resources were claimed.

The new patch firstly aligns Bridge->Length to Bridge->Alignment,
then updates the Bridge->Alignment to the maximum alignment of all
devices under the bridge.
Because the step to update the Bridge->Alignment is to make sure
the resource allocated to the bus under the Bridge meets all
devices alignment. But the Bridge->Length doesn't have to align
to the maximum alignment.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
MdeModulePkg/Bus/Pci/PciBusDxe/PciResourceSupport.c