lkml.org 
[lkml]   [2018]   [Mar]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v5 02/11] xfs, dax: introduce xfs_dax_aops
> +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.

> +EXPORT_SYMBOL(dax_invalidatepage);

And EXPORT_SYMBOL_GPL for anything dax-related, please.

> +const struct address_space_operations xfs_dax_aops = {
> + .writepages = xfs_vm_writepages,

Please split out the DAX case from xfs_vm_writepages.

This patch should probably also split into VFS and XFS parts.

\
 
 \ /
  Last update: 2018-03-10 10:47    [W:0.137 / U:0.576 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site