]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
loader.efi: efipart needs to use ioalign
authorToomas Soome <tsoome@FreeBSD.org>
Tue, 15 Oct 2019 06:19:33 +0000 (06:19 +0000)
committerToomas Soome <tsoome@FreeBSD.org>
Tue, 15 Oct 2019 06:19:33 +0000 (06:19 +0000)
commit7f14d97e72d96b4cb23a666b4ea70737f23a1773
treead813609038eb1d1dca4af57c78fc9e671200e67
parent3189c34acab407ed7347e802a604a1ccffaa3180
loader.efi: efipart needs to use ioalign

UEFI specification 2.7A, EFI_BLOCK_IO_PROTOCOL, page 566.

The ioalign property does define the alignment of data buffer.

If the alignment is required and our buffer is not aligned, or if
the data buffer is not multiple of Blocksize, we need to use bounce buffer
to perform the block IO. This is much like with BIOS version, except
there the INT13 needs buffer to be located in low memory.

MFS: r353501
MFC: r347195,350654-350656,351274,351630,351637,352421,352439,352443-352446,352451

Approved by: re (gjb)
16 files changed:
stand/efi/boot1/boot1.c
stand/efi/include/efilib.h
stand/efi/libefi/devpath.c
stand/efi/libefi/efinet.c
stand/efi/libefi/efipart.c
stand/efi/libefi/libefi.c
stand/efi/loader/arch/i386/efimd.c
stand/efi/loader/efi_main.c
stand/efi/loader/framebuffer.c
stand/efi/loader/main.c
stand/libsa/stand.h
stand/libsa/zalloc.c
stand/libsa/zalloc_defs.h
stand/libsa/zalloc_malloc.c
stand/libsa/zalloc_mem.h
stand/libsa/zalloc_protos.h