Update to 2.6.32.39 Mainline
/fs/ocfs2/aops.c
blob:5fc918ca25722038e19ebaa1c9880cbd72ef5cb1 -> blob:35d256b5add2a065debbe686175f155e9e3a5731
--- fs/ocfs2/aops.c
+++ fs/ocfs2/aops.c
@@ -1091,6 +1091,12 @@ static int ocfs2_prepare_page_for_write(
ocfs2_figure_cluster_boundaries(OCFS2_SB(inode->i_sb), cpos,
&cluster_start, &cluster_end);
+ /* treat the write as new if the a hole/lseek spanned across
+ * the page boundary.
+ */
+ new = new | ((i_size_read(inode) <= page_offset(page)) &&
+ (page_offset(page) <= user_pos));
+
if (page == wc->w_target_page) {
map_from = user_pos & (PAGE_CACHE_SIZE - 1);
map_to = map_from + user_len;