summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorAnton Altaparmakov <aia21@cantab.net>2004-04-23 18:48:55 +0100
committerAnton Altaparmakov <aia21@cantab.net>2004-04-23 18:48:55 +0100
commit7eebd09bfefc312896fcb7d031cffaa7323cc721 (patch)
treea1df397e3a196ef88be4b491eff8b4ed7e443e95 /fs
parent3c23072ef1e12a0175513c76dd67c0d182fbcf66 (diff)
parent7ce42ae14e32016ac8e83003db5811a33e3b16e3 (diff)
Merge cantab.net:/usr/src/bklinux-2.6 into cantab.net:/usr/src/ntfs-2.6
Diffstat (limited to 'fs')
-rw-r--r--fs/buffer.c2
-rw-r--r--fs/ext3/inode.c6
-rw-r--r--fs/ntfs/aops.c19
-rw-r--r--fs/reiserfs/inode.c2
4 files changed, 10 insertions, 19 deletions
diff --git a/fs/buffer.c b/fs/buffer.c
index 7fc4e91f0ce9..033773300a5a 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -1826,7 +1826,7 @@ static int __block_write_full_page(struct inode *inode, struct page *page,
if (wbc->sync_mode != WB_SYNC_NONE || !wbc->nonblocking) {
lock_buffer(bh);
} else if (test_set_buffer_locked(bh)) {
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
continue;
}
if (test_clear_buffer_dirty(bh)) {
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
index 753f958dbf5e..b76259edea9b 100644
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -1393,7 +1393,7 @@ static int ext3_ordered_writepage(struct page *page,
return ret;
out_fail:
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
unlock_page(page);
return ret;
}
@@ -1422,7 +1422,7 @@ static int ext3_writeback_writepage(struct page *page,
return ret;
out_fail:
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
unlock_page(page);
return ret;
}
@@ -1478,7 +1478,7 @@ out:
return ret;
no_write:
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
out_unlock:
unlock_page(page);
goto out;
diff --git a/fs/ntfs/aops.c b/fs/ntfs/aops.c
index 76b46fcc19e1..37333cebecad 100644
--- a/fs/ntfs/aops.c
+++ b/fs/ntfs/aops.c
@@ -458,7 +458,7 @@ err_out:
*
* Based on ntfs_read_block() and __block_write_full_page().
*/
-static int ntfs_write_block(struct page *page)
+static int ntfs_write_block(struct writeback_control *wbc, struct page *page)
{
VCN vcn;
LCN lcn;
@@ -499,10 +499,7 @@ static int ntfs_write_block(struct page *page)
* Put the page back on mapping->dirty_pages, but leave its
* buffer's dirty state as-is.
*/
- // FIXME: Once Andrew's -EAGAIN patch goes in, remove the
- // __set_page_dirty_nobuffers(page) and return -EAGAIN instead
- // of zero.
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
unlock_page(page);
return 0;
}
@@ -733,10 +730,7 @@ lock_retry_remap:
* Put the page back on mapping->dirty_pages, but
* leave its buffer's dirty state as-is.
*/
- // FIXME: Once Andrew's -EAGAIN patch goes in, remove
- // the __set_page_dirty_nobuffers(page) and set err to
- // -EAGAIN instead of zero.
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
err = 0;
} else
SetPageError(page);
@@ -869,7 +863,7 @@ static int ntfs_writepage(struct page *page, struct writeback_control *wbc)
}
/* Normal data stream. */
- return ntfs_write_block(page);
+ return ntfs_write_block(wbc, page);
}
/*
@@ -986,10 +980,7 @@ err_out:
* Put the page back on mapping->dirty_pages, but leave its
* buffer's dirty state as-is.
*/
- // FIXME: Once Andrew's -EAGAIN patch goes in, remove the
- // __set_page_dirty_nobuffers(page) and set err to -EAGAIN
- // instead of zero.
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
err = 0;
} else {
ntfs_error(vi->i_sb, "Resident attribute write failed with "
diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c
index 2a6c159bcb1e..6aded3b8941b 100644
--- a/fs/reiserfs/inode.c
+++ b/fs/reiserfs/inode.c
@@ -2112,7 +2112,7 @@ static int reiserfs_write_full_page(struct page *page, struct writeback_control
lock_buffer(bh);
} else {
if (test_set_buffer_locked(bh)) {
- __set_page_dirty_nobuffers(page);
+ redirty_page_for_writepage(wbc, page);
continue;
}
}