Skip to content

Commit

Permalink
Update to Xen 4.19.0
Browse files Browse the repository at this point in the history
Rebase all the patches, drop patches included upstream already:
- all "backports"
- all HWP-related (with except to switching the default, which is moved
  to qubes-specific section)
- MSI-X patches
- 1013-libxl-do-not-force-qdisk-backend-for-cdrom.patch - appears to be
  not necessary anymore

Renumber the patches to have clean ordering, and also drop patch number
from the title so further rebases generate smaller diff.

Other changes:
- disable pygrub via (now existing) configure option, this removes
  libxenfsimage too
- add --enable-systemd - the default in -rc2 is disabled, likely due to
  a bug
- remove traces of xencons and xentrace_format - both removed upstream
- don't fail the build on missing build-id in xen.efi.elf.
  • Loading branch information
marmarek committed Aug 16, 2024
1 parent 5747625 commit c664a5e
Show file tree
Hide file tree
Showing 96 changed files with 583 additions and 4,834 deletions.
4 changes: 2 additions & 2 deletions .qubesbuilder
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ source:
# signature: https://downloads.xenproject.org/release/xen/@VERSION@/xen-@[email protected]
# - git-url: https://gitlab.com/xen-project/xen.git
- git-url: https://xenbits.xenproject.org/git-http/xen.git
tag: RELEASE-4.17.4
git-basename: xen-4.17.4
tag: RELEASE-4.19.0
git-basename: xen-@VERSION@
pubkeys:
- xen.org-key.asc
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
From 097d3f0c0c735cd3fee4bcbb707cbccb4fd0770b Mon Sep 17 00:00:00 2001
From bf8e7496d95c2a71a3bdac4340e1a9c03b86b0af Mon Sep 17 00:00:00 2001
From: Konrad Rzeszutek Wilk <konrad@xxxxxxxxxx>
Date: Fri, 24 Apr 2015 16:47:18 -0400
Subject: [PATCH 01/26] EFI/early: Add /noexit to inhibit calling
ExitBootServices
Subject: [PATCH] EFI/early: Add /noexit to inhibit calling ExitBootServices

The '/noexitboot' parameter will inhibit Xen in calling ExitBootServices.

