aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2018-12-02 12:38:04 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-12-03 12:19:43 +0000
commit9f5f4b31df01a29fd07ce27efc7534b4ea29a778 (patch)
tree74e9c76b743942f7063ddf17a9ebc3abca0debe9
parente0564cbd6c824ba9ee1ed20a261261228fb594e3 (diff)
downloadopenembedded-core-contrib-9f5f4b31df01a29fd07ce27efc7534b4ea29a778.tar.gz
btrfs-tools: update to 4.19
Add a backported patch to fix big endian compilation. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-btrfs-progs-kernel-lib-bitops-Fix-big-endian-compila.patch55
-rw-r--r--meta/recipes-devtools/btrfs-tools/btrfs-tools_4.19.bb (renamed from meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb)3
2 files changed, 57 insertions, 1 deletions
diff --git a/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-btrfs-progs-kernel-lib-bitops-Fix-big-endian-compila.patch b/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-btrfs-progs-kernel-lib-bitops-Fix-big-endian-compila.patch
new file mode 100644
index 0000000000..ad430858c9
--- /dev/null
+++ b/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-btrfs-progs-kernel-lib-bitops-Fix-big-endian-compila.patch
@@ -0,0 +1,55 @@
+From 920c515478b441eaca31e33a18b95ceaa49ace19 Mon Sep 17 00:00:00 2001
+From: Rosen Penev <rosenp@gmail.com>
+Date: Mon, 5 Nov 2018 11:06:41 -0800
+Subject: [PATCH] btrfs-progs: kernel-lib: bitops: Fix big endian compilation
+
+Replaced bswap with _ variants bswap_32 etc. While it's a glibc
+extension, all of the popular libc implementations (glibc, uClibc, musl,
+BIONIC) seem to support it.
+
+Added static inline to two functions to match little endian variants. This
+fixes a linking error experienced when compiling on gcc 7.3.0 with LTO,
+possibly a bug that was fixed later.
+
+Upstream-Status: Backport [https://gitlab.com/kdave/btrfs-progs/commit/ed570e2df335063280c9d3affd8bb89919a1ac0d.patch]
+Reviewed-by: Nikolay Borisov <nborisov@suse.com>
+Signed-off-by: Rosen Penev <rosenp@gmail.com>
+Signed-off-by: David Sterba <dsterba@suse.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ kernel-lib/bitops.h | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/kernel-lib/bitops.h b/kernel-lib/bitops.h
+index b1fd6f53..2c51a265 100644
+--- a/kernel-lib/bitops.h
++++ b/kernel-lib/bitops.h
+@@ -178,9 +178,9 @@ static inline unsigned long find_next_zero_bit(const unsigned long *addr,
+ static inline unsigned long ext2_swab(const unsigned long y)
+ {
+ #if BITS_PER_LONG == 64
+- return (unsigned long) bswap64((u64) y);
++ return (unsigned long) bswap_64((u64) y);
+ #elif BITS_PER_LONG == 32
+- return (unsigned long) bswap32((u32) y);
++ return (unsigned long) bswap_32((u32) y);
+ #else
+ #error BITS_PER_LONG not defined
+ #endif
+@@ -218,14 +218,14 @@ static inline unsigned long _find_next_bit_le(const unsigned long *addr1,
+ return min(start + __ffs(ext2_swab(tmp)), nbits);
+ }
+
+-unsigned long find_next_zero_bit_le(const void *addr, unsigned long size,
++static inline unsigned long find_next_zero_bit_le(const void *addr, unsigned long size,
+ unsigned long offset)
+ {
+ return _find_next_bit_le(addr, NULL, size, offset, ~0UL);
+ }
+
+
+-unsigned long find_next_bit_le(const void *addr, unsigned long size,
++static inline unsigned long find_next_bit_le(const void *addr, unsigned long size,
+ unsigned long offset)
+ {
+ return _find_next_bit_le(addr, NULL, size, offset, 0UL);
diff --git a/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb b/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.19.bb
index 6b53fbcd7f..f5e0f77c8a 100644
--- a/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb
+++ b/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.19.bb
@@ -14,11 +14,12 @@ DEPENDS = "util-linux attr e2fsprogs lzo acl python3-setuptools-native"
DEPENDS_append_class-target = " udev"
RDEPENDS_${PN} = "libgcc"
-SRCREV = "7faaca0d9f78f7162ae603231f693dd8e1af2a41"
+SRCREV = "d72d913291683188ddf5d758db02f1bc3b05d2f7"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
file://0001-Makefile-build-mktables-using-native-gcc.patch \
file://0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch \
file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
+ file://0001-btrfs-progs-kernel-lib-bitops-Fix-big-endian-compila.patch \
"
inherit autotools-brokensep pkgconfig manpages distutils3-base