On Mon, Sep 02, 2019 at 11:50:38PM +0800, Gao Xiang wrote: > > > You means killing erofs_get_meta_page or avoid erofs_read_raw_page? > > > > > > - For killing erofs_get_meta_page, here is the current erofs_get_meta_page: > > > > > I think it is simple enough. read_cache_page need write a similar > > > filler, or read_cache_page_gfp will call .readpage, and then > > > introduce buffer_heads, that is what I'd like to avoid now (no need these > > > bd_inode buffer_heads in memory...) > > > > If using read_cache_page_gfp and ->readpage works, please do. The > > fact that the block device inode uses buffer heads is an implementation > > detail that might not last very long and should be invisible to you. > > It also means you can get rid of a lot of code that you don't have > > to maintain and others don't have to update for global API changes. > > I care about those useless buffer_heads in memory for our products... > > Since we are nobh filesystem (a little request, could I use it > after buffer_heads are fully avoided, I have no idea why I need > those buffer_heads in memory.... But I think bd_inode is good > for caching metadata...) Then please use read_cache_page with iomap_readpage(s), and write comment explaining why your are not using read_cache_page_gfp. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel