mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-11 07:39:47 +00:00
Merge branch 'hotfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
* 'hotfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: nfs: don't ignore return value from nfs_pageio_add_request
This commit is contained in:
commit
49ccf74aaf
@ -533,7 +533,10 @@ readpage_async_filler(void *data, struct page *page)
|
||||
|
||||
if (len < PAGE_CACHE_SIZE)
|
||||
zero_user_segment(page, len, PAGE_CACHE_SIZE);
|
||||
nfs_pageio_add_request(desc->pgio, new);
|
||||
if (!nfs_pageio_add_request(desc->pgio, new)) {
|
||||
error = desc->pgio->pg_error;
|
||||
goto out_unlock;
|
||||
}
|
||||
return 0;
|
||||
out_error:
|
||||
error = PTR_ERR(new);
|
||||
|
@ -39,6 +39,7 @@ static struct nfs_page * nfs_update_request(struct nfs_open_context*,
|
||||
unsigned int, unsigned int);
|
||||
static void nfs_pageio_init_write(struct nfs_pageio_descriptor *desc,
|
||||
struct inode *inode, int ioflags);
|
||||
static void nfs_redirty_request(struct nfs_page *req);
|
||||
static const struct rpc_call_ops nfs_write_partial_ops;
|
||||
static const struct rpc_call_ops nfs_write_full_ops;
|
||||
static const struct rpc_call_ops nfs_commit_ops;
|
||||
@ -288,7 +289,12 @@ static int nfs_page_async_flush(struct nfs_pageio_descriptor *pgio,
|
||||
BUG();
|
||||
}
|
||||
spin_unlock(&inode->i_lock);
|
||||
nfs_pageio_add_request(pgio, req);
|
||||
if (!nfs_pageio_add_request(pgio, req)) {
|
||||
nfs_redirty_request(req);
|
||||
nfs_end_page_writeback(page);
|
||||
nfs_clear_page_tag_locked(req);
|
||||
return pgio->pg_error;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user