Thanks Ming and Leif. Reviewed-by: Hao Wu <hao.a...@intel.com> Patch was committed at 6c27a4d337d0034cecf9f2c05d1f20c342d41e01.
Best Regards, Hao Wu > -----Original Message----- > From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > Sent: Tuesday, March 19, 2019 9:47 PM > To: Ming Huang > Cc: linaro-u...@lists.linaro.org; edk2-devel@lists.01.org; Wu, Hao A; Kinney, > Michael D; Gao, Liming; ard.biesheu...@linaro.org; > wanghuiqi...@huawei.com; huangmin...@huawei.com; > zhangjinso...@huawei.com; mengfanr...@huawei.com; > huangda...@hisilicon.com > Subject: Re: [Patch MdeModulePkg/Library v1 1/1] > MdeModulePkg/UefiBootManangerLib: Fix exception issue > > Thanks, Ming. > > On Tue, Mar 19, 2019 at 08:59:13PM +0800, Ming Huang wrote: > > The system environment: virtual-CDROM(USB interface) via BMC, insert a > > iso file to CDROM, like ubuntu-18.04.1-server-arm64.iso, change CDROM > > to first boot option. > > With release version bios, disconnecting CDROM when boot to > > "1 seconds left, Press Esc or F2 to enter Setup" > > then system will get a exception. > > > > The root cause is the EFI_BLOCK_IO_PROTOCOL for UsbMass will be > uninstalled > > in this situation after print some transfer error. The status will be > > invalid parameter. This line will get a exception for BlockIo not point > > to right address: > > AllocatePool (BlockIo->Media->BlockSize) > > So, here need to judge the status after ASSERT_EFI_ERROR. > > > > The Bugzilla tracker for this: > > https://bugzilla.tianocore.org/show_bug.cgi?id=1631 > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > Signed-off-by: Ming Huang <ming.hu...@linaro.org> > > Reviewed-by: Leif Lindholm <leif.lindh...@linaro.org> > > > --- > > MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c > b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c > > index 4ce83ce22d61..0535cd7335b4 100644 > > --- a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c > > +++ b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c > > @@ -1069,6 +1069,9 @@ BmExpandMediaDevicePath ( > > // > > Status = gBS->HandleProtocol (Handle, &gEfiBlockIoProtocolGuid, (VOID > **) &BlockIo); > > ASSERT_EFI_ERROR (Status); > > + if (EFI_ERROR (Status)) { > > + return NULL; > > + } > > Buffer = AllocatePool (BlockIo->Media->BlockSize); > > if (Buffer != NULL) { > > BlockIo->ReadBlocks ( > > -- > > 2.9.5 > > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel