mbox series

Pull request for efi-2021-07-rc5-2

Message ID 7d7cf816-8f91-cfe2-b882-df2043545659@gmx.de
State Changes Requested
Delegated to: Tom Rini
Headers show
Series Pull request for efi-2021-07-rc5-2 | expand

Pull-request

https://source.denx.de/u-boot/custodians/u-boot-efi.git tags/efi-2021-07-rc5-2

Message

Heinrich Schuchardt June 21, 2021, 7:10 a.m. UTC
Dear Tom,

The following changes since commit 97c8cb524c19f054036efd2b4429273bd503e39c:

   Merge branch 'network_master' of
https://source.denx.de/u-boot/custodians/u-boot-net (2021-06-18 11:18:56
-0400)

are available in the Git repository at:

   https://source.denx.de/u-boot/custodians/u-boot-efi.git
tags/efi-2021-07-rc5-2

for you to fetch changes up to fe06d3f4e540c9985bf9898fabf859e81c428db7:

   smbios: Fix SMBIOS tables (2021-06-21 07:58:38 +0200)

Gitlab CI showed no problems:
https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/7899

----------------------------------------------------------------
Pull request for efi-2021-07-rc5-2

Documentation:

* man-page for askenv

bug fixes

* improve block device integration with driver model
* correct display of BootOrder in efidebug command
* do not allow TPL_HIGH_LEVEL for CreateEvent(Ex)
* correct handling of unknown properties in SMBIOS tables

----------------------------------------------------------------
Adarsh Babu Kalepalli (1):
       doc/usage: cmd-usage help file for askenv

Heinrich Schuchardt (4):
       efi_loader: TPL_HIGH_LEVEL not allowed for CreateEvent
       efidebug: correct display of BootOrder
       efi_loader: improve block device integration with DM
       smbios: convert function descriptions to Sphinx style

Ilias Apalodimas (2):
       smbios: Fix BIOS Characteristics Extension Byte 2
       smbios: Fix SMBIOS tables

  cmd/efidebug.c                      |  2 +-
  doc/usage/askenv.rst                | 87
+++++++++++++++++++++++++++++++++++++
  doc/usage/index.rst                 |  1 +
  drivers/core/device.c               |  7 +++
  include/efi_loader.h                |  6 +++
  include/smbios.h                    |  2 +-
  lib/efi_driver/Makefile             |  1 +
  lib/efi_driver/efi_dm_integration.c | 36 +++++++++++++++
  lib/efi_loader/efi_boottime.c       |  1 -
  lib/efi_loader/efi_disk.c           | 72 +++++++++++++++++-------------
  lib/efi_selftest/efi_selftest_tpl.c |  2 +-
  lib/smbios.c                        | 24 +++++++---
  12 files changed, 201 insertions(+), 40 deletions(-)
  create mode 100644 doc/usage/askenv.rst
  create mode 100644 lib/efi_driver/efi_dm_integration.c

Comments

Tom Rini June 21, 2021, 9:22 p.m. UTC | #1
On Mon, Jun 21, 2021 at 09:10:38AM +0200, Heinrich Schuchardt wrote:

> Dear Tom,
> 
> The following changes since commit 97c8cb524c19f054036efd2b4429273bd503e39c:
> 
>   Merge branch 'network_master' of
> https://source.denx.de/u-boot/custodians/u-boot-net (2021-06-18 11:18:56
> -0400)
> 
> are available in the Git repository at:
> 
>   https://source.denx.de/u-boot/custodians/u-boot-efi.git
> tags/efi-2021-07-rc5-2
> 
> for you to fetch changes up to fe06d3f4e540c9985bf9898fabf859e81c428db7:
> 
>   smbios: Fix SMBIOS tables (2021-06-21 07:58:38 +0200)
> 
> Gitlab CI showed no problems:
> https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/7899
> 

This causes failures:
test/py/tests/test_fs/test_unlink.py F..F...F..F...                                     [ 99%]
test/py/tests/test_fs/test_squashfs/test_sqfs_load.py .                                 [ 99%]
test/py/tests/test_fs/test_squashfs/test_sqfs_ls.py .                                   [100%]

========================================== FAILURES ===========================================
_______________________________ TestUnlink.test_unlink1[fat16] ________________________________

self = <test_unlink.TestUnlink object at 0x7fde2c537940>
u_boot_console = <u_boot_console_sandbox.ConsoleSandbox object at 0x7fde31514240>
fs_obj_unlink = ['fat', '/tmp/.bm-work/sandbox/persistent-data/128MB.fat16.img']

    def test_unlink1(self, u_boot_console, fs_obj_unlink):
        """
        Test Case 1 - delete a file
        """
        fs_type,fs_img = fs_obj_unlink
        with u_boot_console.log.section('Test Case 1 - unlink (file)'):
            output = u_boot_console.run_command_list([
                'host bind 0 %s' % fs_img,
                '%srm host 0:0 dir1/file1' % fs_type,
                '%sls host 0:0 dir1/file1' % fs_type])
>           assert('' == ''.join(output))
E           AssertionError: assert '' == 'Scanning dis...egister host0'
E             + Scanning disk host0...
E             +
E             + ERROR: failure to add disk device host0, r = 20
E             +
E             + Failed to register host0

test/py/tests/test_fs/test_unlink.py:28: AssertionError
------------------------------------ Captured stdout setup ------------------------------------
mkfs.fat 4.1 (2017-01-24)
------------------------------------ Captured stderr setup ------------------------------------
128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 0.109379 s, 1.2 GB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.000251915 s, 4.1 MB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.000212585 s, 4.8 MB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.000238622 s, 4.3 MB/s
------------------------------------ Captured stdout call -------------------------------------
=> host bind 0 /tmp/.bm-work/sandbox/persistent-data/128MB.fat16.img
Scanning disk host0...
ERROR: failure to add disk device host0, r = 20
Failed to register host0
=> => fatrm host 0:0 dir1/file1
=> => fatls host 0:0 dir1/file1
=>
_______________________________ TestUnlink.test_unlink4[fat16] ________________________________

self = <test_unlink.TestUnlink object at 0x7fde2c54c8d0>
u_boot_console = <u_boot_console_sandbox.ConsoleSandbox object at 0x7fde31514240>
fs_obj_unlink = ['fat', '/tmp/.bm-work/sandbox/persistent-data/128MB.fat16.img']

    def test_unlink4(self, u_boot_console, fs_obj_unlink):
        """
        Test Case 4 - delete an empty directory
        """
        fs_type,fs_img = fs_obj_unlink
        with u_boot_console.log.section('Test Case 4 - unlink (directory)'):
            output = u_boot_console.run_command_list([
                'host bind 0 %s' % fs_img,
                '%srm host 0:0 dir4' % fs_type])
>           assert('' == ''.join(output))
E           AssertionError: assert '' == 'Scanning dis...egister host0'
E             + Scanning disk host0...
E             +
E             + ERROR: failure to add disk device host0, r = 20
E             +
E             + Failed to register host0

test/py/tests/test_fs/test_unlink.py:76: AssertionError
------------------------------------ Captured stdout call -------------------------------------
=> host bind 0 /tmp/.bm-work/sandbox/persistent-data/128MB.fat16.img
Scanning disk host0...
ERROR: failure to add disk device host0, r = 20
Failed to register host0
=> => fatrm host 0:0 dir4
=>
_______________________________ TestUnlink.test_unlink1[fat32] ________________________________

self = <test_unlink.TestUnlink object at 0x7fde2c4d10b8>
u_boot_console = <u_boot_console_sandbox.ConsoleSandbox object at 0x7fde31514240>
fs_obj_unlink = ['fat', '/tmp/.bm-work/sandbox/persistent-data/128MB.fat32.img']

    def test_unlink1(self, u_boot_console, fs_obj_unlink):
        """
        Test Case 1 - delete a file
        """
        fs_type,fs_img = fs_obj_unlink
        with u_boot_console.log.section('Test Case 1 - unlink (file)'):
            output = u_boot_console.run_command_list([
                'host bind 0 %s' % fs_img,
                '%srm host 0:0 dir1/file1' % fs_type,
                '%sls host 0:0 dir1/file1' % fs_type])
>           assert('' == ''.join(output))
E           AssertionError: assert '' == 'Scanning dis...egister host0'
E             + Scanning disk host0...
E             +
E             + ERROR: failure to add disk device host0, r = 20
E             +
E             + Failed to register host0

test/py/tests/test_fs/test_unlink.py:28: AssertionError
------------------------------------ Captured stdout setup ------------------------------------
mkfs.fat 4.1 (2017-01-24)
------------------------------------ Captured stderr setup ------------------------------------
128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 0.107716 s, 1.2 GB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.000244757 s, 4.2 MB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.00018367 s, 5.6 MB/s
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.000279979 s, 3.7 MB/s
------------------------------------ Captured stdout call -------------------------------------
=> host bind 0 /tmp/.bm-work/sandbox/persistent-data/128MB.fat32.img
Scanning disk host0...
ERROR: failure to add disk device host0, r = 20
Failed to register host0
=> => fatrm host 0:0 dir1/file1
=> => fatls host 0:0 dir1/file1
=>
_______________________________ TestUnlink.test_unlink4[fat32] ________________________________

self = <test_unlink.TestUnlink object at 0x7fde2c54ccf8>
u_boot_console = <u_boot_console_sandbox.ConsoleSandbox object at 0x7fde31514240>
fs_obj_unlink = ['fat', '/tmp/.bm-work/sandbox/persistent-data/128MB.fat32.img']

    def test_unlink4(self, u_boot_console, fs_obj_unlink):
        """
        Test Case 4 - delete an empty directory
        """
        fs_type,fs_img = fs_obj_unlink
        with u_boot_console.log.section('Test Case 4 - unlink (directory)'):
            output = u_boot_console.run_command_list([
                'host bind 0 %s' % fs_img,
                '%srm host 0:0 dir4' % fs_type])
>           assert('' == ''.join(output))
E           AssertionError: assert '' == 'Scanning dis...egister host0'
E             + Scanning disk host0...
E             +
E             + ERROR: failure to add disk device host0, r = 20
E             +
E             + Failed to register host0

test/py/tests/test_fs/test_unlink.py:76: AssertionError
------------------------------------ Captured stdout call -------------------------------------
=> host bind 0 /tmp/.bm-work/sandbox/persistent-data/128MB.fat32.img
Scanning disk host0...
ERROR: failure to add disk device host0, r = 20
Failed to register host0
=> => fatrm host 0:0 dir4
=>

I bisected this down to:
commit 7f51279244811b6eae5d647b21d35b496562e285
Author: Heinrich Schuchardt <xypron.glpk@gmx.de>
Date:   Thu Jun 17 11:57:32 2021 +0200

    efi_loader: improve block device integration with DM
    
    Up to now when devices became available after executing the UEFI
    sub-system initialization where not available for EFI applications.
    
    With the patch block devices are added to the UEFI object list whenever
    they are probed.
    
    Fixes: f3866909e350 ("distro_bootcmd: call EFI bootmgr even without having /EFI/boot")
    Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
    Tested-by: Matwey V. Kornilov <matwey.kornilov@gmail.com>

I suspect that with
https://patchwork.ozlabs.org/project/uboot/list/?series=250001 applied
Azure will also fail.