summaryrefslogtreecommitdiffstats
path: root/DuetPkg
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2017-05-18 14:48:13 +0200
committerLaszlo Ersek <lersek@redhat.com>2017-05-29 14:41:42 +0200
commitd98e939f4fd72d3f426e0005beba554de5fb9bd0 (patch)
tree2e086c05a433c7c9576a07e35b80988ffcb709d2 /DuetPkg
parentf4d3ba87bb8f5d82d3b80532ea4c83b7bbca41c0 (diff)
downloadedk2-d98e939f4fd72d3f426e0005beba554de5fb9bd0.tar.gz
edk2-d98e939f4fd72d3f426e0005beba554de5fb9bd0.tar.bz2
edk2-d98e939f4fd72d3f426e0005beba554de5fb9bd0.zip
DuetPkg/FvbRuntimeService: correct NumOfLba vararg type in EraseBlocks()
According to the PI spec, Volume 3, EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.EraseBlocks(): > The variable argument list is a list of tuples. Each tuple describes a > range of LBAs to erase and consists of the following: > * An EFI_LBA that indicates the starting LBA > * A UINTN that indicates the number of blocks to erase (NB, in edk2, EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL is a typedef to EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.) In this driver, the NumOfLba local variable is defined with type UINTN, but the TYPE argument passed to VA_ARG() is UINT32. Fix the mismatch. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Reported-by: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Hao Wu <hao.a.wu@intel.com>
Diffstat (limited to 'DuetPkg')
-rw-r--r--DuetPkg/FvbRuntimeService/FWBlockService.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/DuetPkg/FvbRuntimeService/FWBlockService.c b/DuetPkg/FvbRuntimeService/FWBlockService.c
index e0ddbd5312..bc663273d4 100644
--- a/DuetPkg/FvbRuntimeService/FWBlockService.c
+++ b/DuetPkg/FvbRuntimeService/FWBlockService.c
@@ -991,7 +991,7 @@ Returns:
break;
}
- NumOfLba = VA_ARG (args, UINT32);
+ NumOfLba = VA_ARG (args, UINTN);
//
// Check input parameters
@@ -1011,7 +1011,7 @@ Returns:
break;
}
- NumOfLba = VA_ARG (args, UINT32);
+ NumOfLba = VA_ARG (args, UINTN);
while (NumOfLba > 0) {
Status = FvbEraseBlock (FvbDevice->Instance, StartingLba, mFvbModuleGlobal, EfiGoneVirtual ());