Project

General

Profile

Bug #11717

loader.efi: efipart needs to use ioalign

Added by Toomas Soome about 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
bootloader
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

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.

Additionally, we need to handle disk writes properly.


Related issues

Related to illumos gate - Feature #11716: loader: add memalign()ClosedToomas Soome

Actions
#1

Updated by Toomas Soome about 1 year ago

#2

Updated by Toomas Soome about 1 year ago

Testing done: tested by forcing alignment "manually", but also by normal build/install/boot cycle.

Also integrated into FreeBSD.

#3

Updated by Electric Monk about 1 year ago

  • Status changed from In Progress to Closed
  • % Done changed from 90 to 100

git commit 2b292e00835d471d54a29c338155ab9d5756c18d

commit  2b292e00835d471d54a29c338155ab9d5756c18d
Author: Toomas Soome <tsoome@me.com>
Date:   2019-09-28T06:59:54.000Z

    11717 loader.efi: efipart needs to use ioalign
    Reviewed by: Andy Fiddaman <omnios@citrus-it.co.uk>
    Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
    Approved by: Robert Mustacchi <rm@fingolfin.org>

Also available in: Atom PDF