summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source/Python/Workspace/MetaFileTable.py
diff options
context:
space:
mode:
authorRuiyu Ni <ruiyu.ni@intel.com>2018-01-19 15:04:24 +0800
committerRuiyu Ni <ruiyu.ni@intel.com>2018-01-22 10:18:04 +0800
commita662afb5b023a187ef638d3cb0e0c313ad39a7fc (patch)
treeed5d07e8fbadc2727282201af11525739ad8d1c8 /BaseTools/Source/Python/Workspace/MetaFileTable.py
parenta676a24656546a7fc722868fb75cd178c003056a (diff)
downloadedk2-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/MetaFileTable.py')
0 files changed, 0 insertions, 0 deletions