mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-29 07:04:10 +08:00
Revert "NFS: Ensure that writeback_single_inode() calls write_inode() when syncing"
This reverts commitb80c3cb628
. The reverted commit was rendered obsolete by a VFS fix: commit5547e8aac6
(writeback: Update dirty flags in two steps). We now no longer need to worry about writeback_single_inode() missing our marking the inode for COMMIT in 'do_writepages()' call. Reverting this patch, fixes a performance regression in which the inode would continuously get queued to the dirty list, causing the writeback code to unnecessarily try to send a COMMIT. Signed-off-by: Trond Myklebust <Trond.Myklebust> Tested-by: Simon Kirby <sim@hostway.ca> Cc: stable@kernel.org [2.6.35+]
This commit is contained in:
parent
899e3ee404
commit
59b7c05fff
@ -428,7 +428,6 @@ static void
|
|||||||
nfs_mark_request_dirty(struct nfs_page *req)
|
nfs_mark_request_dirty(struct nfs_page *req)
|
||||||
{
|
{
|
||||||
__set_page_dirty_nobuffers(req->wb_page);
|
__set_page_dirty_nobuffers(req->wb_page);
|
||||||
__mark_inode_dirty(req->wb_page->mapping->host, I_DIRTY_DATASYNC);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(CONFIG_NFS_V3) || defined(CONFIG_NFS_V4)
|
#if defined(CONFIG_NFS_V3) || defined(CONFIG_NFS_V4)
|
||||||
@ -762,6 +761,8 @@ int nfs_updatepage(struct file *file, struct page *page,
|
|||||||
status = nfs_writepage_setup(ctx, page, offset, count);
|
status = nfs_writepage_setup(ctx, page, offset, count);
|
||||||
if (status < 0)
|
if (status < 0)
|
||||||
nfs_set_pageerror(page);
|
nfs_set_pageerror(page);
|
||||||
|
else
|
||||||
|
__set_page_dirty_nobuffers(page);
|
||||||
|
|
||||||
dprintk("NFS: nfs_updatepage returns %d (isize %lld)\n",
|
dprintk("NFS: nfs_updatepage returns %d (isize %lld)\n",
|
||||||
status, (long long)i_size_read(inode));
|
status, (long long)i_size_read(inode));
|
||||||
|
Loading…
Reference in New Issue
Block a user