Re: [PATCH v2] erofs: add a reserved buffer pool for lz4 decompression

2024-04-02 Thread Gao Xiang
On 2024/4/2 21:15, Chunhai Guo wrote: This adds a special global buffer pool (in the end) for reserved pages. Using a reserved pool for LZ4 decompression significantly reduces the time spent on extra temporary page allocation for the extreme cases in low memory scenarios. The table below

[xiang-erofs:dev-test] BUILD SUCCESS 1c89beb9534dee8f41a47922b6382809c809506c

2024-04-02 Thread kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git dev-test branch HEAD: 1c89beb9534dee8f41a47922b6382809c809506c erofs: do not use pagepool in z_erofs_gbuf_growsize() elapsed time: 772m configs tested: 102 configs skipped: 3 The following configs have been built

[PATCH v2] erofs: add a reserved buffer pool for lz4 decompression

2024-04-02 Thread Chunhai Guo via Linux-erofs
This adds a special global buffer pool (in the end) for reserved pages. Using a reserved pool for LZ4 decompression significantly reduces the time spent on extra temporary page allocation for the extreme cases in low memory scenarios. The table below shows the reduction in time spent on page

Re: [PATCH] erofs: add a reserved buffer pool for lz4 decompression

2024-04-02 Thread Gao Xiang
On 2024/4/2 16:45, Chunhai Guo wrote: This adds a special global buffer pool (in the end) for reserved pages. Using a reserved pool for LZ4 decompression significantly reduces the time spent on extra temporary page allocation for the extreme cases in low memory scenarios. The table below

Re: [PATCH 00/26] netfs, afs, 9p, cifs: Rework netfs to use ->writepages() to copy to cache

2024-04-02 Thread Christian Brauner
On Thu, 28 Mar 2024 16:33:52 +, David Howells wrote: > The primary purpose of these patches is to rework the netfslib writeback > implementation such that pages read from the cache are written to the cache > through ->writepages(), thereby allowing the fscache page flag to be > retired. > >

[PATCH v2] erofs: rename per-CPU buffers to global buffer pool and make it configurable

2024-04-02 Thread Chunhai Guo via Linux-erofs
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

Re: [PATCH v2] erofs: do not use pagepool in z_erofs_gbuf_growsize()

2024-04-02 Thread Chunhai Guo via Linux-erofs
在 2024/4/2 17:22, Gao Xiang 写道: > > On 2024/4/2 17:27, Chunhai Guo wrote: >> Let's use alloc_pages_bulk_array() for simplicity and get rid of >> unnecessary pagepool. >> >> Signed-off-by: Chunhai Guo >> --- > Would you mind adding a changelog here next time? no > matter how short the text is. > >

Re: [PATCH v2] erofs: do not use pagepool in z_erofs_gbuf_growsize()

2024-04-02 Thread Gao Xiang
On 2024/4/2 17:27, Chunhai Guo wrote: Let's use alloc_pages_bulk_array() for simplicity and get rid of unnecessary pagepool. Signed-off-by: Chunhai Guo --- Would you mind adding a changelog here next time? no matter how short the text is. Reviewed-by: Gao Xiang Thanks, Gao Xiang

[PATCH v2] erofs: do not use pagepool in z_erofs_gbuf_growsize()

2024-04-02 Thread Chunhai Guo via Linux-erofs
Let's use alloc_pages_bulk_array() for simplicity and get rid of unnecessary pagepool. Signed-off-by: Chunhai Guo --- fs/erofs/zutil.c | 67 ++-- 1 file changed, 31 insertions(+), 36 deletions(-) diff --git a/fs/erofs/zutil.c b/fs/erofs/zutil.c index

[xiang-erofs:dev-test 2/2] fs/erofs/super.c:876:6: error: assigning to 'int' from incompatible type 'void'

2024-04-02 Thread kernel test robot
-20240402 (https://download.01.org/0day-ci/archive/20240402/202404021750.7eqaokab-...@intel.com/config) compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240402

Re: [PATCH] erofs: do not use pagepool in z_erofs_gbuf_growsize()

2024-04-02 Thread Gao Xiang
On 2024/4/2 16:40, Chunhai Guo wrote: Let's use alloc_pages_bulk_array() for simplicity and get rid of unnecessary pagepool. Signed-off-by: Chunhai Guo --- fs/erofs/zutil.c | 64 +++- 1 file changed, 30 insertions(+), 34 deletions(-) diff

Re: [PATCH 19/26] netfs: New writeback implementation

2024-04-02 Thread David Howells
David Howells wrote: > +struct netfs_io_request *new_netfs_begin_writethrough(struct kiocb *iocb, > size_t len) > +{ > + struct netfs_io_request *wreq = NULL; > + struct netfs_inode *ictx = netfs_inode(file_inode(iocb->ki_filp)); > + > + mutex_lock(>wb_lock); > + > + wreq =

[PATCH] erofs: add a reserved buffer pool for lz4 decompression

2024-04-02 Thread Chunhai Guo via Linux-erofs
This adds a special global buffer pool (in the end) for reserved pages. Using a reserved pool for LZ4 decompression significantly reduces the time spent on extra temporary page allocation for the extreme cases in low memory scenarios. The table below shows the reduction in time spent on page

Re: [PATCH 26/26] netfs, afs: Use writeback retry to deal with alternate keys

2024-04-02 Thread David Howells
Simon Horman wrote: > > + op->store.size = len, > > nit: this is probably more intuitively written using len; I'm not sure it makes a difference, but switching 'size' to 'len' in kafs is a separate thing that doesn't need to be part of this patchset. David

[PATCH] erofs: do not use pagepool in z_erofs_gbuf_growsize()

2024-04-02 Thread Chunhai Guo via Linux-erofs
Let's use alloc_pages_bulk_array() for simplicity and get rid of unnecessary pagepool. Signed-off-by: Chunhai Guo --- fs/erofs/zutil.c | 64 +++- 1 file changed, 30 insertions(+), 34 deletions(-) diff --git a/fs/erofs/zutil.c b/fs/erofs/zutil.c index