]> git.proxmox.com Git - mirror_edk2.git/commit
MdeModulePkg/PartitionDxe: Add already start check for child hanldes
authorZhichao Gao <zhichao.gao@intel.com>
Thu, 2 Jul 2020 07:31:53 +0000 (15:31 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Wed, 15 Jul 2020 01:18:13 +0000 (01:18 +0000)
commitc7195b9ec3c5f8f40119c96ac4a0ab1e8cebe9dc
tree6420d40e19dac9b286afdf472bfc41d2b5461960
parente906346dcb80fce588ac774c8ec9694b62f0a257
MdeModulePkg/PartitionDxe: Add already start check for child hanldes

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2823

The partition binding driver would run serval times during BDS.
If the partition support MBR, it would pass the first connection
in MBR partition child handler. The second connect for the same
device would return already started which would be treated as
not found. And it would continue to run next partition child
handler check. That is incorrect behavior to do next check if one
of the routine functions is passed. It may cause one device
installed serval partition child handle on it.
So treat the EFI_ALREADY_STARTED as EFI_SUCCESS to avoid incorrect
next partition child handle check.

Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Signed-off-by: Zhichao Gao <zhichao.gao@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
MdeModulePkg/Universal/Disk/PartitionDxe/Partition.c