[RFC PATCH] xfs: enables file data inlining in inodes
Carlos Maiolino
cmaiolino at redhat.com
Mon Oct 15 12:01:25 CDT 2012
On Fri, Oct 12, 2012 at 06:00:14PM +0530, Raghavendra D Prabhu wrote:
> Hi,
>
>
> * On Thu, Oct 11, 2012 at 04:52:38PM -0300, Carlos Maiolino <cmaiolino at redhat.com> wrote:
> >Hi,
> >
> >this is a first RFC patch of my work on data inlining, i.e. use the xfs inode's
> >literal area to store user's data.
> >
> >This first patch just cares about write and read new files into inode's literal
> >area, it does not make any conversion from inline to extent or vice-versa.
> >
> >The idea to send this patch to list is just to get comments about this first
> >work and see if anybody has some ideas/suggestions about it, mainly related
> >with page cache and journal handling, since it's the first time I deal with
> >journal and page cache handling, I'm not pretty sure if I did things right
> >or not.
> >
> >Every comment is very appreciated.
> >
> >Thanks
> >---
> >fs/xfs/xfs_aops.c | 134 ++++++++++++++++++++++++++++++++++++++++++++++++++---
> >+ if (ip->i_d.di_format == XFS_DINODE_FMT_LOCAL) {
> >+ struct page *page = list_first_entry(pages, struct page, lru);
> >+
> >+ ASSERT(i_size_read(VFS_I(ip) <= PAGE_CACHE_SIZE));
>
> Looks good.
>
> But, I guess should be --- ASSERT(i_size_read(VFS_I(ip)) <= PAGE_CACHE_SIZE); here?
>
Yes, you're right, thanks for catch this
> >+
> >+ list_del(&page->lru);
> >+ if(!(add_to_page_cache_lru(page, mapping,
> >+ page->index, GFP_KERNEL)))
> >+ return xfs_inline_read(ip, page, page->mapping);
> >+
> >+ page_cache_release(page);
> >+ return 0;
> >+ } else {
> >+ return mpage_readpages(mapping, pages, nr_pages, xfs_get_blocks);
> >+ }
> >}
> >
> >const struct address_space_operations xfs_address_space_operations = {
> >diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
> >index 2778258..5e56e5c 100644
> >--- a/fs/xfs/xfs_inode.c
> >+++ b/fs/xfs/xfs_inode.c
> >@@ -287,18 +287,6 @@ xfs_iformat(
> > case S_IFDIR:
> >--
> >1.7.11.7
> >
> >_______________________________________________
> >xfs mailing list
> >xfs at oss.sgi.com
> >http://oss.sgi.com/mailman/listinfo/xfs
>
>
>
>
> Regards,
> --
> Raghavendra Prabhu
> GPG Id : 0xD72BE977
> Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977
> www: wnohang.net
> _______________________________________________
> xfs mailing list
> xfs at oss.sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs
--
--Carlos
More information about the xfs
mailing list