From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mta-01.yadro.com (mta-01.yadro.com [89.207.88.252]) by mx.groups.io with SMTP id smtpd.web11.13005.1589465793510481105 for ; Thu, 14 May 2020 07:16:34 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=@yadro.com header.s=mta-01 header.b=GbN2DKFj; spf=pass (domain: yadro.com, ip: 89.207.88.252, mailfrom: r.bolshakov@yadro.com) Received: from localhost (unknown [127.0.0.1]) by mta-01.yadro.com (Postfix) with ESMTP id 2CFB44C83E; Thu, 14 May 2020 14:16:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=yadro.com; h= content-type:content-type:content-transfer-encoding:mime-version :x-mailer:message-id:date:date:subject:subject:from:from :received:received:received; s=mta-01; t=1589465785; x= 1591280186; bh=Z1/2NdnvTQtDlRJJZ0upc8hG7shpT/6gEm8dHEPSkl8=; b=G bN2DKFjEUy/En0F4cpp/gqb/rBToWe4+vD/2z3PzFQ5OEVLz6o68RFYgX0QddjlY 6E7ESdiRIBTVoQiguXNw8ayL4KZr7sgoOIkdxDpPdEYgNIunvE+GBx1fPiunLotd 5/XXQlJIw9t2K30sL33FgqyIbhUtTH3rvzbKAz0l/w= X-Virus-Scanned: amavisd-new at yadro.com Received: from mta-01.yadro.com ([127.0.0.1]) by localhost (mta-01.yadro.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7ewCr4NhIPC4; Thu, 14 May 2020 17:16:25 +0300 (MSK) Received: from T-EXCH-02.corp.yadro.com (t-exch-02.corp.yadro.com [172.17.10.102]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mta-01.yadro.com (Postfix) with ESMTPS id D3B424C83D; Thu, 14 May 2020 17:16:25 +0300 (MSK) Received: from localhost (172.17.204.212) by T-EXCH-02.corp.yadro.com (172.17.10.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.669.32; Thu, 14 May 2020 17:16:27 +0300 From: Roman Bolshakov To: CC: Cameron Esfahani , LAHAYE Olivier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Roman Bolshakov , Ard Biesheuvel , Liming Gao , Andrew Fish , Laszlo Ersek Subject: [PATCH v2] OvmfPkg: Skip initrd command on Xcode toolchain Date: Thu, 14 May 2020 16:48:22 +0300 Message-ID: <20200514134820.62047-1-r.bolshakov@yadro.com> X-Mailer: git-send-email 2.26.1 MIME-Version: 1.0 X-Originating-IP: [172.17.204.212] X-ClientProxiedBy: T-EXCH-01.corp.yadro.com (172.17.10.101) To T-EXCH-02.corp.yadro.com (172.17.10.102) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain OVMF booting stops with the assert if built with Xcode on macOS: Loading driver at 0x0001FAB8000 EntryPoint=3D0x0001FABF249 LinuxInitrdDyn= amicShellCommand.efi InstallProtocolInterface: BC62157E-3E33-4FEC-9920-2D3B36D750DF 1F218398 ProtectUefiImageCommon - 0x1F218140 - 0x000000001FAB8000 - 0x0000000000008A60 ASSERT_EFI_ERROR (Status =3D Unsupported) ASSERT LinuxInitrdDynamicShellCommand.c(378): !EFI_ERROR (Status) The assert comes from InitializeHiiPackage() after an attempt to retrieve HII package list from ImageHandle. Xcode still doesn't support HII resource section and LinuxInitrdDynamicShellCommand depends on it. Likewise 277a3958d93a ("OvmfPkg: Don't include TftpDynamicCommand in XCODE5 tool chain"), disable initrd command if built with Xcode toolchain Fixes: ec41733cfd10 ("OvmfPkg: add the 'initrd' dynamic shell command") Cc: Ard Biesheuvel Cc: Liming Gao Cc: Andrew Fish Cc: Laszlo Ersek Signed-off-by: Roman Bolshakov --- OvmfPkg/OvmfPkgIa32.dsc | 2 +- OvmfPkg/OvmfPkgIa32.fdf | 2 +- OvmfPkg/OvmfPkgIa32X64.dsc | 2 +- OvmfPkg/OvmfPkgIa32X64.fdf | 2 +- OvmfPkg/OvmfPkgX64.dsc | 2 +- OvmfPkg/OvmfPkgX64.fdf | 2 +- OvmfPkg/OvmfXen.dsc | 2 +- OvmfPkg/OvmfXen.fdf | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) Changes since v1: - Disabled build and packaging of the command on Xcode toolchain for all related architectures and platforms (Laszlo) - Corrected wrong reference in Fixes tag (Laszlo) FWIW, I can't really build for IA32X64 arch on macOS: $ OvmfPkg/build.sh -a IA32X64 Initializing workspace /Users/user/dev/edk2/BaseTools Loading previous configuration from /Users/user/dev/edk2/Conf/BuildEnv.sh WORKSPACE: /Users/user/dev/edk2 EDK_TOOLS_PATH: /Users/user/dev/edk2/BaseTools CONF_PATH: /Users/user/dev/edk2/Conf Unsupported processor architecture: IA32X64 Only IA32 or X64 is supported diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc index 41ac320296..e54aecdf27 100644 --- a/OvmfPkg/OvmfPkgIa32.dsc +++ b/OvmfPkg/OvmfPkgIa32.dsc @@ -871,11 +871,11 @@ =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D -!endif=0D OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.in= f {=0D =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D +!endif=0D ShellPkg/Application/Shell/Shell.inf {=0D =0D ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellComman= dLib.inf=0D diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf index fd81b6fa8b..e2b759aa8d 100644 --- a/OvmfPkg/OvmfPkgIa32.fdf +++ b/OvmfPkg/OvmfPkgIa32.fdf @@ -290,8 +290,8 @@ INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf =0D !if $(TOOL_CHAIN_TAG) !=3D "XCODE5"=0D INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf=0D -!endif=0D INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand= .inf=0D +!endif=0D INF ShellPkg/Application/Shell/Shell.inf=0D =0D INF MdeModulePkg/Logo/LogoDxe.inf=0D diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc index c2f11aee2c..c0c8397cb7 100644 --- a/OvmfPkg/OvmfPkgIa32X64.dsc +++ b/OvmfPkg/OvmfPkgIa32X64.dsc @@ -884,11 +884,11 @@ =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D -!endif=0D OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.in= f {=0D =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D +!endif=0D ShellPkg/Application/Shell/Shell.inf {=0D =0D ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellComman= dLib.inf=0D diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf index f71134a659..bfca1eff9e 100644 --- a/OvmfPkg/OvmfPkgIa32X64.fdf +++ b/OvmfPkg/OvmfPkgIa32X64.fdf @@ -291,8 +291,8 @@ INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf =0D !if $(TOOL_CHAIN_TAG) !=3D "XCODE5"=0D INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf=0D -!endif=0D INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand= .inf=0D +!endif=0D INF ShellPkg/Application/Shell/Shell.inf=0D =0D INF MdeModulePkg/Logo/LogoDxe.inf=0D diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 643e6041ad..22112bcb04 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -881,11 +881,11 @@ =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D -!endif=0D OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.in= f {=0D =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D +!endif=0D ShellPkg/Application/Shell/Shell.inf {=0D =0D ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellComman= dLib.inf=0D diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf index f71134a659..bfca1eff9e 100644 --- a/OvmfPkg/OvmfPkgX64.fdf +++ b/OvmfPkg/OvmfPkgX64.fdf @@ -291,8 +291,8 @@ INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf =0D !if $(TOOL_CHAIN_TAG) !=3D "XCODE5"=0D INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf=0D -!endif=0D INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand= .inf=0D +!endif=0D INF ShellPkg/Application/Shell/Shell.inf=0D =0D INF MdeModulePkg/Logo/LogoDxe.inf=0D diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc index 143dc6d5a7..3af0ee7054 100644 --- a/OvmfPkg/OvmfXen.dsc +++ b/OvmfPkg/OvmfXen.dsc @@ -675,11 +675,11 @@ =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D -!endif=0D OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.in= f {=0D =0D gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE=0D }=0D +!endif=0D ShellPkg/Application/Shell/Shell.inf {=0D =0D ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellComman= dLib.inf=0D diff --git a/OvmfPkg/OvmfXen.fdf b/OvmfPkg/OvmfXen.fdf index 3c4164a5f5..d9ee14b484 100644 --- a/OvmfPkg/OvmfXen.fdf +++ b/OvmfPkg/OvmfXen.fdf @@ -363,8 +363,8 @@ INF MdeModulePkg/Universal/Disk/UdfDxe/UdfDxe.inf =0D !if $(TOOL_CHAIN_TAG) !=3D "XCODE5"=0D INF ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf=0D -!endif=0D INF OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand= .inf=0D +!endif=0D INF ShellPkg/Application/Shell/Shell.inf=0D =0D INF MdeModulePkg/Logo/LogoDxe.inf=0D --=20 2.26.1