mirror of
https://git.yoctoproject.org/poky
synced 2026-09-20 03:49:32 +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 \
|
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://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
|
||||||
file://lzo-option.patch \
|
|
||||||
"
|
"
|
||||||
SRCREV = "31458c9c81935abbed010221261897273a98d2c1"
|
SRCREV = "f9e303584272b81b05b926a0cc9010f43af12a03"
|
||||||
S = "${WORKDIR}/git"
|
S = "${WORKDIR}/git"
|
||||||
|
|
||||||
PACKAGECONFIG ??= " \
|
PACKAGECONFIG ??= " \
|
||||||
@@ -28,7 +27,7 @@ PACKAGECONFIG ??= " \
|
|||||||
python \
|
python \
|
||||||
crypto-builtin \
|
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[programs] = "--enable-programs,--disable-programs"
|
||||||
PACKAGECONFIG[convert] = "--enable-convert --with-convert=ext2,--disable-convert --without-convert,e2fsprogs"
|
PACKAGECONFIG[convert] = "--enable-convert --with-convert=ext2,--disable-convert --without-convert,e2fsprogs"
|
||||||
PACKAGECONFIG[zoned] = "--enable-zoned,--disable-zoned"
|
PACKAGECONFIG[zoned] = "--enable-zoned,--disable-zoned"
|
||||||
Reference in New Issue
Block a user