From fda6d5c145c946f6fdbbceda829accd075efb487 Mon Sep 17 00:00:00 2001 From: Fred Isaman Date: Wed, 23 Mar 2011 13:27:48 +0000 Subject: [PATCH] --- yaml --- r: 242414 b: refs/heads/master c: 5917ce8440ba0b3f2adee613b5f1258ac5efff02 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/nfs/write.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 9e3e54397bd5..c9a684465655 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 64bfeb49bd1c2351a8415f7fe6b25eef208872a5 +refs/heads/master: 5917ce8440ba0b3f2adee613b5f1258ac5efff02 diff --git a/trunk/fs/nfs/write.c b/trunk/fs/nfs/write.c index dbc801810e75..f5f005e9db48 100644 --- a/trunk/fs/nfs/write.c +++ b/trunk/fs/nfs/write.c @@ -1409,10 +1409,9 @@ static void nfs_commit_done(struct rpc_task *task, void *calldata) return; } -static void nfs_commit_release(void *calldata) +static void nfs_commit_release_pages(struct nfs_write_data *data) { - struct nfs_write_data *data = calldata; - struct nfs_page *req; + struct nfs_page *req; int status = data->task.tk_status; while (!list_empty(&data->pages)) { @@ -1446,6 +1445,13 @@ static void nfs_commit_release(void *calldata) next: nfs_clear_page_tag_locked(req); } +} + +static void nfs_commit_release(void *calldata) +{ + struct nfs_write_data *data = calldata; + + nfs_commit_release_pages(data); nfs_commit_clear_lock(NFS_I(data->inode)); nfs_commitdata_release(calldata); }