mirror of https://github.com/acidanthera/audk.git
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 <ashutosh.singh@arm.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18748 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
67b3c0f958
commit
f3e88737f7
|
@ -1198,7 +1198,7 @@ BdsTftpLoadImage (
|
||||||
if (Mtftp4GetFileSize (Mtftp4, AsciiFilePath, &FileSize) == EFI_SUCCESS) {
|
if (Mtftp4GetFileSize (Mtftp4, AsciiFilePath, &FileSize) == EFI_SUCCESS) {
|
||||||
TftpBufferSize = FileSize;
|
TftpBufferSize = FileSize;
|
||||||
} else {
|
} else {
|
||||||
TftpBufferSize = SIZE_8MB;
|
TftpBufferSize = SIZE_16MB;
|
||||||
}
|
}
|
||||||
|
|
||||||
TftpContext = AllocatePool (sizeof (BDS_TFTP_CONTEXT));
|
TftpContext = AllocatePool (sizeof (BDS_TFTP_CONTEXT));
|
||||||
|
@ -1209,7 +1209,7 @@ BdsTftpLoadImage (
|
||||||
TftpContext->FileSize = FileSize;
|
TftpContext->FileSize = FileSize;
|
||||||
|
|
||||||
for (; TftpBufferSize <= FixedPcdGet32 (PcdMaxTftpFileSize);
|
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.
|
// Allocate a buffer to hold the whole file.
|
||||||
//
|
//
|
||||||
|
|
Loading…
Reference in New Issue