From f3e88737f78135f70a5bb79283e40b829bdb02dd Mon Sep 17 00:00:00 2001 From: Ashutosh Singh Date: Mon, 9 Nov 2015 13:13:37 +0000 Subject: [PATCH] ArmPkg/BdsLib: Increase fallback tftp buffer size When performing a tftp download from a server which does not support rfc2349 transfer size option (such as netkit-tftpd), the existing code falls back to allocating an 8MB buffer. Since this is insufficient for an uncompressed AArch64 Linux kernel image, double the size to 16MB. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ashutosh Singh Reviewed-by: Leif Lindholm git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18748 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPkg/Library/BdsLib/BdsFilePath.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ArmPkg/Library/BdsLib/BdsFilePath.c b/ArmPkg/Library/BdsLib/BdsFilePath.c index ff421754fe..04102366d5 100644 --- a/ArmPkg/Library/BdsLib/BdsFilePath.c +++ b/ArmPkg/Library/BdsLib/BdsFilePath.c @@ -1198,7 +1198,7 @@ BdsTftpLoadImage ( if (Mtftp4GetFileSize (Mtftp4, AsciiFilePath, &FileSize) == EFI_SUCCESS) { TftpBufferSize = FileSize; } else { - TftpBufferSize = SIZE_8MB; + TftpBufferSize = SIZE_16MB; } TftpContext = AllocatePool (sizeof (BDS_TFTP_CONTEXT)); @@ -1209,7 +1209,7 @@ BdsTftpLoadImage ( TftpContext->FileSize = FileSize; for (; TftpBufferSize <= FixedPcdGet32 (PcdMaxTftpFileSize); - TftpBufferSize = (TftpBufferSize + SIZE_8MB) & (~(SIZE_8MB-1))) { + TftpBufferSize = (TftpBufferSize + SIZE_16MB) & (~(SIZE_16MB-1))) { // // Allocate a buffer to hold the whole file. //