erofs: rename per-CPU buffers to global buffer pool and make it configurable
It will cost more time if compressed buffers are allocated on demand for low-latency algorithms (like lz4) so EROFS uses per-CPU buffers to keep compressed data if in-place decompression is unfulfilled. While it is kind of wasteful of memory for a device with hundreds of CPUs, and only a small number of CPUs concurrently decompress most of the time. This patch renames it as 'global buffer pool' and makes it configurable. This allows two or more CPUs to share a common buffer to reduce memory occupation. Suggested-by:Gao Xiang <xiang@kernel.org> Reviewed-by:
Gao Xiang <hsiangkao@linux.alibaba.com> Signed-off-by:
Chunhai Guo <guochunhai@vivo.com> Link: https://lore.kernel.org/r/20240402100036.2673604-1-guochunhai@vivo.com Signed-off-by:
Sandeep Dhavale <dhavale@google.com> Link: https://lore.kernel.org/r/20240408215231.3376659-1-dhavale@google.com Signed-off-by:
Gao Xiang <hsiangkao@linux.alibaba.com>
Showing
- fs/erofs/Makefile 1 addition, 1 deletionfs/erofs/Makefile
- fs/erofs/decompressor.c 3 additions, 3 deletionsfs/erofs/decompressor.c
- fs/erofs/internal.h 7 additions, 7 deletionsfs/erofs/internal.h
- fs/erofs/pcpubuf.c 0 additions, 148 deletionsfs/erofs/pcpubuf.c
- fs/erofs/super.c 7 additions, 2 deletionsfs/erofs/super.c
- fs/erofs/zutil.c 148 additions, 0 deletionsfs/erofs/zutil.c
Please register or sign in to comment