On Thu 21-09-23 21:07:39, Matthew Wilcox (Oracle) wrote: > Support in this function for large folios is limited to supporting > filesystems with block size > PAGE_SIZE. This new functionality will only > be supported on machines without HIGHMEM, so the problem of kmap_local > only being able to map a single page in the folio can be ignored. > We will not use large folios for ext2 directories on HIGHMEM machines. A look like a fool replying to the same patch multiple times ;) but how is this supposed to work even without HIGHMEM? Suppose we have a page size 4k and block size 16k. Directory entries in a block can then straddle 4k boundary so if kmap_local() is mapping only a single page, then we are going to have hard time parsing this all? Oh, I guess you are pointing to the fact kmap_local_folio() gives you back address usable for the whole folio access if !HIGHMEM. But then all the iterations (e.g. in ext2_readdir()) has to be folio-size based and not page-size based as they currently are? You didn't change these iterations in your patches which has confused me... Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR