[PATCH] crypto: scatterwalk_copychunks() fails to advance through scatterlist

J. Bruce Fields bfields at fieldses.org
Tue Mar 20 17:17:51 EDT 2007


On Wed, Mar 21, 2007 at 07:54:21AM +1100, Herbert Xu wrote:
> On Tue, Mar 20, 2007 at 10:16:14AM -0400, J. Bruce Fields wrote:
> > 
> > Are the elements of the scatterlists assumed to always be full pages?  I
> 
> Definitely not.
> 
> > need to encrypt things that look like, for example:
> > 
> > 	sg[0].page = page1
> > 	sg[0].offset = 0
> > 	sg[0].length = 5
> > 	sg[1].page = page2
> > 	sg[1].offset = 0
> > 	sg[1].length = 37
> 
> OK I see what you mean now.  I'll apply your patch.

Thanks!

By the way, the commit that I believe introduced this regression did two
or three different things at once--I spent some time staring at it and
can't say I really understand the change.  That's probably just me!  But
would it be possible to split up these patches fine enough that people
inexperienced with this code would have a better chance of understanding
what's going on?

There's so many potential corner cases to handle here, I know I'd want
to tread very carefully....

(And did the crypto testing module use to have some tests for buffers
that were fragmented in odd ways, or was I imagining that?  I'd be happy
to help come up with some test cases if it'd be useful.)

--b.


More information about the NFSv4 mailing list