From: Fred Isaman Date: Thu, 1 May 2008 17:03:22 +0000 (+0300) Subject: nfs: fix race in nfs_dirty_request X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=38def50fabc479dc96ea6bd2cb2526e0dfc36fa4;p=openwrt%2Fstaging%2Fblogic.git nfs: fix race in nfs_dirty_request When called from nfs_flush_incompatible, the req is not locked, so req->wb_page might be set to NULL before it is used by PageWriteback. Signed-off-by: Fred Isaman Signed-off-by: Benny Halevy Signed-off-by: Trond Myklebust --- diff --git a/fs/nfs/write.c b/fs/nfs/write.c index 1ade11d1ba07..6d8ace3e3259 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c @@ -415,7 +415,7 @@ nfs_dirty_request(struct nfs_page *req) if (page == NULL || test_bit(PG_NEED_COMMIT, &req->wb_flags)) return 0; - return !PageWriteback(req->wb_page); + return !PageWriteback(page); } #if defined(CONFIG_NFS_V3) || defined(CONFIG_NFS_V4)