diff options
author | Khem Raj <raj.khem@gmail.com> | 2023-05-23 09:43:59 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-05-28 16:35:00 -0700 |
commit | fe103d43228d5f3f9d9fac573cbc5c5521f8ee49 (patch) | |
tree | 400e605369f24b309950c83632cca82c0198257b /meta-filesystems/recipes-filesystems | |
parent | cf298e28e9b1f29fbaa2f021b22ee68db7e0488f (diff) | |
download | meta-openembedded-contrib-fe103d43228d5f3f9d9fac573cbc5c5521f8ee49.tar.gz |
zfs: Add a patch to fix aarch64 build with gcc13
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-filesystems/recipes-filesystems')
-rw-r--r-- | meta-filesystems/recipes-filesystems/zfs/zfs/aaf28a4630af60496c9d33db1d06a7d7d8983422.patch | 54 | ||||
-rw-r--r-- | meta-filesystems/recipes-filesystems/zfs/zfs_2.1.9.bb | 1 |
2 files changed, 55 insertions, 0 deletions
diff --git a/meta-filesystems/recipes-filesystems/zfs/zfs/aaf28a4630af60496c9d33db1d06a7d7d8983422.patch b/meta-filesystems/recipes-filesystems/zfs/zfs/aaf28a4630af60496c9d33db1d06a7d7d8983422.patch new file mode 100644 index 0000000000..f682a412ae --- /dev/null +++ b/meta-filesystems/recipes-filesystems/zfs/zfs/aaf28a4630af60496c9d33db1d06a7d7d8983422.patch @@ -0,0 +1,54 @@ +From aaf28a4630af60496c9d33db1d06a7d7d8983422 Mon Sep 17 00:00:00 2001 +From: Sebastian Gottschall <s.gottschall@dd-wrt.com> +Date: Tue, 23 May 2023 13:50:24 +0600 +Subject: [PATCH] fixes broken aarch64 inline assembly for gcc 13.1 + +fixes the following error + +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neon_common.h:549:24: error: the register specified for 'w7' is not general enough to be used as a register variable + 549 | register unsigned char w7 asm("v7") __attribute__((vector_size(16))); + | ^~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neonx2.c:193:9: note: in expansion of macro 'GEN_X_DEFINE_6_7' + 193 | GEN_X_DEFINE_6_7() \ + | ^~~~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_impl.h:1360:9: note: in expansion of macro 'REC_PQR_DEFINE' + 1360 | REC_PQR_DEFINE(); + | ^~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neon_common.h:551:24: error: the register specified for 'w8' is not general enough to be used as a register variable + 551 | register unsigned char w8 asm("v8") __attribute__((vector_size(16))); \ + | ^~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neonx2.c:194:9: note: in expansion of macro 'GEN_X_DEFINE_8_9' + 194 | GEN_X_DEFINE_8_9() \ + | ^~~~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_impl.h:1360:9: note: in expansion of macro 'REC_PQR_DEFINE' + 1360 | REC_PQR_DEFINE(); + | ^~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neon_common.h:552:24: error: the register specified for 'w9' is not general enough to be used as a register variable + 552 | register unsigned char w9 asm("v9") __attribute__((vector_size(16))); + | ^~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_aarch64_neonx2.c:194:9: note: in expansion of macro 'GEN_X_DEFINE_8_9' + 194 | GEN_X_DEFINE_8_9() \ + | ^~~~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux/zfs/2.1.9-r0/build/../zfs-2.1.9/module/zfs/vdev_raidz_math_impl.h:1360:9: note: in expansion of macro 'REC_PQR_DEFINE' + 1360 | REC_PQR_DEFINE(); + +Signed-off-by: Sebastian Gottschall <s.gottschall@dd-wrt.com> +--- +Source: https://github.com/BrainSlayer/zfs/commit/aaf28a4630af60496c9d33db1d06a7d7d8983422 + + module/Kbuild.in | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/module/Kbuild.in ++++ b/module/Kbuild.in +@@ -44,4 +44,10 @@ endif + subdir-asflags-y := $(ZFS_MODULE_CFLAGS) $(ZFS_MODULE_CPPFLAGS) + subdir-ccflags-y := $(ZFS_MODULE_CFLAGS) $(ZFS_MODULE_CPPFLAGS) + ++ifeq ($(CONFIG_ARM64),y) ++CFLAGS_REMOVE_zfs_fletcher_aarch64_neon.o = -mgeneral-regs-only ++CFLAGS_REMOVE_vdev_raidz_math_aarch64_neon.o = -mgeneral-regs-only ++CFLAGS_REMOVE_vdev_raidz_math_aarch64_neonx2.o = -mgeneral-regs-only ++endif ++ + endif diff --git a/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.9.bb b/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.9.bb index 573561db25..cd694c3196 100644 --- a/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.9.bb +++ b/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.9.bb @@ -6,6 +6,7 @@ HOMEPAGE ="https://github.com/openzfs/zfs" SRC_URI = "https://github.com/openzfs/zfs/releases/download/${BPN}-${PV}/${BPN}-${PV}.tar.gz \ file://0001-Define-strndupa-if-it-does-not-exist.patch \ + file://aaf28a4630af60496c9d33db1d06a7d7d8983422.patch \ " SRC_URI[sha256sum] = "6b172cdf2eb54e17fcd68f900fab33c1430c5c59848fa46fab83614922fe50f6" |