Hi, a while ago I started to cleanup the kmem helpers we have, and use kernel's MM API. The discussion has stalled because I've got caugh on other stuff, and I'm trying to continue that cleanup. The following series basically removes kmem_zone_alloc() and kmem_zone_zalloc(), replacing them by kmem_cache_{alloc,zalloc}. It uses __GFP_NOFAIL where we are not allowed to fail, to replicate the behavior of kmem_zone_alloc(). Patches have been tested with xfstests, on a 1GiG and a 64GiB RAM systems to check the patches under memory pressure. The patches are good as-is, but my main point is to revive the topic, and I though it would be better to do it with the patches. Which is another reason I decided to split the series in a few more patches than would be required, I thought it would be better segmenting the changes in the way I did. Comments? Cheers fs/xfs/kmem.c | 21 --------------------- fs/xfs/kmem.h | 8 -------- fs/xfs/libxfs/xfs_alloc.c | 3 ++- fs/xfs/libxfs/xfs_alloc_btree.c | 3 ++- fs/xfs/libxfs/xfs_bmap.c | 8 ++++++-- fs/xfs/libxfs/xfs_bmap_btree.c | 3 ++- fs/xfs/libxfs/xfs_da_btree.c | 4 +++- fs/xfs/libxfs/xfs_ialloc_btree.c | 2 +- fs/xfs/libxfs/xfs_inode_fork.c | 6 +++--- fs/xfs/libxfs/xfs_refcount_btree.c | 2 +- fs/xfs/libxfs/xfs_rmap_btree.c | 2 +- fs/xfs/xfs_bmap_item.c | 4 ++-- fs/xfs/xfs_buf.c | 2 +- fs/xfs/xfs_buf_item.c | 2 +- fs/xfs/xfs_dquot.c | 2 +- fs/xfs/xfs_extfree_item.c | 6 ++++-- fs/xfs/xfs_icache.c | 11 +++-------- fs/xfs/xfs_icreate_item.c | 2 +- fs/xfs/xfs_inode_item.c | 3 ++- fs/xfs/xfs_log.c | 7 ++++--- fs/xfs/xfs_log_cil.c | 2 +- fs/xfs/xfs_log_priv.h | 2 +- fs/xfs/xfs_refcount_item.c | 5 +++-- fs/xfs/xfs_rmap_item.c | 6 ++++-- fs/xfs/xfs_trace.h | 1 - fs/xfs/xfs_trans.c | 5 +++-- fs/xfs/xfs_trans_dquot.c | 3 ++- 27 files changed, 54 insertions(+), 71 deletions(-) -- 2.26.2