Re: [PATCH v5 11/11] xfs, dax: introduce xfs_break_dax_layouts()

2018-03-10 Thread Christoph Hellwig
> +static int xfs_wait_dax_page( > + atomic_t*count, > + unsigned intmode) > +{ Normal XFS style would be: static int xfs_wait_dax_page( atomic_t*count, unsigned intmode) { > + struct page

Re: [PATCH v5 11/11] xfs, dax: introduce xfs_break_dax_layouts()

2018-03-10 Thread Christoph Hellwig
> +static int xfs_wait_dax_page( > + atomic_t*count, > + unsigned intmode) > +{ Normal XFS style would be: static int xfs_wait_dax_page( atomic_t*count, unsigned intmode) { > + struct page

[PATCH v5 11/11] xfs, dax: introduce xfs_break_dax_layouts()

2018-03-09 Thread Dan Williams
xfs_break_dax_layouts(), similar to xfs_break_leased_layouts(), scans for busy / pinned dax pages and waits for those pages to go idle before any potential extent unmap operation. dax_layout_busy_page() handles synchronizing against new page-busy events (get_user_pages). It invalidates all

[PATCH v5 11/11] xfs, dax: introduce xfs_break_dax_layouts()

2018-03-09 Thread Dan Williams
xfs_break_dax_layouts(), similar to xfs_break_leased_layouts(), scans for busy / pinned dax pages and waits for those pages to go idle before any potential extent unmap operation. dax_layout_busy_page() handles synchronizing against new page-busy events (get_user_pages). It invalidates all