The EROFS read-only file-system ahead of the upcoming Linux 6.17 merge window has been working on metadata compression support to allow for even smaller container image sizes but at the cost of higher I/O latency.
Metadata compression has been in the works for EROFS to allow for even smaller image sizes compared to just compressing the file data. With EROFS users pushing for even greater compression, metadata compression is going to be a new option but with the cost of higher I/O latency with all of the inode metadata being compressed. The EROFS implementation though does allow for choosing a different compression algorithm between the data compression and metadata compression usage if wanting to try to offset some of the latency costs by using a faster but less aggressive compression algorithm.
“Filesystem metadata has a high degree of redundancy, so it should compress well in the general case.
Although metadata compression can increase overall I/O latency, many users care more about minimized image sizes than extreme runtime performance. Let’s implement metadata compression in response to user requests.”
EROFS tests of metadata compression on the patch series show a Fedora EROFS image dropping from 2437MB to around 2408~2411MB or an Android AOSP image going from 362MB to 361MB with metadata compression.
The EROFS metadata compression support has been queued up within the EROFS “dev” branch. With it now making it into the file-system’s development Git branch, it will likely be submitted for upstream inclusion once the Linux 6.17 merge window is opened.