[PATCH v3 0/2] Separate xfs_log_vec/iovec to save memory

alexjlzheng@gmail.com posted 2 patches 1 year, 5 months ago
fs/xfs/xfs_log.c     |  3 +++
fs/xfs/xfs_log.h     | 10 ++++++++--
fs/xfs/xfs_log_cil.c | 34 ++++++++++++++++++++--------------
fs/xfs/xfs_super.c   |  9 +++++++++
4 files changed, 40 insertions(+), 16 deletions(-)
[PATCH v3 0/2] Separate xfs_log_vec/iovec to save memory
Posted by alexjlzheng@gmail.com 1 year, 5 months ago
From: Jinliang Zheng <alexjlzheng@tencent.com>

xfs_log_iovec dominates the memory usage of the
xfs_log_vec/xfs_log_iovec combination, and it is no longer useful after
the data is flushed to the iclog. This patchset separates xfs_log_iovec
from xfs_log_vec and releases them early to save memory.

Changelog:
V1:
- https://lore.kernel.org/linux-xfs/20240623123119.3562031-1-alexjlzheng@tencent.com/

V2:
- add kmem_cache for small object xfs_log_vec
- reduce redundant free and allocation of xfs_log_vec
- https://lore.kernel.org/linux-xfs/20240625182842.1038809-3-alexjlzheng@tencent.com/T/#u

V3:
- simplify code for same or smaller
- fix warning: unused variable 'lvec' [-Wunused-variable] in
  xlog_finish_iovec

Jinliang Zheng (2):
  xfs: add xfs_log_vec_cache for separate xfs_log_vec/xfs_log_iovec
  xfs: make xfs_log_iovec independent from xfs_log_vec and free it early

 fs/xfs/xfs_log.c     |  3 +++
 fs/xfs/xfs_log.h     | 10 ++++++++--
 fs/xfs/xfs_log_cil.c | 34 ++++++++++++++++++++--------------
 fs/xfs/xfs_super.c   |  9 +++++++++
 4 files changed, 40 insertions(+), 16 deletions(-)

-- 
2.41.1