mirror of
https://git.yoctoproject.org/poky
synced 2026-04-22 15:32:14 +02:00
btrfs-tools: update 5.16.2 -> 5.18
(From OE-Core rev: f458cdf52f27ece56f96408bbfa2eca8e5e2143c) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
53042d6e2f
commit
13c857651b
@@ -1,126 +0,0 @@
|
||||
Upstream-Status: Backport [https://github.com/kdave/btrfs-progs/commit/73545c1fe6304f08ab306b76d2bcacaf22a5e99a]
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
|
||||
From 4f4eafe8ebcc86f84f6c85a5c5814c430d8f190c Mon Sep 17 00:00:00 2001
|
||||
From: Ross Burton <ross.burton@arm.com>
|
||||
Date: Tue, 24 May 2022 13:44:29 +0100
|
||||
Subject: [PATCH] btrfs-progs: add option to disable LZO support
|
||||
|
||||
LZO as a compression format is pretty archaic these days, there are
|
||||
better algorithsm in all metrics for compression and decompression, and
|
||||
lzo hasn't had a new release since 2017.
|
||||
|
||||
Add an option to disable LZO (defaulting to enabled), and respect it in
|
||||
cmds/restore.c.
|
||||
|
||||
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
||||
---
|
||||
Makefile | 2 +-
|
||||
Makefile.inc.in | 1 +
|
||||
cmds/restore.c | 7 +++++++
|
||||
configure.ac | 30 ++++++++++++++++++++----------
|
||||
4 files changed, 29 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index af4908f9..0e8e05f3 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -335,7 +335,7 @@ endif
|
||||
btrfs_convert_cflags = -DBTRFSCONVERT_EXT2=$(BTRFSCONVERT_EXT2)
|
||||
btrfs_convert_cflags += -DBTRFSCONVERT_REISERFS=$(BTRFSCONVERT_REISERFS)
|
||||
btrfs_fragments_libs = -lgd -lpng -ljpeg -lfreetype
|
||||
-cmds_restore_cflags = -DBTRFSRESTORE_ZSTD=$(BTRFSRESTORE_ZSTD)
|
||||
+cmds_restore_cflags = -DBTRFSRESTORE_LZO=$(BTRFSRESTORE_LZO) -DBTRFSRESTORE_ZSTD=$(BTRFSRESTORE_ZSTD)
|
||||
|
||||
ifeq ($(CRYPTOPROVIDER_BUILTIN),1)
|
||||
CRYPTO_OBJECTS = crypto/sha224-256.o crypto/blake2b-ref.o
|
||||
diff --git a/Makefile.inc.in b/Makefile.inc.in
|
||||
index c995aef9..385b7ae1 100644
|
||||
--- a/Makefile.inc.in
|
||||
+++ b/Makefile.inc.in
|
||||
@@ -16,6 +16,7 @@ BUILD_PROGRAMS = @BUILD_PROGRAMS@
|
||||
BUILD_SHARED_LIBRARIES = @BUILD_SHARED_LIBRARIES@
|
||||
BUILD_STATIC_LIBRARIES = @BUILD_STATIC_LIBRARIES@
|
||||
BTRFSCONVERT_EXT2 = @BTRFSCONVERT_EXT2@
|
||||
+BTRFSRESTORE_LZO = @BTRFSRESTORE_LZO@
|
||||
BTRFSCONVERT_REISERFS = @BTRFSCONVERT_REISERFS@
|
||||
BTRFSRESTORE_ZSTD = @BTRFSRESTORE_ZSTD@
|
||||
PYTHON_BINDINGS = @PYTHON_BINDINGS@
|
||||
diff --git a/cmds/restore.c b/cmds/restore.c
|
||||
index 5923d571..4dd79fce 100644
|
||||
--- a/cmds/restore.c
|
||||
+++ b/cmds/restore.c
|
||||
@@ -25,8 +25,10 @@
|
||||
#include <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
+#if BTRFSRESTORE_LZO
|
||||
#include <lzo/lzoconf.h>
|
||||
#include <lzo/lzo1x.h>
|
||||
+#endif
|
||||
#include <zlib.h>
|
||||
#if BTRFSRESTORE_ZSTD
|
||||
#include <zstd.h>
|
||||
@@ -98,6 +100,10 @@ static inline size_t read_compress_length(unsigned char *buf)
|
||||
static int decompress_lzo(struct btrfs_root *root, unsigned char *inbuf,
|
||||
char *outbuf, u64 compress_len, u64 *decompress_len)
|
||||
{
|
||||
+#if !BTRFSRESTORE_LZO
|
||||
+ error("btrfs not compiled with lzo support");
|
||||
+ return -1;
|
||||
+#else
|
||||
size_t new_len;
|
||||
size_t in_len;
|
||||
size_t out_len = 0;
|
||||
@@ -156,6 +162,7 @@ static int decompress_lzo(struct btrfs_root *root, unsigned char *inbuf,
|
||||
*decompress_len = out_len;
|
||||
|
||||
return 0;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static int decompress_zstd(const char *inbuf, char *outbuf, u64 compress_len,
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index d907636b..c1ad2c22 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -372,16 +372,26 @@ if ${PKG_CONFIG} udev --atleast-version 190; then
|
||||
fi
|
||||
AC_SUBST(UDEVDIR)
|
||||
|
||||
-dnl lzo library does not provide pkg-config, let use classic way
|
||||
-AC_CHECK_LIB([lzo2], [lzo_version], [
|
||||
- LZO2_LIBS="-llzo2"
|
||||
- LZO2_CFLAGS=""
|
||||
- LZO2_LIBS_STATIC="-llzo2"],[
|
||||
- AC_MSG_ERROR([cannot find lzo2 library])
|
||||
-])
|
||||
-AC_SUBST([LZO2_LIBS])
|
||||
-AC_SUBST([LZO2_LIBS_STATIC])
|
||||
-AC_SUBST([LZO2_CFLAGS])
|
||||
+AC_ARG_ENABLE([lzo],
|
||||
+ AS_HELP_STRING([--disable-lzo], [build without lzo support]),
|
||||
+ [], [enable_lzo=yes]
|
||||
+)
|
||||
+
|
||||
+if test "x$enable_lzo" = xyes; then
|
||||
+ dnl lzo library does not provide pkg-config, let use classic way
|
||||
+ AC_CHECK_LIB([lzo2], [lzo_version], [
|
||||
+ LZO2_LIBS="-llzo2"
|
||||
+ LZO2_CFLAGS=""
|
||||
+ LZO2_LIBS_STATIC="-llzo2"],[
|
||||
+ AC_MSG_ERROR([cannot find lzo2 library])
|
||||
+ ])
|
||||
+ AC_SUBST([LZO2_LIBS])
|
||||
+ AC_SUBST([LZO2_LIBS_STATIC])
|
||||
+ AC_SUBST([LZO2_CFLAGS])
|
||||
+fi
|
||||
+
|
||||
+AS_IF([test "x$enable_lzo" = xyes], [BTRFSRESTORE_LZO=1], [BTRFSRESTORE_LZO=0])
|
||||
+AC_SUBST(BTRFSRESTORE_LZO)
|
||||
|
||||
dnl call PKG_INSTALLDIR from pkg.m4 to set pkgconfigdir
|
||||
m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], [AC_MSG_ERROR([please install pkgconf])])
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -17,9 +17,8 @@ DEPENDS = "util-linux zlib"
|
||||
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git;branch=master \
|
||||
file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
|
||||
file://lzo-option.patch \
|
||||
"
|
||||
SRCREV = "31458c9c81935abbed010221261897273a98d2c1"
|
||||
SRCREV = "f9e303584272b81b05b926a0cc9010f43af12a03"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
PACKAGECONFIG ??= " \
|
||||
@@ -28,7 +27,7 @@ PACKAGECONFIG ??= " \
|
||||
python \
|
||||
crypto-builtin \
|
||||
"
|
||||
PACKAGECONFIG[manpages] = "--enable-documentation, --disable-documentation, asciidoc-native xmlto-native"
|
||||
PACKAGECONFIG[manpages] = "--enable-documentation, --disable-documentation, python3-sphinx-native"
|
||||
PACKAGECONFIG[programs] = "--enable-programs,--disable-programs"
|
||||
PACKAGECONFIG[convert] = "--enable-convert --with-convert=ext2,--disable-convert --without-convert,e2fsprogs"
|
||||
PACKAGECONFIG[zoned] = "--enable-zoned,--disable-zoned"
|
||||
Reference in New Issue
Block a user