while (!list_empty(&failed)) {
nfs_release_request(req);
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
if (put_dreq(dreq))
nfs_mark_request_commit(req, NULL, &cinfo);
} else
nfs_release_request(req);
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
if (atomic_dec_and_test(&cinfo.mds->rpcs_out))
req->wb_offset = pos & ~PAGE_MASK;
if (!nfs_pageio_add_request(desc, req)) {
result = desc->pg_error;
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
nfs_release_request(req);
break;
}
default:
nfs_release_request(req);
}
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
out_put:
req = nfs_list_entry(head->next);
nfs_list_remove_request(req);
nfs_release_request(req);
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
}
}
/**
- * nfs_unlock_request_dont_release - Unlock request and wake up sleepers.
+ * nfs_unlock_request - Unlock request and wake up sleepers.
* @req:
*/
-void nfs_unlock_request_dont_release(struct nfs_page *req)
+void nfs_unlock_request(struct nfs_page *req)
{
if (!NFS_WBACK_BUSY(req)) {
printk(KERN_ERR "NFS: Invalid unlock attempted\n");
}
/**
- * nfs_unlock_request - Unlock request and release the nfs_page
+ * nfs_unlock_and_release_request - Unlock request and release the nfs_page
+ * @req:
*/
-void nfs_unlock_request(struct nfs_page *req)
+void nfs_unlock_and_release_request(struct nfs_page *req)
{
- nfs_unlock_request_dont_release(req);
+ nfs_unlock_request(req);
nfs_release_request(req);
}
remove_req:
nfs_inode_remove_request(req);
next:
- nfs_unlock_request_dont_release(req);
+ nfs_unlock_request(req);
nfs_end_page_writeback(req->wb_page);
nfs_release_request(req);
}
nfs_grow_file(page, offset, count);
nfs_mark_uptodate(page, req->wb_pgbase, req->wb_bytes);
nfs_mark_request_dirty(req);
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
return 0;
}
static void nfs_redirty_request(struct nfs_page *req)
{
nfs_mark_request_dirty(req);
- nfs_unlock_request_dont_release(req);
+ nfs_unlock_request(req);
nfs_end_page_writeback(req->wb_page);
nfs_release_request(req);
}
dec_bdi_stat(req->wb_page->mapping->backing_dev_info,
BDI_RECLAIMABLE);
}
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
}
EXPORT_SYMBOL_GPL(nfs_retry_commit);
dprintk(" mismatch\n");
nfs_mark_request_dirty(req);
next:
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
}
nfs_init_cinfo(&cinfo, data->inode, data->dreq);
if (atomic_dec_and_test(&cinfo.mds->rpcs_out))
* page as being dirty
*/
cancel_dirty_page(page, PAGE_CACHE_SIZE);
- nfs_unlock_request(req);
+ nfs_unlock_and_release_request(req);
break;
}
ret = nfs_wait_on_request(req);
struct nfs_page *req);
extern int nfs_wait_on_request(struct nfs_page *);
extern void nfs_unlock_request(struct nfs_page *req);
-extern void nfs_unlock_request_dont_release(struct nfs_page *req);
+extern void nfs_unlock_and_release_request(struct nfs_page *req);
/*
* Lock the page of an asynchronous request