On Sat, Mar 10, 2018 at 9:40 AM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote: > On Sat, Mar 10, 2018 at 1:46 AM, Christoph Hellwig <hch@xxxxxx> wrote: >>> +int dax_set_page_dirty(struct page *page) >>> +{ >>> + /* >>> + * Unlike __set_page_dirty_no_writeback that handles dirty page >>> + * tracking in the page object, dax does all dirty tracking in >>> + * the inode address_space in response to mkwrite faults. In the >>> + * dax case we only need to worry about potentially dirty CPU >>> + * caches, not dirty page cache pages to write back. >>> + * >>> + * This callback is defined to prevent fallback to >>> + * __set_page_dirty_buffers() in set_page_dirty(). >>> + */ >>> + return 0; >>> +} >> >> Make this a generic noop_set_page_dirty maybe? >> >>> +EXPORT_SYMBOL(dax_set_page_dirty); >>> + >>> +void dax_invalidatepage(struct page *page, unsigned int offset, >>> + unsigned int length) >>> +{ >>> + /* >>> + * There is no page cache to invalidate in the dax case, however >>> + * we need this callback defined to prevent falling back to >>> + * block_invalidatepage() in do_invalidatepage(). >>> + */ >>> +} >> >> Same here. > > I guess I'm not sure what you mean. These nops are specific to dax I > don't think they make sense in another context besides dax. > I did the rename, and am housing these in fs/dax.c, I assume that's what you wanted. -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html