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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to