From 7d84fbbb5e504002646e17746dbb79a6f33d5f14 Mon Sep 17 00:00:00 2001 From: Ruiyu Ni Date: Fri, 20 Jun 2014 06:17:54 +0000 Subject: [PATCH] Do not create boot option for logical block io device. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ruiyu Ni Reviewed-by: Elvin Li git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15575 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Library/GenericBdsLib/BdsBoot.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c index b41ce79d50..f816d4c39e 100644 --- a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c +++ b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c @@ -3219,9 +3219,16 @@ BdsLibEnumerateAllBootOption ( (VOID **) &BlkIo ); // - // skip the fixed block io then the removable block io + // skip the logical partition // - if (EFI_ERROR (Status) || (BlkIo->Media->RemovableMedia == Removable[RemovableIndex])) { + if (EFI_ERROR (Status) || BlkIo->Media->LogicalPartition) { + continue; + } + + // + // firstly fixed block io then the removable block io + // + if (BlkIo->Media->RemovableMedia == Removable[RemovableIndex]) { continue; } DevicePath = DevicePathFromHandle (BlockIoHandles[Index]);