* [PATCH 1/2] erofs-utils: README: trivial updates
@ 2021-05-22 5:50 Gao Xiang
2021-05-22 5:50 ` [PATCH 2/2] erofs-utils: README: big pcluster feature update Gao Xiang
0 siblings, 1 reply; 2+ messages in thread
From: Gao Xiang @ 2021-05-22 5:50 UTC (permalink / raw)
To: linux-erofs; +Cc: Gao Xiang
- update erofs naming to EROFS;
- add some words about compression levels;
- add more description about legacy EROFS images.
Signed-off-by: Gao Xiang <xiang@kernel.org>
---
README | 29 ++++++++++++++++++-----------
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/README b/README
index b57550b2a09e..bcf30e11aa52 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
erofs-utils
===========
-erofs-utils includes user-space tools for erofs filesystem.
+erofs-utils includes user-space tools for EROFS filesystem.
Currently mkfs.erofs and erofsfuse (experimental) are available.
Dependencies & build
@@ -50,7 +50,7 @@ as well.
mkfs.erofs
----------
-two main kinds of erofs images can be generated: (un)compressed.
+two main kinds of EROFS images can be generated: (un)compressed.
- For uncompressed images, there will be none of compression
files in these images. However, it can decide whether the tail
@@ -61,8 +61,8 @@ two main kinds of erofs images can be generated: (un)compressed.
saved with compression. If not, fallback to an uncompressed
file.
-How to generate erofs images
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+How to generate EROFS images (Linux 5.3+)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Currently lz4 and lz4hc are available for compression, e.g.
$ mkfs.erofs -zlz4hc foo.erofs.img foo/
@@ -70,17 +70,24 @@ Currently lz4 and lz4hc are available for compression, e.g.
Or leave all files uncompressed as an option:
$ mkfs.erofs foo.erofs.img foo/
-How to generate legacy erofs images
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In addition, you could specify a higher compression level to get a
+(slightly) better compression ratio than the default level, e.g.
+ $ mkfs.erofs -zlz4hc,12 foo.erofs.img foo/
+
+How to generate legacy EROFS images (Linux 4.19+)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Decompression inplace and compacted indexes have been introduced in
linux-5.3, which are not forward-compatible with older kernels.
-In order to generate _legacy_ erofs images for old kernels,
+In order to generate _legacy_ EROFS images for old kernels,
consider adding "-E legacy-compress" to the command line, e.g.
$ mkfs.erofs -E legacy-compress -zlz4hc foo.erofs.img foo/
+For Linux kernel >= 5.3, legacy EROFS images are _NOT recommended_
+due to runtime performance loss compared with non-legacy images.
+
Obsoleted erofs.mkfs
~~~~~~~~~~~~~~~~~~~~
@@ -94,7 +101,7 @@ PLEASE NOTE: This version is highly _NOT recommended_ now.
erofsfuse (experimental, unstable)
----------------------------------
-erofsfuse is introduced to support erofs format for various platforms
+erofsfuse is introduced to support EROFS format for various platforms
(including older linux kernels) and new on-disk features iteration.
It can also be used as an unpacking tool for unprivileged users.
@@ -120,7 +127,7 @@ and build it manually:
erofsfuse binary will be generated under fuse folder.
-How to mount an erofs image with erofsfuse
+How to mount an EROFS image with erofsfuse
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
As the other FUSE implementations, it's quite simple to mount with
@@ -139,7 +146,7 @@ To unmount an erofsfuse mountpoint as a non-root user:
Contribution
------------
-erofs-utils is under GPLv2+ as a part of erofs project,
+erofs-utils is under GPLv2+ as a part of EROFS filesystem project,
feel free to send patches or feedback to us.
To:
@@ -155,7 +162,7 @@ Cc:
Comments
--------
-[1] According to the erofs on-disk format, the tail block of files
+[1] According to the EROFS on-disk format, the tail block of files
could be inlined aggressively with its metadata in order to reduce
the I/O overhead and save the storage space (called tail-packing).
--
2.20.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH 2/2] erofs-utils: README: big pcluster feature update
2021-05-22 5:50 [PATCH 1/2] erofs-utils: README: trivial updates Gao Xiang
@ 2021-05-22 5:50 ` Gao Xiang
0 siblings, 0 replies; 2+ messages in thread
From: Gao Xiang @ 2021-05-22 5:50 UTC (permalink / raw)
To: linux-erofs; +Cc: Gao Xiang
Add some description for end users to know its usage.
Signed-off-by: Gao Xiang <xiang@kernel.org>
---
README | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/README b/README
index bcf30e11aa52..567192c8c497 100644
--- a/README
+++ b/README
@@ -74,6 +74,24 @@ In addition, you could specify a higher compression level to get a
(slightly) better compression ratio than the default level, e.g.
$ mkfs.erofs -zlz4hc,12 foo.erofs.img foo/
+How to generate EROFS big pcluster images (Linux 5.13+)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In order to get much better compression ratios (thus better sequential
+read performance for common storage devices), big pluster feature has
+been introduced since linux-5.13, which is not forward-compatible with
+old kernels.
+
+In details, -C is used to specify the maximum size of each big pcluster
+in bytes, e.g.
+ $ mkfs.erofs -zlz4hc -C65536 foo.erofs.img foo/
+
+So in that case, pcluster size can be 64KiB at most.
+
+Note that large big pcluster size can cause bad random performance, so
+please evaluate carefully in advance. Or make your own per-(sub)file
+compression strategies according to file access patterns if needed.
+
How to generate legacy EROFS images (Linux 4.19+)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
2.20.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-05-22 5:51 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-22 5:50 [PATCH 1/2] erofs-utils: README: trivial updates Gao Xiang
2021-05-22 5:50 ` [PATCH 2/2] erofs-utils: README: big pcluster feature update Gao Xiang
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.