diff options
Diffstat (limited to 'fs/nfs/nfs4proc.c')
-rw-r--r-- | fs/nfs/nfs4proc.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 43045fa44710..8f071314e94b 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -5526,8 +5526,6 @@ static void nfs4_layoutget_release(void *calldata) | |||
5526 | struct nfs4_layoutget *lgp = calldata; | 5526 | struct nfs4_layoutget *lgp = calldata; |
5527 | 5527 | ||
5528 | dprintk("--> %s\n", __func__); | 5528 | dprintk("--> %s\n", __func__); |
5529 | if (lgp->res.layout.buf != NULL) | ||
5530 | free_page((unsigned long) lgp->res.layout.buf); | ||
5531 | put_nfs_open_context(lgp->args.ctx); | 5529 | put_nfs_open_context(lgp->args.ctx); |
5532 | kfree(calldata); | 5530 | kfree(calldata); |
5533 | dprintk("<-- %s\n", __func__); | 5531 | dprintk("<-- %s\n", __func__); |
@@ -5559,12 +5557,7 @@ int nfs4_proc_layoutget(struct nfs4_layoutget *lgp) | |||
5559 | 5557 | ||
5560 | dprintk("--> %s\n", __func__); | 5558 | dprintk("--> %s\n", __func__); |
5561 | 5559 | ||
5562 | lgp->res.layout.buf = (void *)__get_free_page(GFP_NOFS); | 5560 | lgp->res.layoutp = &lgp->args.layout; |
5563 | if (lgp->res.layout.buf == NULL) { | ||
5564 | nfs4_layoutget_release(lgp); | ||
5565 | return -ENOMEM; | ||
5566 | } | ||
5567 | |||
5568 | lgp->res.seq_res.sr_slot = NULL; | 5561 | lgp->res.seq_res.sr_slot = NULL; |
5569 | task = rpc_run_task(&task_setup_data); | 5562 | task = rpc_run_task(&task_setup_data); |
5570 | if (IS_ERR(task)) | 5563 | if (IS_ERR(task)) |