On Wed, Jul 09, 2014 at 09:51:27PM +0800, Kinglong Mee wrote: > Fix commit dc97618ddd (nfsd4: separate splice and readv cases). > xdr->end and xdr->p are type of __be32 *, so padding needs one here. I agree with the patch, but not the changelog. The problem here is that xdr->p isn't that those are __be32 *'s, but that xdr->p has already advanced past the eof and the count, right? Applying with an updated changelog. --b. > > Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx> > --- > fs/nfsd/nfs4xdr.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c > index 523c666..8a2fbb2 100644 > --- a/fs/nfsd/nfs4xdr.c > +++ b/fs/nfsd/nfs4xdr.c > @@ -3067,11 +3067,8 @@ static __be32 nfsd4_encode_splice_read( > __be32 nfserr; > __be32 *p = xdr->p - 2; > > - /* > - * Don't inline pages unless we know there's room for eof, > - * count, and possible padding: > - */ > - if (xdr->end - xdr->p < 3) > + /* Make sure there will be room for padding if needed */ > + if (xdr->end - xdr->p < 1) > return nfserr_resource; > > nfserr = nfsd_splice_read(read->rd_rqstp, file, > -- > 1.9.3 > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html