On Wed, 2 Mar 2022 03:49:51 +0800 Gao Xiang <[email protected]> wrote:
> Rename preload_compressed_pages() as z_erofs_bind_cache() > since we're try to prepare for adapting folios. > > Also, add a comment for the gfp setting. No logic changes. > > Signed-off-by: Gao Xiang <[email protected]> > --- > fs/erofs/zdata.c | 18 ++++++++++-------- > 1 file changed, 10 insertions(+), 8 deletions(-) > > diff --git a/fs/erofs/zdata.c b/fs/erofs/zdata.c > index 2673fc105861..59aecf42e45c 100644 > --- a/fs/erofs/zdata.c > +++ b/fs/erofs/zdata.c > @@ -219,13 +219,17 @@ struct z_erofs_decompress_frontend { > static struct page *z_pagemap_global[Z_EROFS_VMAP_GLOBAL_PAGES]; > static DEFINE_MUTEX(z_pagemap_global_lock); > > -static void preload_compressed_pages(struct z_erofs_decompress_frontend *fe, > - struct address_space *mc, > - enum z_erofs_cache_alloctype type, > - struct page **pagepool) > +static void z_erofs_bind_cache(struct z_erofs_decompress_frontend *fe, > + enum z_erofs_cache_alloctype type, > + struct page **pagepool) > { > + struct address_space *mc = MNGD_MAPPING(EROFS_I_SB(fe->inode)); > struct z_erofs_pcluster *pcl = fe->pcl; > bool standalone = true; > + /* > + * optimistic allocation without direct reclaim since inplace I/O > + * can be used if low memory otherwise. > + */ > gfp_t gfp = (mapping_gfp_mask(mc) & ~__GFP_DIRECT_RECLAIM) | > __GFP_NOMEMALLOC | __GFP_NORETRY | __GFP_NOWARN; > struct page **pages; > @@ -703,17 +707,15 @@ static int z_erofs_do_read_page(struct > z_erofs_decompress_frontend *fe, > WRITE_ONCE(fe->pcl->compressed_pages[0], fe->map.buf.page); > fe->mode = COLLECT_PRIMARY_FOLLOWED_NOINPLACE; > } else { > - /* preload all compressed pages (can change mode if needed) */ > + /* bind cache first when cached decompression is preferred */ > if (should_alloc_managed_pages(fe, sbi->opt.cache_strategy, > map->m_la)) > cache_strategy = TRYALLOC; > else > cache_strategy = DONTALLOC; > > - preload_compressed_pages(fe, MNGD_MAPPING(sbi), > - cache_strategy, pagepool); > + z_erofs_bind_cache(fe, cache_strategy, pagepool); > } > - > hitted: > /* > * Ensure the current partial page belongs to this submit chain rather Reviewed-by: Yue Hu <[email protected]>
