On Tue, Oct 26, 2021 at 9:32 AM Edward Pickup <[email protected]> wrote:
> Update the SHA in recipes for xen and xen-tools to use the latest releases; > update xen 4.14 to xen 4.14.3 release, update xen 4.15 to 4.15.1 release, > and > xen 4.16 to the current master version. > > Add a comment to each recipe indicating which version of Xen is used in > recipe. > > Do not apply patches that have been merged/solved in Xen and remove patch > files > not needed anymore. > > Create a test package to pack new tests introduced in 4.16. > > Add a depencency to util-linux-prlimit, as the xen 4.16 x86 requires > prlimit, > without this boot of dom0 fails. > Given your other email, I assume that the 4.16 bump isn't building for qemuarm64 ? Otherwise, they are all building for the supported targets ? Bruce > > Signed-off-by: Edward Pickup <[email protected]> > --- > ...ry-Fix-osdep_xenforeignmemory_map-pr.patch | 33 ------ > ...x86-make-hypervisor-build-with-gcc11.patch | 111 ------------------ > ...-around-build-issue-with-GNU-ld-2.37.patch | 36 ------ > recipes-extended/xen/xen-tools.inc | 29 +++++ > recipes-extended/xen/xen-tools_4.14.bb | 5 +- > recipes-extended/xen/xen-tools_4.15.bb | 5 +- > recipes-extended/xen/xen-tools_git.bb | 5 +- > recipes-extended/xen/xen_4.14.bb | 4 +- > recipes-extended/xen/xen_4.15.bb | 5 +- > recipes-extended/xen/xen_git.bb | 5 +- > 10 files changed, 41 insertions(+), 197 deletions(-) > delete mode 100644 > recipes-extended/xen/files/0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch > delete mode 100644 > recipes-extended/xen/files/0001-x86-make-hypervisor-build-with-gcc11.patch > delete mode 100644 > recipes-extended/xen/files/0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch > > diff --git > a/recipes-extended/xen/files/0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch > b/recipes-extended/xen/files/0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch > deleted file mode 100644 > index 2e3b1a6..0000000 > --- > a/recipes-extended/xen/files/0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch > +++ /dev/null > @@ -1,33 +0,0 @@ > -From 5d3e4ebb5c71477d74a0c503438545a0126d3863 Mon Sep 17 00:00:00 2001 > -From: Anthony PERARD <[email protected]> > -Date: Tue, 1 Jun 2021 16:41:47 +0100 > -Subject: [PATCH] libs/foreignmemory: Fix osdep_xenforeignmemory_map > prototype > - > -Commit cf8c4d3d13b8 made some preparation to have one day > -variable-length-array argument, but didn't declare the array in the > -function prototype the same way as in the function definition. And now > -GCC 11 complains about it. > - > -Fixes: cf8c4d3d13b8 ("tools/libs/foreignmemory: pull array length > argument to map forward") > -Signed-off-by: Anthony PERARD <[email protected]> > -Reviewed-by: Jan Beulich <[email protected]> > ---- > - tools/libs/foreignmemory/private.h | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/tools/libs/foreignmemory/private.h > b/tools/libs/foreignmemory/private.h > -index 1ee3626dd2..5bb0cefb09 100644 > ---- a/tools/libs/foreignmemory/private.h > -+++ b/tools/libs/foreignmemory/private.h > -@@ -32,7 +32,7 @@ int > osdep_xenforeignmemory_close(xenforeignmemory_handle *fmem); > - void *osdep_xenforeignmemory_map(xenforeignmemory_handle *fmem, > - uint32_t dom, void *addr, > - int prot, int flags, size_t num, > -- const xen_pfn_t arr[num], int err[num]); > -+ const xen_pfn_t arr[/*num*/], int > err[/*num*/]); > - int osdep_xenforeignmemory_unmap(xenforeignmemory_handle *fmem, > - void *addr, size_t num); > - > --- > -2.25.1 > - > diff --git > a/recipes-extended/xen/files/0001-x86-make-hypervisor-build-with-gcc11.patch > b/recipes-extended/xen/files/0001-x86-make-hypervisor-build-with-gcc11.patch > deleted file mode 100644 > index 72592c4..0000000 > --- > a/recipes-extended/xen/files/0001-x86-make-hypervisor-build-with-gcc11.patch > +++ /dev/null > @@ -1,111 +0,0 @@ > -From 722f59d38c710a940ab05e542a83020eb5546dea Mon Sep 17 00:00:00 2001 > -From: Jan Beulich <[email protected]> > -Date: Thu, 27 May 2021 14:40:29 +0200 > -Subject: [PATCH] x86: make hypervisor build with gcc11 > -MIME-Version: 1.0 > -Content-Type: text/plain; charset=UTF-8 > -Content-Transfer-Encoding: 8bit > - > -Gcc 11 looks to make incorrect assumptions about valid ranges that > -pointers may be used for addressing when they are derived from e.g. a > -plain constant. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100680. > - > -Utilize RELOC_HIDE() to work around the issue, which for x86 manifests > -in at least > -- mpparse.c:efi_check_config(), > -- tboot.c:tboot_probe(), > -- tboot.c:tboot_gen_frametable_integrity(), > -- x86_emulate.c:x86_emulate() (at -O2 only). > -The last case is particularly odd not just because it only triggers at > -higher optimization levels, but also because it only affects one of at > -least three similar constructs. Various "note" diagnostics claim the > -valid index range to be [0, 2⁶³-1]. > - > -Signed-off-by: Jan Beulich <[email protected]> > -Tested-by: Jason Andryuk <[email protected]> > -Acked-by: Roger Pau Monné <[email protected]> > ---- > - tools/tests/x86_emulator/x86-emulate.c | 7 +++++++ > - xen/arch/x86/x86_emulate/x86_emulate.c | 2 +- > - xen/include/asm-x86/fixmap.h | 2 +- > - xen/include/xen/compiler.h | 6 ++++++ > - xen/include/xen/pdx.h | 2 +- > - 5 files changed, 16 insertions(+), 3 deletions(-) > - > -diff --git a/tools/tests/x86_emulator/x86-emulate.c > b/tools/tests/x86_emulator/x86-emulate.c > -index 07f892dbbb..ea286d6ad8 100644 > ---- a/tools/tests/x86_emulator/x86-emulate.c > -+++ b/tools/tests/x86_emulator/x86-emulate.c > -@@ -8,6 +8,13 @@ > - > - #define ERR_PTR(val) NULL > - > -+/* See gcc bug 100680, but here don't bother making this version > dependent. */ > -+#define gcc11_wrap(x) ({ \ > -+ unsigned long x_; \ > -+ __asm__ ( "" : "=g" (x_) : "0" (x) ); \ > -+ (typeof(x))x_; \ > -+}) > -+ > - #define cpu_has_amd_erratum(nr) 0 > - #define cpu_has_mpx false > - #define read_bndcfgu() 0 > -diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c > b/xen/arch/x86/x86_emulate/x86_emulate.c > -index c25d88d0d8..31fdec030c 100644 > ---- a/xen/arch/x86/x86_emulate/x86_emulate.c > -+++ b/xen/arch/x86/x86_emulate/x86_emulate.c > -@@ -726,7 +726,7 @@ union vex { > - #define copy_VEX(ptr, vex) ({ \ > - if ( !mode_64bit() ) \ > - (vex).reg |= 8; \ > -- (ptr)[0 - PFX_BYTES] = ext < ext_8f08 ? 0xc4 : 0x8f; \ > -+ gcc11_wrap(ptr)[0 - PFX_BYTES] = ext < ext_8f08 ? 0xc4 : 0x8f; \ > - (ptr)[1 - PFX_BYTES] = (vex).raw[0]; \ > - (ptr)[2 - PFX_BYTES] = (vex).raw[1]; \ > - container_of((ptr) + 1 - PFX_BYTES, typeof(vex), raw[0]); \ > -diff --git a/xen/include/asm-x86/fixmap.h b/xen/include/asm-x86/fixmap.h > -index 0db314baeb..20746afd0a 100644 > ---- a/xen/include/asm-x86/fixmap.h > -+++ b/xen/include/asm-x86/fixmap.h > -@@ -78,7 +78,7 @@ extern void __set_fixmap( > - > - #define clear_fixmap(idx) __set_fixmap(idx, 0, 0) > - > --#define __fix_to_virt(x) (FIXADDR_TOP - ((x) << PAGE_SHIFT)) > -+#define __fix_to_virt(x) gcc11_wrap(FIXADDR_TOP - ((x) << PAGE_SHIFT)) > - #define __virt_to_fix(x) ((FIXADDR_TOP - ((x)&PAGE_MASK)) >> PAGE_SHIFT) > - > - #define fix_to_virt(x) ((void *)__fix_to_virt(x)) > -diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h > -index 17cf00e1ec..696c7eb89e 100644 > ---- a/xen/include/xen/compiler.h > -+++ b/xen/include/xen/compiler.h > -@@ -140,6 +140,12 @@ > - __asm__ ("" : "=r"(__ptr) : "0"(ptr)); \ > - (typeof(ptr)) (__ptr + (off)); }) > - > -+#if CONFIG_GCC_VERSION >= 110000 /* See gcc bug 100680. */ > -+# define gcc11_wrap(x) RELOC_HIDE(x, 0) > -+#else > -+# define gcc11_wrap(x) (x) > -+#endif > -+ > - #ifdef __GCC_ASM_FLAG_OUTPUTS__ > - # define ASM_FLAG_OUT(yes, no) yes > - #else > -diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h > -index 770fadc06c..9fcfb0ce52 100644 > ---- a/xen/include/xen/pdx.h > -+++ b/xen/include/xen/pdx.h > -@@ -19,7 +19,7 @@ extern u64 pdx_region_mask(u64 base, u64 len); > - extern void set_pdx_range(unsigned long smfn, unsigned long emfn); > - > - #define page_to_pdx(pg) ((pg) - frame_table) > --#define pdx_to_page(pdx) (frame_table + (pdx)) > -+#define pdx_to_page(pdx) gcc11_wrap(frame_table + (pdx)) > - > - bool __mfn_valid(unsigned long mfn); > - > --- > -2.25.1 > - > diff --git > a/recipes-extended/xen/files/0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch > b/recipes-extended/xen/files/0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch > deleted file mode 100644 > index f5108be..0000000 > --- > a/recipes-extended/xen/files/0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch > +++ /dev/null > @@ -1,36 +0,0 @@ > -From 58ad654ebce7ccb272a3f4f3482c03aaad850d31 Mon Sep 17 00:00:00 2001 > -From: Jan Beulich <[email protected]> > -Date: Thu, 22 Jul 2021 11:20:38 +0200 > -Subject: [PATCH] x86: work around build issue with GNU ld 2.37 > - > -I suspect it is commit 40726f16a8d7 ("ld script expression parsing") > -which broke the hypervisor build, by no longer accepting section names > -with a dash in them inside ADDR() (and perhaps other script directives > -expecting just a section name, not an expression): .note.gnu.build-id > -is such a section. > - > -Quoting all section names passed to ADDR() via DECL_SECTION() works > -around the regression. > - > -Signed-off-by: Jan Beulich <[email protected]> > -Acked-by: Andrew Cooper <[email protected]> > ---- > - xen/arch/x86/xen.lds.S | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/xen/arch/x86/xen.lds.S b/xen/arch/x86/xen.lds.S > -index 9c6c1c8005..955d5cf4a0 100644 > ---- a/xen/arch/x86/xen.lds.S > -+++ b/xen/arch/x86/xen.lds.S > -@@ -18,7 +18,7 @@ ENTRY(efi_start) > - #else /* !EFI */ > - > - #define FORMAT "elf64-x86-64" > --#define DECL_SECTION(x) x : AT(ADDR(x) - __XEN_VIRT_START) > -+#define DECL_SECTION(x) x : AT(ADDR(#x) - __XEN_VIRT_START) > - > - ENTRY(start_pa) > - > --- > -2.25.1 > - > diff --git a/recipes-extended/xen/xen-tools.inc > b/recipes-extended/xen/xen-tools.inc > index 614f557..d831941 100644 > --- a/recipes-extended/xen/xen-tools.inc > +++ b/recipes-extended/xen/xen-tools.inc > @@ -102,6 +102,7 @@ RSUGGESTS:${PN}-xencov = "${PN}-xencov-split" > > RDEPENDS:${PN}-xencommons = "\ > bash \ > + util-linux-prlimit \ > ${PN}-console \ > ${PN}-xenstore \ > virtual/xenstored \ > @@ -213,6 +214,9 @@ PACKAGES = " \ > ${PN}-xm-examples \ > ${PN}-xen-access \ > ${PN}-xen-memshare \ > + ${PN}-test \ > + ${PN}-xen-vmtrace \ > + ${PN}-xen-mceinj \ > " > > PROVIDES =+ " \ > @@ -684,6 +688,31 @@ FILES:${PN}-xen-memshare += "\ > # memshare is only built for x86, so allow empty package for other archs > ALLOW_EMPTY:${PN}-xen-memshare = "1" > > +FILES:${PN}-test += "\ > + ${libdir}/xen/bin/test-xenstore \ > + ${libdir}/xen/bin/test-resource \ > + ${libdir}/xen/bin/test-cpu-policy \ > + ${libdir}/xen/bin/test-tsx \ > + " > + > +# test-xenstore and test-resource currently only exist in 4.16 > +# test-cpu-policy and test-tsx only exist in 4.16 for x86 > +ALLOW_EMPTY:${PN}-test = "1" > + > +FILES:${PN}-xen-mceinj +="\ > + ${sbindir}/xen-mceinj \ > + " > + > +# xen-mceinj is only built for x86 4.16, so allow empty package > +ALLOW_EMPTY:${PN}-xen-mceinj = "1" > + > +FILES:${PN}-xen-vmtrace +="\ > + ${sbindir}/xen-vmtrace \ > + " > + > +# xen-vmtrace is only built for x86 4.16, so allow empty package > +ALLOW_EMPTY:${PN}-xen-vmtrace = "1" > + > INSANE_SKIP:${PN} = "already-stripped" > > # configure init.d scripts > diff --git a/recipes-extended/xen/xen-tools_4.14.bb > b/recipes-extended/xen/xen-tools_4.14.bb > index ce5dc2e..9d78e44 100644 > --- a/recipes-extended/xen/xen-tools_4.14.bb > +++ b/recipes-extended/xen/xen-tools_4.14.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "b6a8c4f72def4d1135ff42660a86276ce2565c8c" > +# 4.14.3 release SHA > +SRCREV ?= "9f2b6c5ec2ded4c1caf149743e862c5f15d6d083" > > XEN_REL ?= "4.14" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -8,8 +9,6 @@ SRC_URI = " \ > file://0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch \ > > file://0001-firmware-provide-a-stand-alone-set-of-headers-Xen-4.14.patch \ > > file://0001-tools-firmware-Build-firmware-as-ffreestanding-Xen-4.14.patch \ > - > file://0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen-tools_4.15.bb > b/recipes-extended/xen/xen-tools_4.15.bb > index e9c3bd6..840f162 100644 > --- a/recipes-extended/xen/xen-tools_4.15.bb > +++ b/recipes-extended/xen/xen-tools_4.15.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4" > +# xen 4.15.1 release sha > +SRCREV ?= "84fa99099b920f7bcde8899e1a9b756078719d7d" > > XEN_REL ?= "4.15" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -6,8 +7,6 @@ XEN_BRANCH ?= "stable-${XEN_REL}" > SRC_URI = " \ > git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} > <http://xenbits.xen.org/xen.git;branch=$%7BXEN_BRANCH%7D> \ > file://0001-python-pygrub-pass-DISTUTILS-xen-4.15.patch \ > - > file://0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/ > xen-tools_git.bb > index 6926bd9..8ff9c4c 100644 > --- a/recipes-extended/xen/xen-tools_git.bb > +++ b/recipes-extended/xen/xen-tools_git.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced" > +# master status on 2020-10-21 > +SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9" > > XEN_REL ?= "4.16" > XEN_BRANCH ?= "master" > @@ -6,8 +7,6 @@ XEN_BRANCH ?= "master" > SRC_URI = " \ > git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} > <http://xenbits.xen.org/xen.git;branch=$%7BXEN_BRANCH%7D> \ > file://0001-python-pygrub-pass-DISTUTILS-xen-4.15.patch \ > - > file://0001-libs-foreignmemory-Fix-osdep_xenforeignmemory_map-pr.patch \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen_4.14.bb b/recipes-extended/xen/ > xen_4.14.bb > index 291ba16..0d7d20b 100644 > --- a/recipes-extended/xen/xen_4.14.bb > +++ b/recipes-extended/xen/xen_4.14.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "b6a8c4f72def4d1135ff42660a86276ce2565c8c" > +# 4.14.3 release SHA > +SRCREV ?= "9f2b6c5ec2ded4c1caf149743e862c5f15d6d083" > > XEN_REL ?= "4.14" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -7,7 +8,6 @@ SRC_URI = " \ > git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} > <http://xenbits.xen.org/xen.git;branch=$%7BXEN_BRANCH%7D> \ > file://xen-arm64-implement-atomic-fetch-add.patch \ > > > file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch > \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen_4.15.bb b/recipes-extended/xen/ > xen_4.15.bb > index 0605441..0cfaf0c 100644 > --- a/recipes-extended/xen/xen_4.15.bb > +++ b/recipes-extended/xen/xen_4.15.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4" > +# xen 4.15.1 release sha > +SRCREV ?= "84fa99099b920f7bcde8899e1a9b756078719d7d" > > XEN_REL ?= "4.15" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -7,8 +8,6 @@ SRC_URI = " \ > git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} > <http://xenbits.xen.org/xen.git;branch=$%7BXEN_BRANCH%7D> \ > file://xen-arm64-implement-atomic-fetch-add.patch \ > > > file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch > \ > - file://0001-x86-make-hypervisor-build-with-gcc11.patch \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/ > xen_git.bb > index 12c9403..20227e0 100644 > --- a/recipes-extended/xen/xen_git.bb > +++ b/recipes-extended/xen/xen_git.bb > @@ -1,4 +1,5 @@ > -SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced" > +# master status on 2020-10-21 > +SRCREV ?= "23ec1ebc8acbfd2bf06f6085a776f0db923f9fa9" > > XEN_REL ?= "4.16" > XEN_BRANCH ?= "master" > @@ -7,8 +8,6 @@ SRC_URI = " \ > git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} > <http://xenbits.xen.org/xen.git;branch=$%7BXEN_BRANCH%7D> \ > file://xen-arm64-implement-atomic-fetch-add.patch \ > > > file://0001-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch > \ > - file://0001-x86-make-hypervisor-build-with-gcc11.patch \ > - file://0001-x86-work-around-build-issue-with-GNU-ld-2.37.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > -- > 2.25.1 > > > > > -- - Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end - "Use the force Harry" - Gandalf, Star Trek II
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#6858): https://lists.yoctoproject.org/g/meta-virtualization/message/6858 Mute This Topic: https://lists.yoctoproject.org/mt/86602551/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
