[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100706070918.GD13023@mail.oracle.com>
Date: Tue, 6 Jul 2010 00:09:19 -0700
From: Joel Becker <Joel.Becker@...cle.com>
To: Tao Ma <tao.ma@...cle.com>
Cc: Dave Chinner <david@...morbit.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Linux Kernel <linux-kernel@...r.kernel.org>,
ocfs2-devel@....oracle.com, Dave Chinner <dchinner@...hat.com>,
Christoph Hellwig <hch@....de>, Mark Fasheh <mfasheh@...e.com>
Subject: Re: [PATCH 2/2] ocfs2: No need to zero pages past i_size. i_size v2
On Sun, Jul 04, 2010 at 11:13:01PM +0800, Tao Ma wrote:
> On 07/04/2010 05:33 AM, Joel Becker wrote:
> >@@ -1142,11 +1143,17 @@ static int ocfs2_grab_pages_for_write(struct address_space *mapping,
> > /*
> > * Figure out how many pages we'll be manipulating here. For
> > * non allocating write, we just change the one
> >- * page. Otherwise, we'll need a whole clusters worth.
> >+ * page. Otherwise, we'll need a whole clusters worth. If we're
> >+ * writing past i_size, we only need enough pages to cover the
> >+ * last page of the write.
> The comments for the whole function before the function name also
> needs this change accordingly?
Not really. That comment set a limit, this comment is more
detailed.
> > if (new) {
> > wc->w_num_pages = ocfs2_pages_per_cluster(inode->i_sb);
> > start = ocfs2_align_clusters_to_page_index(inode->i_sb, cpos);
> >+ /* This is the index *past* the write */
> >+ end_index = ((user_pos + user_len)>> PAGE_CACHE_SHIFT) + 1;
> should it be
> end_index = ((user_pos + user_len - 1) >> PAGE_CACHE_SHIFT) + 1?
Maybe. Gotta think about it and test.
Joel
--
Life's Little Instruction Book #232
"Keep your promises."
Joel Becker
Consulting Software Developer
Oracle
E-mail: joel.becker@...cle.com
Phone: (650) 506-8127
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists