On Mon, Jan 12, 2015 at 03:09:47PM -0800, Andrew Morton wrote: > > +int dax_clear_blocks(struct inode *inode, sector_t block, long size) > > +{ ... > > + if (pgsz < PAGE_SIZE) > > + memset(addr, 0, pgsz); > > + else > > + clear_page(addr); > > Are there any cache issues in all this code? flush_dcache_page(addr)? Here, no. This is only called to initialise a newly allocated block. Elsewhere, maybe. When i was originally working on this, I think I had code that forced mmaps of DAX files to be aligned to SHMLBA, because I remember noticing a bug in sparc64's remap_file_range(). Unfortunately, in the various rewrites, that got lost. So it needs to be put back in. flush_dcache_page() in particular won't work because it needs a struct page. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>