Expand All @@ -18,10 +17,10 @@ Signed-off-by: Marcus of Wetware Labs <[email protected]>
2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/efi/efi-boot.h b/xen/arch/x86/efi/efi-boot.h
index e82ac9daa7ad..2221cdec681a 100644
index f282358435f1..39cc8baef4bc 100644
--- a/xen/arch/x86/efi/efi-boot.h
+++ b/xen/arch/x86/efi/efi-boot.h
@@ -816,7 +816,7 @@ void __init efi_multiboot2(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable
@@ -909,7 +909,7 @@ void asmlinkage __init efi_multiboot2(EFI_HANDLE ImageHandle,

efi_relocate_esrt(SystemTable);

Expand All @@ -31,10 +30,10 @@ index e82ac9daa7ad..2221cdec681a 100644

/*
diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index db0340c8e262..d78a315e56e0 100644
index efbec00af9da..8004cf4d1303 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -145,7 +145,7 @@ static void efi_tables(void);
@@ -146,7 +146,7 @@ static void efi_tables(void);
static void setup_efi_pci(void);
static void efi_variables(void);
static void efi_set_gop_mode(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop, UINTN gop_mode);
Expand All @@ -43,7 +42,7 @@ index db0340c8e262..d78a315e56e0 100644

static const EFI_BOOT_SERVICES *__initdata efi_bs;
static UINT32 __initdata efi_bs_revision;
@@ -1175,7 +1175,7 @@ static void __init efi_relocate_esrt(EFI_SYSTEM_TABLE *SystemTable)
@@ -1180,7 +1180,7 @@ static void __init efi_set_gop_mode(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop, UINTN gop
#define INVALID_VIRTUAL_ADDRESS (0xBAAADUL << \
(EFI_PAGE_SHIFT + BITS_PER_LONG - 32))

Expand All @@ -52,7 +51,7 @@ index db0340c8e262..d78a315e56e0 100644
{
EFI_STATUS status;
UINTN info_size = 0, map_key;
@@ -1206,8 +1206,11 @@ static void __init efi_exit_boot(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syste
@@ -1211,8 +1211,11 @@ static void __init efi_exit_boot(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syste

efi_arch_pre_exit_boot();

Expand All @@ -65,7 +64,7 @@ index db0340c8e262..d78a315e56e0 100644
efi_bs = NULL;
if ( status != EFI_INVALID_PARAMETER || retry )
break;
@@ -1262,7 +1265,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
@@ -1268,7 +1271,7 @@ void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
EFI_SHIM_LOCK_PROTOCOL *shim_lock;
EFI_GRAPHICS_OUTPUT_PROTOCOL *gop = NULL;
union string section = { NULL }, name;
Expand All @@ -74,7 +73,7 @@ index db0340c8e262..d78a315e56e0 100644
const char *option_str;
bool use_cfg_file;
int dt_modules_found;
@@ -1312,6 +1315,8 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
@@ -1318,6 +1321,8 @@ void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
base_video = true;
else if ( wstrcmp(ptr + 1, L"mapbs") == 0 )
map_bs = true;
Expand All @@ -83,15 +82,15 @@ index db0340c8e262..d78a315e56e0 100644
else if ( wstrncmp(ptr + 1, L"cfg=", 4) == 0 )
cfg_file_name = ptr + 5;
else if ( i + 1 < argc && wstrcmp(ptr + 1, L"cfg") == 0 )
@@ -1322,6 +1327,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
@@ -1328,6 +1333,7 @@ void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
PrintStr(L"Xen EFI Loader options:\r\n");
PrintStr(L"-basevideo retain current video mode\r\n");
PrintStr(L"-mapbs map EfiBootServices{Code,Data}\r\n");
+ PrintStr(L"-noexitboot Do not call ExitBootServices\r\n");
PrintStr(L"-cfg=<file> specify configuration file\r\n");
PrintStr(L"-help, -? display this help\r\n");
blexit(NULL);
@@ -1539,7 +1545,7 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
@@ -1541,7 +1547,7 @@ void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,

efi_relocate_esrt(SystemTable);

Expand All @@ -101,5 +100,5 @@ index db0340c8e262..d78a315e56e0 100644
efi_arch_post_exit_boot(); /* Doesn't return. */
}
--
2.37.3
2.44.0

Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
From f0ec9a1726a66278249f58a46c2b4f9394b32eff Mon Sep 17 00:00:00 2001
From 6707e983682615765b5ac1df7c9e811852cc683d Mon Sep 17 00:00:00 2001
From: Ross Lagerwall <[email protected]>
Date: Fri, 20 Mar 2015 14:32:04 +0000
Subject: [PATCH 02/26] efi: Ensure incorrectly typed runtime services get
mapped
Subject: [PATCH] efi: Ensure incorrectly typed runtime services get mapped

Some firmware implementations do not correctly mark memory needed for runtime
services, not setting the EFI_MEMORY_RUNTIME bit and giving it a type
Expand All @@ -28,18 +27,18 @@ Signed-off-by: Ross Lagerwall <[email protected]>
1 file changed, 6 insertions(+)

diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index d78a315e56e0..4fb755bc4e43 100644
index 8004cf4d1303..b34521c5e74a 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -156,6 +156,7 @@ static SIMPLE_TEXT_OUTPUT_INTERFACE *__initdata StdErr;
@@ -157,6 +157,7 @@ static SIMPLE_TEXT_OUTPUT_INTERFACE *__initdata StdErr;

static UINT32 __initdata mdesc_ver;
static bool __initdata map_bs;
+static bool __initdata map_res = true;

static struct file __initdata cfg;
static struct file __initdata kernel;
@@ -1717,6 +1718,11 @@ void __init efi_init_memory(void)
@@ -1723,6 +1724,11 @@ void __init efi_init_memory(void)
if ( !map_bs )
continue;
break;
Expand All @@ -52,5 +51,5 @@ index d78a315e56e0..4fb755bc4e43 100644
}

--
2.37.3
2.44.0

Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
From 9fbad03a0bac47d127bf7a62c8c3c374e4ca950e Mon Sep 17 00:00:00 2001
From d837a8e0ea14164a237d15b6355c915b8d4e5ff0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?=
<[email protected]>
Date: Sat, 4 Jun 2016 19:13:31 +0200
Subject: [PATCH 03/26] Add xen.cfg options for /mapbs and /noexitboot
Subject: [PATCH] Add xen.cfg options for /mapbs and /noexitboot
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Expand All @@ -15,12 +15,12 @@ Signed-off-by: Marek Marczykowski-Górecki <[email protected]>
1 file changed, 12 insertions(+)

diff --git a/xen/common/efi/boot.c b/xen/common/efi/boot.c
index 4fb755bc4e43..8e880fe30c75 100644
index b34521c5e74a..ad8488f7f9d7 100644
--- a/xen/common/efi/boot.c
+++ b/xen/common/efi/boot.c
@@ -1470,6 +1470,18 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable)
@@ -1472,6 +1472,18 @@ void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle,
name.s = get_value(&cfg, section.s, "options");
efi_arch_handle_cmdline(argc ? *argv : NULL, options, name.s);
efi_arch_handle_cmdline(options, name.s);

+ name.s = get_value(&cfg, section.s, "mapbs");
+ if ( name.s )
Expand All @@ -38,5 +38,5 @@ index 4fb755bc4e43..8e880fe30c75 100644
{
name.cs = get_value(&cfg, section.s, "video");
--
2.37.3
2.44.0

27 changes: 27 additions & 0 deletions 0203-xen.efi.build.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
From 22a0881b94f0b17d369ce090cbf3cced6366fae5 Mon Sep 17 00:00:00 2001
From: Fedora developers <[email protected]>
Date: Mon, 8 Jul 2024 13:35:51 +0200
Subject: [PATCH] xen.efi.build

---
xen/arch/x86/arch.mk | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/xen/arch/x86/arch.mk b/xen/arch/x86/arch.mk
index 4f6c086988dd..0efc664bc919 100644
--- a/xen/arch/x86/arch.mk
+++ b/xen/arch/x86/arch.mk
@@ -91,7 +91,9 @@ XEN_BUILD_EFI := $(call if-success,$(CC) $(filter-out -include %/include/xen/con
-c $(srctree)/$(efi-check).c -o $(efi-check).o,y)

# Check if the linker supports PE.
-EFI_LDFLAGS := $(patsubst -m%,-mi386pep,$(LDFLAGS)) --subsystem=10
+#EFI_LDFLAGS := $(patsubst -m%,-mi386pep,$(LDFLAGS)) --subsystem=10
+# use a reduced set of options from LDFLAGS
+EFI_LDFLAGS = --as-needed --build-id=sha1 -mi386pep --subsystem=10
LD_PE_check_cmd = $(call ld-option,$(EFI_LDFLAGS) --image-base=0x100000000 -o $(efi-check).efi $(efi-check).o)
XEN_BUILD_PE := $(LD_PE_check_cmd)

--
2.44.0

13 changes: 0 additions & 13 deletions 0204-xen.efi.build.patch

This file was deleted.

43 changes: 0 additions & 43 deletions 0301-x86-mm-shadow-avoid-assuming-a-specific-Xen-PAT.patch

This file was deleted.

49 changes: 0 additions & 49 deletions 0302-x86-mm-shadow-do-not-open-code-PAGE_CACHE_ATTRS.patch

This file was deleted.

50 changes: 0 additions & 50 deletions 0303-p2m-pt-Avoid-hard-coding-Xen-s-PAT.patch

This file was deleted.

Loading

0 comments on commit c664a5e

Please sign in to comment.