On Thu, Nov 16, 2017 at 05:03:08PM -0800, Liu Bo wrote:
> On Tue, Nov 14, 2017 at 04:56:55PM -0500, Josef Bacik wrote:
> > From: Josef Bacik <jbacik@xxxxxx>
> >
> > In order to more efficiently support sub-page blocksizes we need to stop
> > allocating pages from pagecache for our metadata. Instead switch to using the
> > account_metadata* counters for making sure we are keeping the system aware of
> > how much dirty metadata we have, and use the ->free_cached_objects super
> > operation in order to handle freeing up extent buffers. This greatly simplifies
> > how we deal with extent buffers as now we no longer have to tie the page cache
> > reclaimation stuff to the extent buffer stuff. This will also allow us to
> > simply kmalloc() our data for sub-page blocksizes.
> >
>
> The patch is too big for one to review, but so far it looks good to
> me, a few comments.
>
Yeah unfortunately I already did all the prep work I could in previous series,
this stuff has to all be done whole hog otherwise things won't compile.
> > Signed-off-by: Josef Bacik <jbacik@xxxxxx>
> > ---
> ...
> >
> > -static int check_async_write(struct btrfs_inode *bi)
> > +static int check_async_write(void)
> > {
> > - if (atomic_read(&bi->sync_writers))
> > + if (current->journal_info)
>
> Please add a comment that explains we're called from commit
> transaction.
>
Yup.
> > return 0;
> > #ifdef CONFIG_X86
> > if (static_cpu_has(X86_FEATURE_XMM4_2))
> ...
> > @@ -4977,12 +5054,12 @@ struct extent_buffer *alloc_extent_buffer(struct btrfs_fs_info *fs_info,
> > unsigned long len = fs_info->nodesize;
> > unsigned long num_pages = num_extent_pages(start, len);
> > unsigned long i;
> > - unsigned long index = start >> PAGE_SHIFT;
> > struct extent_buffer *eb;
> > struct extent_buffer *exists = NULL;
> > struct page *p;
> > - struct address_space *mapping = fs_info->btree_inode->i_mapping;
> > - int uptodate = 1;
> > + struct btrfs_eb_info *eb_info = fs_info->eb_info;
> > +// struct zone *last_zone = NULL;
> > +// struct pg_data_t *last_pgdata = NULL;
>
> hmm, a typo?
>
Oops. Thanks,
Josef
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html