|
@@ -6184,7 +6184,8 @@ nfs4_proc_layoutget(struct nfs4_layoutget *lgp, gfp_t gfp_flags)
|
|
status = nfs4_wait_for_completion_rpc_task(task);
|
|
status = nfs4_wait_for_completion_rpc_task(task);
|
|
if (status == 0)
|
|
if (status == 0)
|
|
status = task->tk_status;
|
|
status = task->tk_status;
|
|
- if (status == 0)
|
|
|
|
|
|
+ /* if layoutp->len is 0, nfs4_layoutget_prepare called rpc_exit */
|
|
|
|
+ if (status == 0 && lgp->res.layoutp->len)
|
|
lseg = pnfs_layout_process(lgp);
|
|
lseg = pnfs_layout_process(lgp);
|
|
rpc_put_task(task);
|
|
rpc_put_task(task);
|
|
dprintk("<-- %s status=%d\n", __func__, status);
|
|
dprintk("<-- %s status=%d\n", __func__, status);
|