]> err.no Git - linux-2.6/blobdiff - fs/ocfs2/aops.c
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
[linux-2.6] / fs / ocfs2 / aops.c
index 1db080135c6d99436eb90c4dac46301535d4c3dc..506c24fb5078fe859a8b816e89239c7bb8818d4e 100644 (file)
@@ -1073,12 +1073,15 @@ static void ocfs2_write_failure(struct inode *inode,
        for(i = 0; i < wc->w_num_pages; i++) {
                tmppage = wc->w_pages[i];
 
-               if (ocfs2_should_order_data(inode))
-                       walk_page_buffers(wc->w_handle, page_buffers(tmppage),
-                                         from, to, NULL,
-                                         ocfs2_journal_dirty_data);
-
-               block_commit_write(tmppage, from, to);
+               if (page_has_buffers(tmppage)) {
+                       if (ocfs2_should_order_data(inode))
+                               walk_page_buffers(wc->w_handle,
+                                                 page_buffers(tmppage),
+                                                 from, to, NULL,
+                                                 ocfs2_journal_dirty_data);
+
+                       block_commit_write(tmppage, from, to);
+               }
        }
 }
 
@@ -1901,12 +1904,14 @@ int ocfs2_write_end_nolock(struct address_space *mapping,
                        to = PAGE_CACHE_SIZE;
                }
 
-               if (ocfs2_should_order_data(inode))
-                       walk_page_buffers(wc->w_handle, page_buffers(tmppage),
-                                         from, to, NULL,
-                                         ocfs2_journal_dirty_data);
-
-               block_commit_write(tmppage, from, to);
+               if (page_has_buffers(tmppage)) {
+                       if (ocfs2_should_order_data(inode))
+                               walk_page_buffers(wc->w_handle,
+                                                 page_buffers(tmppage),
+                                                 from, to, NULL,
+                                                 ocfs2_journal_dirty_data);
+                       block_commit_write(tmppage, from, to);
+               }
        }
 
 out_write_size: