6fe3978 MdeModulePkg NvmExpressDxe: Avoid crashing 'Mode' during OpenProtocol

Authored and Committed by Hao Wu 7 years ago
    MdeModulePkg NvmExpressDxe: Avoid crashing 'Mode' during OpenProtocol
    
    The gBS->OpenProtocol() calls to open EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL
    in NvmExpress.c will crash the data in 'Mode' field of
    'Private->Passthru'.
    
    The third parameter of gBS->OpenProtocol() is an output parameter that
    stores the address where a pointer to the corresponding Protocol
    Interface. The current code mistakenly pass '&Private->Passthru' (a
    pointer of the EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL) as the third
    parameter. This will crash the data in 'Mode' filed.
    
    Cc: Feng Tian <feng.tian@intel.com>
    Contributed-under: TianoCore Contribution Agreement 1.0
    Signed-off-by: Hao Wu <hao.a.wu@intel.com>
    Reviewed-by: Feng Tian <feng.tian@intel.com>