From: Alexander Graf <agraf@suse.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v9 00/18] efi: Enable sandbox support for EFI loader
Date: Sun, 26 Aug 2018 19:28:16 +0200 [thread overview]
Message-ID: <53bd3a99-75a7-6e34-69a2-df4206880a43@suse.de> (raw)
In-Reply-To: <20180808095433.230882-1-sjg@chromium.org>
On 08.08.18 11:54, Simon Glass wrote:
> A limitation of the EFI loader at present is that it does not build with
> sandbox. This makes it hard to write tests, since sandbox is used for most
> testing in U-Boot.
>
> This series enables the EFI loader feature. It allows sandbox to build and
> run a trivial function which calls the EFI API to output a message.
>
> Also included in v8 is support for running the full EFI self tests. These
> run OK with some tweaks to a few parts of the code.
>
> With v9, various EFI patches have been applied which change things. This
> series includes a partial review of one, which makes 'bootefi test' work.
> But there are still problems with 'bootefi selftest':
>
> $ sandbox/u-boot -D -c "bootefi selftest"
> ...
> Executing 'block device'
> /home/sjg/c/src/third_party/u-boot/files/lib/efi_selftest/efi_selftest_block_device.c(385):
> TODO: Wrong volume label 'xxa1', expected 'U-BOOT TEST'
> map_to_sysmem: Added map from 00007ffd0782d2a0 to 8000000
> phys_to_virt: Used map from 8000000 to 00007ffd0782d2a0
> writing /u-boot.txt
> find_tag: Used map from 00007ffd0782d2a0 to 8000000
> phys_to_virt: Used map from 8000000 to 00007ffd0782d2a0
> /home/sjg/c/src/third_party/u-boot/files/lib/efi_selftest/efi_selftest_block_device.c(458):
> ERROR: Unexpected file content
> /home/sjg/c/src/third_party/u-boot/files/lib/efi_selftest/efi_selftest.c(109):
> ERROR: Executing 'block device' failed
>
> ...
>
> Executing 'simple network protocol'
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> DHCP Discover
> /home/sjg/c/src/third_party/u-boot/files/lib/efi_selftest/efi_selftest_snp.c(311):
> ERROR: Timeout occurred
> /home/sjg/c/src/third_party/u-boot/files/lib/efi_selftest/efi_selftest.c(109):
> ERROR: Executing 'simple network protocol' failed
>
> This series is at u-boot-dm/efi-working
Thanks a lot again for pushing this forward.
My ultimate goal is that sandbox is not a special case, but just "yet
another" target we support.
That means things like a special "bootefi test" command really don't
make any sense and should just go.
The other thing we need to make sure is that every divergence we find
between sandbox and non-sandbox behavior potentially hints at a real
problem:
- If exit doesn't work, don't just disable it, instead please debug
why and resolve it for real.
- If tests are failing that really shouldn't fail, please figure out
why. Maybe they used the stack in some cases which breaks your mapping
logic?
At the end of the day, I want to have as little divergence between the
sandbox target and a real x86_64 QEMU target for example. As long as we
don't exit boot services, both should really behave the same.
Alex
next prev parent reply other threads:[~2018-08-26 17:28 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-08 9:54 [U-Boot] [PATCH v9 00/18] efi: Enable sandbox support for EFI loader Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 01/18] Revert "efi_loader: Rename sections to allow for implicit data" Simon Glass
2018-08-23 20:18 ` [U-Boot] [U-Boot, v9, 01/18] Partially revert " Tom Rini
2018-08-08 9:54 ` [U-Boot] [PATCH v9 02/18] efi: Don't allow CMD_BOOTEFI_SELFTEST on sandbox Simon Glass
2018-08-26 16:53 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 03/18] efi: sandbox: Add distroboot support Simon Glass
2018-08-26 16:54 ` Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 04/18] efi: sandbox: Enable EFI loader build for sandbox Simon Glass
2018-08-26 16:55 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-09-15 8:11 ` Alexander Graf
2018-09-15 8:32 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 05/18] efi: Split out test init/uninit into functions Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 06/18] efi: sandbox: Add a simple 'bootefi test' command Simon Glass
2018-08-26 16:58 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 07/18] efi: Create a function to set up for running EFI code Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 08/18] efi: Rename bootefi_test_finish() to bootefi_run_finish() Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 09/18] sandbox: Align RAM buffer to the machine page size Simon Glass
2018-08-26 17:01 ` Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 10/18] sandbox: Try to start the RAM buffer at a particular address Simon Glass
2018-08-26 17:01 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-10-15 20:07 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 11/18] sandbox: Add support for calling abort() Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 12/18] sandbox: Enhance map_to_sysmem() to handle foreign pointers Simon Glass
2018-08-26 17:11 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-09-15 8:16 ` Alexander Graf
2018-09-15 8:31 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 13/18] efi: Add a call to exit() along with why we can't use it Simon Glass
2018-08-23 20:37 ` Heinrich Schuchardt
2018-08-26 17:13 ` Alexander Graf
2018-09-14 15:46 ` Simon Glass
2018-08-08 9:54 ` [U-Boot] [PATCH v9 14/18] efi: Relocate FDT to 127MB instead of 128MB Simon Glass
2018-08-26 17:23 ` [U-Boot] [U-Boot, v9, " Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 15/18] efi: sandbox: Tidy up copy_fdt() to work with sandbox Simon Glass
2018-08-26 17:23 ` [U-Boot] [U-Boot, v9, " Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 16/18] efi: Add more debugging for memory allocations Simon Glass
2018-08-23 20:49 ` Heinrich Schuchardt
2018-08-26 18:27 ` Simon Glass
2018-08-26 17:22 ` Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 17/18] efi_loader: Pass address to fs_read() Simon Glass
2018-08-26 17:23 ` [U-Boot] [U-Boot, v9, " Alexander Graf
2018-08-08 9:54 ` [U-Boot] [PATCH v9 18/18] efi: sandbox: Enable selftest command Simon Glass
2018-08-26 17:28 ` Alexander Graf [this message]
2018-09-14 15:46 ` [U-Boot] [PATCH v9 00/18] efi: Enable sandbox support for EFI loader Simon Glass
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53bd3a99-75a7-6e34-69a2-df4206880a43@suse.de \
--to=agraf@suse.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox