On Fri, Jan 6, 2023 at 6:46 AM Michal Orzel <[email protected]> wrote:
> Update 4.16 recipes to use the latest 4.16.3 release. > Also, remove the GCC 12 fix patch as it seems to be no longer needed. > > Signed-off-by: Michal Orzel <[email protected]> > Reviewed-by: Christopher Clark <[email protected]> thanks Christopher > --- > Changes in v2: > - none > --- > .../files/xen-fix-gcc12-build-issues.patch | 433 ------------------ > recipes-extended/xen/xen-tools_4.16.bb | 5 +- > recipes-extended/xen/xen_4.16.bb | 5 +- > 3 files changed, 4 insertions(+), 439 deletions(-) > delete mode 100644 > recipes-extended/xen/files/xen-fix-gcc12-build-issues.patch > > diff --git a/recipes-extended/xen/files/xen-fix-gcc12-build-issues.patch > b/recipes-extended/xen/files/xen-fix-gcc12-build-issues.patch > deleted file mode 100644 > index 6cdd312db110..000000000000 > --- a/recipes-extended/xen/files/xen-fix-gcc12-build-issues.patch > +++ /dev/null > @@ -1,433 +0,0 @@ > -References: bsc#1196545 > - > -Compiling against gcc12. > - > -Many of the failures are -Werror=array-bounds where macros > -from mm.h are being used. Common Examples are, > -include/asm/mm.h:528:61: error: array subscript 0 is outside array bounds > of 'long unsigned int[0]' [-Werror=array-bounds] > -include/xen/mm.h:287:21: error: array subscript [0, 288230376151711743] > is outside array bounds of 'struct page_info[0]' [-Werror=array-bounds] > - > -There are also several other headers that generate array-bounds macro > failures. > -The pragmas to override are mostly in '.c' files with the exception of, > -xen/arch/x86/mm/shadow/private.h > -xen/include/asm-x86/paging.h > - > -[Upstream-Status: imported from: > https://build.opensuse.org/package/view_file/openSUSE:Factory/xen/gcc12-fixes.patch?expand=1 > ] > - > -Signed-off-by: Bruce Ashfield <[email protected]> > - > - > -Index: xen-4.16.1-testing/xen/drivers/passthrough/amd/iommu_intr.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/drivers/passthrough/amd/iommu_intr.c > -+++ xen-4.16.1-testing/xen/drivers/passthrough/amd/iommu_intr.c > -@@ -23,6 +23,10 @@ > - > - #include "iommu.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - union irte32 { > - uint32_t raw; > - struct { > -Index: xen-4.16.1-testing/xen/drivers/passthrough/x86/hvm.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/drivers/passthrough/x86/hvm.c > -+++ xen-4.16.1-testing/xen/drivers/passthrough/x86/hvm.c > -@@ -901,6 +901,9 @@ static void __hvm_dpci_eoi(struct domain > - hvm_pirq_eoi(pirq); > - } > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Waddress" > -+#endif > - static void hvm_gsi_eoi(struct domain *d, unsigned int gsi) > - { > - struct pirq *pirq = pirq_info(d, gsi); > -Index: xen-4.16.1-testing/xen/common/domctl.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/domctl.c > -+++ xen-4.16.1-testing/xen/common/domctl.c > -@@ -32,6 +32,10 @@ > - #include <public/domctl.h> > - #include <xsm/xsm.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - static DEFINE_SPINLOCK(domctl_lock); > - > - static int nodemask_to_xenctl_bitmap(struct xenctl_bitmap > *xenctl_nodemap, > -Index: xen-4.16.1-testing/xen/common/efi/boot.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/efi/boot.c > -+++ xen-4.16.1-testing/xen/common/efi/boot.c > -@@ -31,6 +31,10 @@ > - #undef __ASSEMBLY__ > - #endif > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - #define EFI_REVISION(major, minor) (((major) << 16) | (minor)) > - > - #define SMBIOS3_TABLE_GUID \ > -Index: xen-4.16.1-testing/xen/common/xmalloc_tlsf.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/xmalloc_tlsf.c > -+++ xen-4.16.1-testing/xen/common/xmalloc_tlsf.c > -@@ -28,6 +28,10 @@ > - #include <xen/pfn.h> > - #include <asm/time.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - #define MAX_POOL_NAME_LEN 16 > - > - /* Some IMPORTANT TLSF parameters */ > -Index: xen-4.16.1-testing/xen/common/memory.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/memory.c > -+++ xen-4.16.1-testing/xen/common/memory.c > -@@ -35,6 +35,10 @@ > - #include <asm/guest.h> > - #endif > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - struct memop_args { > - /* INPUT */ > - struct domain *domain; /* Domain to be affected. */ > -Index: xen-4.16.1-testing/xen/common/page_alloc.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/page_alloc.c > -+++ xen-4.16.1-testing/xen/common/page_alloc.c > -@@ -155,6 +155,10 @@ > - #define PGC_reserved 0 > - #endif > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* > - * Comma-separated list of hexadecimal page numbers containing bad bytes. > - * e.g. 'badpage=0x3f45,0x8a321'. > -@@ -1529,6 +1533,7 @@ static void free_heap_pages( > - } > - > - > -+ > - /* > - * Following rules applied for page offline: > - * Once a page is broken, it can't be assigned anymore > -Index: xen-4.16.1-testing/xen/common/vmap.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/common/vmap.c > -+++ xen-4.16.1-testing/xen/common/vmap.c > -@@ -9,6 +9,10 @@ > - #include <xen/vmap.h> > - #include <asm/page.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - static DEFINE_SPINLOCK(vm_lock); > - static void *__read_mostly vm_base[VMAP_REGION_NR]; > - #define vm_bitmap(x) ((unsigned long *)vm_base[x]) > -Index: xen-4.16.1-testing/xen/include/asm-x86/paging.h > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/include/asm-x86/paging.h > -+++ xen-4.16.1-testing/xen/include/asm-x86/paging.h > -@@ -32,6 +32,10 @@ > - #include <asm/flushtlb.h> > - #include <asm/domain.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - > /***************************************************************************** > - * Macros to tell which paging mode a domain is in */ > - > -Index: xen-4.16.1-testing/xen/arch/x86/x86_64/traps.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/x86_64/traps.c > -+++ xen-4.16.1-testing/xen/arch/x86/x86_64/traps.c > -@@ -25,6 +25,9 @@ > - #include <asm/hvm/hvm.h> > - #include <asm/hvm/support.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > - > - static void print_xen_info(void) > - { > -Index: xen-4.16.1-testing/xen/arch/x86/cpu/mcheck/mcaction.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/cpu/mcheck/mcaction.c > -+++ xen-4.16.1-testing/xen/arch/x86/cpu/mcheck/mcaction.c > -@@ -4,6 +4,10 @@ > - #include "vmce.h" > - #include "mce.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - static struct mcinfo_recovery * > - mci_action_add_pageoffline(int bank, struct mc_info *mi, > - mfn_t mfn, uint32_t status) > -Index: xen-4.16.1-testing/xen/arch/x86/cpu/mcheck/mce.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/cpu/mcheck/mce.c > -+++ xen-4.16.1-testing/xen/arch/x86/cpu/mcheck/mce.c > -@@ -30,6 +30,10 @@ > - #include "util.h" > - #include "vmce.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - bool __read_mostly opt_mce = true; > - boolean_param("mce", opt_mce); > - bool __read_mostly mce_broadcast; > -Index: xen-4.16.1-testing/xen/arch/x86/hvm/hvm.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/hvm/hvm.c > -+++ xen-4.16.1-testing/xen/arch/x86/hvm/hvm.c > -@@ -81,6 +81,10 @@ > - > - #include <compat/hvm/hvm_op.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - bool_t __read_mostly hvm_enabled; > - > - #ifdef DBG_LEVEL_0 > -Index: xen-4.16.1-testing/xen/arch/x86/pv/dom0_build.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/pv/dom0_build.c > -+++ xen-4.16.1-testing/xen/arch/x86/pv/dom0_build.c > -@@ -22,6 +22,10 @@ > - #include <asm/pv/mm.h> > - #include <asm/setup.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* Allow ring-3 access in long mode as guest cannot use ring 1 ... */ > - #define BASE_PROT (_PAGE_PRESENT|_PAGE_RW|_PAGE_ACCESSED|_PAGE_USER) > - #define L1_PROT (BASE_PROT|_PAGE_GUEST_KERNEL) > -Index: xen-4.16.1-testing/xen/arch/x86/pv/ro-page-fault.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/pv/ro-page-fault.c > -+++ xen-4.16.1-testing/xen/arch/x86/pv/ro-page-fault.c > -@@ -26,6 +26,10 @@ > - #include "emulate.h" > - #include "mm.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /********************* > - * Writable Pagetables > - */ > -Index: xen-4.16.1-testing/xen/arch/x86/pv/emul-priv-op.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/pv/emul-priv-op.c > -+++ xen-4.16.1-testing/xen/arch/x86/pv/emul-priv-op.c > -@@ -40,6 +40,10 @@ > - #include "emulate.h" > - #include "mm.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - struct priv_op_ctxt { > - struct x86_emulate_ctxt ctxt; > - struct { > -Index: xen-4.16.1-testing/xen/arch/x86/pv/mm.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/pv/mm.c > -+++ xen-4.16.1-testing/xen/arch/x86/pv/mm.c > -@@ -26,6 +26,10 @@ > - > - #include "mm.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* > - * Get a mapping of a PV guest's l1e for this linear address. The return > - * pointer should be unmapped using unmap_domain_page(). > -Index: xen-4.16.1-testing/xen/arch/x86/domain_page.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/domain_page.c > -+++ xen-4.16.1-testing/xen/arch/x86/domain_page.c > -@@ -18,6 +18,10 @@ > - #include <asm/hardirq.h> > - #include <asm/setup.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - static DEFINE_PER_CPU(struct vcpu *, override); > - > - static inline struct vcpu *mapcache_current_vcpu(void) > -Index: xen-4.16.1-testing/xen/arch/x86/mm/shadow/private.h > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/mm/shadow/private.h > -+++ xen-4.16.1-testing/xen/arch/x86/mm/shadow/private.h > -@@ -33,6 +33,10 @@ > - > - #include "../mm-locks.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - > /****************************************************************************** > - * Levels of self-test and paranoia > - */ > -Index: xen-4.16.1-testing/xen/arch/x86/mm/hap/hap.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/mm/hap/hap.c > -+++ xen-4.16.1-testing/xen/arch/x86/mm/hap/hap.c > -@@ -42,6 +42,10 @@ > - > - #include "private.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /************************************************/ > - /* HAP VRAM TRACKING SUPPORT */ > - /************************************************/ > -Index: xen-4.16.1-testing/xen/arch/x86/mm/p2m-pod.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/mm/p2m-pod.c > -+++ xen-4.16.1-testing/xen/arch/x86/mm/p2m-pod.c > -@@ -31,6 +31,10 @@ > - > - #include "mm-locks.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - #define superpage_aligned(_x) (((_x)&(SUPERPAGE_PAGES-1))==0) > - > - /* Enforce lock ordering when grabbing the "external" page_alloc lock */ > -Index: xen-4.16.1-testing/xen/arch/x86/mm/p2m-ept.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/mm/p2m-ept.c > -+++ xen-4.16.1-testing/xen/arch/x86/mm/p2m-ept.c > -@@ -36,6 +36,10 @@ > - > - #include "mm-locks.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - #define atomic_read_ept_entry(__pepte) \ > - ( (ept_entry_t) { .epte = read_atomic(&(__pepte)->epte) } ) > - > -Index: xen-4.16.1-testing/xen/arch/x86/mm/p2m.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/mm/p2m.c > -+++ xen-4.16.1-testing/xen/arch/x86/mm/p2m.c > -@@ -44,6 +44,10 @@ > - > - #include "mm-locks.h" > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* Override macro from asm/page.h to make work with mfn_t */ > - #undef virt_to_mfn > - #define virt_to_mfn(v) _mfn(__virt_to_mfn(v)) > -Index: xen-4.16.1-testing/xen/arch/x86/tboot.c > -=================================================================== > ---- xen-4.16.1-testing.orig/xen/arch/x86/tboot.c > -+++ xen-4.16.1-testing/xen/arch/x86/tboot.c > -@@ -16,6 +16,10 @@ > - #include <asm/setup.h> > - #include <crypto/vmac.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* tboot=<physical address of shared page> */ > - static unsigned long __initdata opt_tboot_pa; > - integer_param("tboot", opt_tboot_pa); > -Index: xen-4.16.1-testing/tools/firmware/hvmloader/ovmf.c > -=================================================================== > ---- xen-4.16.1-testing.orig/tools/firmware/hvmloader/ovmf.c > -+++ xen-4.16.1-testing/tools/firmware/hvmloader/ovmf.c > -@@ -34,6 +34,11 @@ > - #include <xen/hvm/ioreq.h> > - #include <xen/memory.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#pragma GCC diagnostic ignored "-Wstringop-overflow" > -+#endif > -+ > - #define OVMF_MAXOFFSET 0x000FFFFFULL > - #define OVMF_END 0x100000000ULL > - #define LOWCHUNK_BEGIN 0x000F0000 > -Index: xen-4.16.1-testing/tools/firmware/hvmloader/seabios.c > -=================================================================== > ---- xen-4.16.1-testing.orig/tools/firmware/hvmloader/seabios.c > -+++ xen-4.16.1-testing/tools/firmware/hvmloader/seabios.c > -@@ -29,6 +29,11 @@ > - #include <acpi2_0.h> > - #include <libacpi.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#pragma GCC diagnostic ignored "-Wstringop-overflow" > -+#endif > -+ > - struct seabios_info { > - char signature[14]; /* XenHVMSeaBIOS\0 */ > - uint8_t length; /* Length of this struct */ > -Index: xen-4.16.1-testing/tools/firmware/hvmloader/util.c > -=================================================================== > ---- xen-4.16.1-testing.orig/tools/firmware/hvmloader/util.c > -+++ xen-4.16.1-testing/tools/firmware/hvmloader/util.c > -@@ -31,6 +31,10 @@ > - #include <xen/hvm/hvm_xs_strings.h> > - #include <xen/hvm/params.h> > - > -+#if __GNUC__ >= 12 > -+#pragma GCC diagnostic ignored "-Warray-bounds" > -+#endif > -+ > - /* > - * Check whether there exists overlap in the specified memory range. > - * Returns true if exists, else returns false. > - > diff --git a/recipes-extended/xen/xen-tools_4.16.bb > b/recipes-extended/xen/xen-tools_4.16.bb > index 2200a5a44abe..b5e555e6eabb 100644 > --- a/recipes-extended/xen/xen-tools_4.16.bb > +++ b/recipes-extended/xen/xen-tools_4.16.bb > @@ -1,5 +1,5 @@ > -# xen 4.16.2 release sha > -SRCREV ?= "cea5ed49bb5716698a11312a3f38bc8865cd1e67" > +# xen 4.16.3 release sha > +SRCREV ?= "556c2e817c9cf23b675eb4eaa2dc091f7bb3039f" > > XEN_REL ?= "4.16" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -7,7 +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://xen-fix-gcc12-build-issues.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > diff --git a/recipes-extended/xen/xen_4.16.bb b/recipes-extended/xen/ > xen_4.16.bb > index 70e1d70e9c29..14a4fa79c5dd 100644 > --- a/recipes-extended/xen/xen_4.16.bb > +++ b/recipes-extended/xen/xen_4.16.bb > @@ -1,5 +1,5 @@ > -# xen 4.16.2 release sha > -SRCREV ?= "cea5ed49bb5716698a11312a3f38bc8865cd1e67" > +# xen 4.16.3 release sha > +SRCREV ?= "556c2e817c9cf23b675eb4eaa2dc091f7bb3039f" > > XEN_REL ?= "4.16" > XEN_BRANCH ?= "stable-${XEN_REL}" > @@ -7,7 +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-menuconfig-mconf-cfg-Allow-specification-of-ncurses-location.patch > \ > - file://xen-fix-gcc12-build-issues.patch \ > " > > LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5" > -- > 2.25.1 > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#7803): https://lists.yoctoproject.org/g/meta-virtualization/message/7803 Mute This Topic: https://lists.yoctoproject.org/mt/96094340/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
