On Tue, Aug 11, 2020 at 02:42:59PM +0800, Zhichao Gao wrote:
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2823
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2843
>
> Refer to the UEFI spec 2.8, Section 13.3.2:
> A block device should be scanned as below order:
> 1. GPT
> 2. ISO 9660 (El Torito) (UDF should aslo be here)
> 4. MBR
> 5. no partition found
>
> But the code implementation is:
> 1. GPT
> 2. MBR
> 3. ISO 9660 (El Torito) (UDF)
> 4. no partition found
>
> Which would cause the ISO 9960 image with MBR info be treated as MBR
> device. That would cause unexpect behavior. So fix it to follow the spec
> description.
>
> The fix of the PartitionInstallChildHandle would change the boot behavior
> of Linux ISO image with MBR table. So add it after the order adjustment
> to make no impact of the boot.
>
Thanks for the patches. After applying this patch series, the firmware
recognizes openSUSE/SUSE iso images again.
Tested-by: Gary Lin <glin@suse.com>
> Cc: Jian J Wang <jian.j.wang@intel.com>
> Cc: Hao A Wu <hao.a.wu@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Gary Lin <glin@suse.com>
> Cc: Andrew Fish <afish@apple.com>
> Signed-off-by: Zhichao Gao <zhichao.gao@intel.com>
> Zhichao Gao (3):
> MdeModulePkg/PartitionDxe: Put the UDF check ahead of MBR
> MdeModulePkg/PartitionDxe: Remove the check for special MBR
> MdeModulePkg/PartitionDxe: Fix the incorrect LBA size in child hander
>
> .../Universal/Disk/PartitionDxe/Mbr.c | 19 ----------------
> .../Universal/Disk/PartitionDxe/Partition.c | 22 ++++++++++---------
> 2 files changed, 12 insertions(+), 29 deletions(-)
>
> --
> 2.21.0.windows.1
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#63972): https://edk2.groups.io/g/devel/message/63972
Mute This Topic: https://groups.io/mt/76121498/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-