diff options
| author | Takashi Iwai <tiwai@suse.de> | 2015-11-27 13:40:20 +0100 | 
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2015-11-27 13:40:20 +0100 | 
| commit | 06a691e64b11323a735db3c3bd909d3c0712698f (patch) | |
| tree | e60b5a230fc2ea6e0f514d878d322a1f8e101c57 /fs/nfs/read.c | |
| parent | 0c25ad80408e95e0a4fbaf0056950206e95f726f (diff) | |
| parent | 923f1cbf2e45f6292a01de959031a8efeabede78 (diff) | |
Merge tag 'asoc-fix-v4.4-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Fixes for v4.4
Quite a large batch of fixes have come in since the merge window, mainly
driver specific ones but there's a couple of core ones:
 - A fix for DAPM resume on active streams to ensure everything ends up
   cleanly in the right state.
 - Reset the DAPM cache when freeing widgets to fix a crash on driver
   remove and reload.
The PM functions for nau8825 are new code which fix crashes on resume.
Diffstat (limited to 'fs/nfs/read.c')
| -rw-r--r-- | fs/nfs/read.c | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/fs/nfs/read.c b/fs/nfs/read.c index 01b8cc8e8cfc..0a5e33f33b5c 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c @@ -246,6 +246,13 @@ static void nfs_readpage_retry(struct rpc_task *task,  		nfs_set_pgio_error(hdr, -EIO, argp->offset);  		return;  	} + +	/* For non rpc-based layout drivers, retry-through-MDS */ +	if (!task->tk_ops) { +		hdr->pnfs_error = -EAGAIN; +		return; +	} +  	/* Yes, so retry the read at the end of the hdr */  	hdr->mds_offset += resp->count;  	argp->offset += resp->count; @@ -268,7 +275,7 @@ static void nfs_readpage_result(struct rpc_task *task,  			hdr->good_bytes = bound - hdr->io_start;  		}  		spin_unlock(&hdr->lock); -	} else if (hdr->res.count != hdr->args.count) +	} else if (hdr->res.count < hdr->args.count)  		nfs_readpage_retry(task, hdr);  } | 
