From 69af847603ca1f6439031c4e1fee844fdb06ca6f Mon Sep 17 00:00:00 2001 From: Cinnamon Shia Date: Mon, 2 May 2016 12:34:08 +0800 Subject: [PATCH] ShellPkg/UefiDpLib: Fix the error message "Timer library instance error!" When executing shell dp command, there is an error message "Timer library instance error!" The error message "Timer library instance error!" should be for the case about duration > EndTimeStamp if CountUp or duration > StartTimeStamp if CountDown. But if the EndTimeStamp of an entry is not added, it should not the case to catch. This change fixes the error message "Timer library instance error!" from the "BdsAttempt" entry which is logged when trying to boot a boot option. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia Reviewed-by: Star Zeng Reviewed-by: Jaben Carsey --- ShellPkg/Library/UefiDpLib/DpUtilities.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ShellPkg/Library/UefiDpLib/DpUtilities.c b/ShellPkg/Library/UefiDpLib/DpUtilities.c index 032e7b4ce1..fbdd938bc3 100644 --- a/ShellPkg/Library/UefiDpLib/DpUtilities.c +++ b/ShellPkg/Library/UefiDpLib/DpUtilities.c @@ -2,7 +2,7 @@ Utility functions used by the Dp application. Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. - (C) Copyright 2015 Hewlett Packard Enterprise Development LP
+ (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -68,6 +68,10 @@ GetDuration ( UINT64 Duration; BOOLEAN Error; + if (Measurement->EndTimeStamp == 0) { + return 0; + } + // PERF_START macros are called with a value of 1 to indicate // the beginning of time. So, adjust the start ticker value // to the real beginning of time.