From 55c8039c7ff3590671131158c0ef55aa65d826c9 Mon Sep 17 00:00:00 2001 From: Lasse Collin Date: Fri, 8 Sep 2023 15:52:01 +0300 Subject: Remove a duplicate check for XZ_DEC_ARM in xz_private.h. Thanks to Jules Maselbas. --- linux/lib/xz/xz_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux/lib/xz/xz_private.h b/linux/lib/xz/xz_private.h index e3bba7b..457aedc 100644 --- a/linux/lib/xz/xz_private.h +++ b/linux/lib/xz/xz_private.h @@ -101,7 +101,7 @@ */ #ifndef XZ_DEC_BCJ # if defined(XZ_DEC_X86) || defined(XZ_DEC_POWERPC) \ - || defined(XZ_DEC_IA64) || defined(XZ_DEC_ARM) \ + || defined(XZ_DEC_IA64) \ || defined(XZ_DEC_ARM) || defined(XZ_DEC_ARMTHUMB) \ || defined(XZ_DEC_SPARC) # define XZ_DEC_BCJ -- cgit v1.2.3 From a5390fd368f8a58401c0ce0dfb9d05ef3046e4a3 Mon Sep 17 00:00:00 2001 From: Lasse Collin Date: Fri, 8 Sep 2023 15:58:56 +0300 Subject: Fix the build when only the ARM64 filter is enabled. Thanks to Jules Maselbas. --- linux/lib/xz/xz_private.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux/lib/xz/xz_private.h b/linux/lib/xz/xz_private.h index 457aedc..3acc208 100644 --- a/linux/lib/xz/xz_private.h +++ b/linux/lib/xz/xz_private.h @@ -103,7 +103,7 @@ # if defined(XZ_DEC_X86) || defined(XZ_DEC_POWERPC) \ || defined(XZ_DEC_IA64) \ || defined(XZ_DEC_ARM) || defined(XZ_DEC_ARMTHUMB) \ - || defined(XZ_DEC_SPARC) + || defined(XZ_DEC_SPARC) || defined(XZ_DEC_ARM64) # define XZ_DEC_BCJ # endif #endif -- cgit v1.2.3 From f2090365d4cdc86020beb1ac8aea43444cf2456c Mon Sep 17 00:00:00 2001 From: Jia Tan Date: Fri, 15 Dec 2023 23:57:06 +0800 Subject: Minor README updates. This rewords a few minor things. Additionally, the table macros was updated to include the forgotten XZ_DEC_ARM64 and to note that the ARM based architectures can use the filters in little or big endian mode, as long as the instructions are in little endian mode. Modern ARM architectures use little endian instruction encoding, even if other data is encoded big endian. --- README | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/README b/README index 32c4625..8c7eada 100644 --- a/README +++ b/README @@ -90,7 +90,7 @@ Supporting concatenated .xz files Regular .xz files can be concatenated as is and the xz command line tool will decompress all streams from a concatenated file (a few other popular formats and tools support this too). This kind of .xz - files aren't as uncommon as one might think because pxz, an early + files are more common than one might think because pxz, an early threaded XZ compressor, created this kind of .xz files. The xz_dec_run() function will stop after decompressing one stream. @@ -138,7 +138,7 @@ Integrity check support BCJ filter support - If you want support for one or more BCJ filters, you need to copy also + If you want support for one or more BCJ filters, you need to copy linux/lib/xz/xz_dec_bcj.c into your application, and use appropriate #defines in xz_config.h or in compiler flags. You don't need these #defines in the code that just uses XZ Embedded via xz.h, but having @@ -148,28 +148,24 @@ BCJ filter support XZ_DEC_X86 x86-32 or x86-64 Little endian only XZ_DEC_POWERPC PowerPC Big endian only XZ_DEC_IA64 Itanium (IA-64) Big or little endian - XZ_DEC_ARM ARM Little endian only - XZ_DEC_ARMTHUMB ARM-Thumb Little endian only + XZ_DEC_ARM ARM Little endian instructions + XZ_DEC_ARMTHUMB ARM-Thumb Big or little endian + XZ_DEC_ARM64 ARM64 Big or little endian XZ_DEC_SPARC SPARC Big or little endian While some architectures are (partially) bi-endian, the endianness setting doesn't change the endianness of the instructions on all - architectures. That's why Itanium and SPARC filters work for both big - and little endian executables (Itanium has little endian instructions - and SPARC has big endian instructions). - - There currently is no filter for little endian PowerPC or big endian - ARM or ARM-Thumb. Implementing filters for them can be considered if - there is a need for such filters in real-world applications. + architectures. That's why many filters work for both big and little + endian executables (Itanium and ARM based architectures have little + endian instructions and SPARC has big endian instructions). Notes about shared libraries - If you are including XZ Embedded into a shared library, you very - probably should rename the xz_* functions to prevent symbol - conflicts in case your library is linked against some other library - or application that also has XZ Embedded in it (which may even be - a different version of XZ Embedded). TODO: Provide an easy way - to do this. + If you are including XZ Embedded into a shared library, you should + rename the xz_* functions to prevent symbol conflicts in case your + library is linked against some other library or application that + also has XZ Embedded in it (which may even be a different version + of XZ Embedded). Please don't create a shared library of XZ Embedded itself unless it is fine to rebuild everything depending on that shared library -- cgit v1.2.3 From 7968516901ab8e02c6d5c97574d2803c56c12489 Mon Sep 17 00:00:00 2001 From: Jia Tan Date: Sat, 16 Dec 2023 12:56:05 +0800 Subject: Add .gitattributes. git archive can be used to create a release without certain files. In this case, we only care to remove the .gitignore and the .gitattributes itself. --- .gitattributes | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..de2f316 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +.gitignore export-ignore +.gitattributes export-ignore -- cgit v1.2.3 From dc835be6a58a097eefc66dac34be7ba7cfbd8719 Mon Sep 17 00:00:00 2001 From: Jia Tan Date: Fri, 19 Jan 2024 23:13:32 +0800 Subject: Update documentation for new website URL. --- linux/Documentation/xz.txt | 6 +++--- linux/lib/xz/xz_stream.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/linux/Documentation/xz.txt b/linux/Documentation/xz.txt index 1e1a915..52c9150 100644 --- a/linux/Documentation/xz.txt +++ b/linux/Documentation/xz.txt @@ -13,13 +13,13 @@ Introduction The XZ decompressor in Linux is called XZ Embedded. It supports the LZMA2 filter and optionally also BCJ filters. CRC32 is supported for integrity checking. The home page of XZ Embedded is at - , where you can find the + , where you can find the latest version and also information about using the code outside the Linux kernel. For userspace, XZ Utils provide a zlib-like compression library and a gzip-like command line tool. XZ Utils can be downloaded from - . + . XZ related components in the kernel @@ -107,7 +107,7 @@ Conformance to the .xz file format specification Reporting bugs Before reporting a bug, please check that it's not fixed already - at upstream. See to get the + at upstream. See to get the latest code. Report bugs to or visit #tukaani on diff --git a/linux/lib/xz/xz_stream.h b/linux/lib/xz/xz_stream.h index 430bb3a..e5d3188 100644 --- a/linux/lib/xz/xz_stream.h +++ b/linux/lib/xz/xz_stream.h @@ -19,7 +19,7 @@ /* * See the .xz file format specification at - * https://tukaani.org/xz/xz-file-format.txt + * https://xz.tukaani.org/format/xz-file-format.txt * to understand the container format. */ -- cgit v1.2.3 From f6d1f58f36cdcc55cbb3599048629f32a5ecb914 Mon Sep 17 00:00:00 2001 From: Jia Tan Date: Fri, 19 Jan 2024 23:13:32 +0800 Subject: Update contact email address. --- linux/Documentation/xz.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/linux/Documentation/xz.txt b/linux/Documentation/xz.txt index 52c9150..f2cd6a8 100644 --- a/linux/Documentation/xz.txt +++ b/linux/Documentation/xz.txt @@ -110,10 +110,10 @@ Reporting bugs at upstream. See to get the latest code. - Report bugs to or visit #tukaani on - Freenode and talk to Larhzu. I don't actively read LKML or other - kernel-related mailing lists, so if there's something I should know, - you should email to me personally or use IRC. + Report bugs to or visit #tukaani on + Freenode and talk to the maintainers. We don't actively read LKML or + other kernel-related mailing lists, so if there's something we should + know, please use email or IRC. Don't bother Igor Pavlov with questions about the XZ implementation in the kernel or about XZ Utils. While these two implementations -- cgit v1.2.3 From 1b6defd544914bfb4065e343296e5db64ef400e6 Mon Sep 17 00:00:00 2001 From: Jia Tan Date: Fri, 19 Jan 2024 23:13:32 +0800 Subject: Update IRC network from Freenode to Libera Chat. This was forgotten when the channel moved from Freenode to Libera Chat. --- linux/Documentation/xz.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux/Documentation/xz.txt b/linux/Documentation/xz.txt index f2cd6a8..b1a743e 100644 --- a/linux/Documentation/xz.txt +++ b/linux/Documentation/xz.txt @@ -111,7 +111,7 @@ Reporting bugs latest code. Report bugs to or visit #tukaani on - Freenode and talk to the maintainers. We don't actively read LKML or + Libera Chat and talk to the maintainers. We don't actively read LKML or other kernel-related mailing lists, so if there's something we should know, please use email or IRC. -- cgit v1.2.3