diff options
author | Ruiyu Ni <ruiyu.ni@intel.com> | 2018-01-19 15:04:24 +0800 |
---|---|---|
committer | Ruiyu Ni <ruiyu.ni@intel.com> | 2018-01-22 10:18:04 +0800 |
commit | a662afb5b023a187ef638d3cb0e0c313ad39a7fc (patch) | |
tree | ed5d07e8fbadc2727282201af11525739ad8d1c8 /BaseTools/Source/Python/Workspace/DscBuildData.py | |
parent | a676a24656546a7fc722868fb75cd178c003056a (diff) | |
download | edk2-a662afb5b023a187ef638d3cb0e0c313ad39a7fc.tar.gz edk2-a662afb5b023a187ef638d3cb0e0c313ad39a7fc.tar.bz2 edk2-a662afb5b023a187ef638d3cb0e0c313ad39a7fc.zip |
MdeModulePkg/UsbStorage: Fix "map -r" cannot detect media change
When system boots to Shell without CDROM in the USB CDROM drive,
and then user inserts one CDROM with Eltorito file system,
"map -r" cannot show the the new Eltorito file system.
The root cause is when "map" command probes the media change
by calling dummy ReadBlockIo(), UsbMassStorage ReadBlockIo()
contains a bug that ignores the media change status:
UsbBootDetectMedia() ignores the EFI_MEDIA_CHANGED status
returned from UsbBootIsUnitReady(), in consequence, the
BlockIo protocol re-installation logic doesn't run.
By checking the code change history, below commit
SHA-1: 19bc85276559ae01996fa0918ec3f6495e7aaa69
* remove unnecessary retry logic from usb mass storage driver.
adds the code to skip EFI_MEDIA_CHANGED status.
Talking with the original committer Tian Feng, he said the
change was just a code cleanup, not for a special bug fix.
So I revert part of the patch, only keep the change that
removes unnecessary retry logic. It can fix this bug.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Workspace/DscBuildData.py')
0 files changed, 0 insertions, 0 deletions