<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux-bitkeeper.git/crypto, branch master</title>
<subtitle>Linux Kernel BitKeeper History</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/atom?h=master</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/'/>
<updated>2005-03-23T04:13:40Z</updated>
<entry>
<title>[CRYPTO]: Remap when walk_out crosses page in crypt()</title>
<updated>2005-03-23T04:13:40Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:13:40Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=8c181cf943c5a902312b47e12b0c4b97ca4d0261'/>
<id>urn:sha1:8c181cf943c5a902312b47e12b0c4b97ca4d0261</id>
<content type='text'>
This is needed so that we can keep the in_place assignment outside the
inner loop.  Without this in pathalogical situations we can start out
having walk_out being different from walk_in, but when walk_out crosses
a page it may converge with walk_in.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Split cbc_process into encrypt/decrypt</title>
<updated>2005-03-23T04:12:46Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:12:46Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=6c24f191bae5b001b13d0fcc5217513774484acf'/>
<id>urn:sha1:6c24f191bae5b001b13d0fcc5217513774484acf</id>
<content type='text'>
Rather than taking a branch on the fast path, we might as well split
cbc_process into encrypt and decrypt since they don't share anything
in common.

We can get rid of the cryptfn argument too.  I'll do that next.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Kill obsolete iv check in cbc_process()</title>
<updated>2005-03-23T04:11:58Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:11:58Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=f8de0eb7d2e930d728c3d30844f5f86b728ed7de'/>
<id>urn:sha1:f8de0eb7d2e930d728c3d30844f5f86b728ed7de</id>
<content type='text'>
Here's some more optimisations plus a bug fix for a pathological case
where in_place might not be set correctly which can't happen with any
of the current users.  Here is the first one:

We have long since stopped using a null cit_iv as a means of doing null
encryption.  In fact it doesn't work here anyway since we need to copy
src into dst to achieve null encryption.

No user of cbc_encrypt_iv/cbc_decrypt_iv does this either so let's just
get rid of this check which is sitting in the fast path.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Fix walk-&gt;data handling</title>
<updated>2005-03-23T04:10:18Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:10:18Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=ae8120eb3797dff24576ecc1aade455f336bafbb'/>
<id>urn:sha1:ae8120eb3797dff24576ecc1aade455f336bafbb</id>
<content type='text'>
The problem is that walk-&gt;data wasn't being incremented anymore
after my last change.  This patch should fix it up.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Optimise kmap calls in crypt()</title>
<updated>2005-03-23T04:09:27Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:09:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=59de21037401234f88dd22a9f0a20d2641b8f5e5'/>
<id>urn:sha1:59de21037401234f88dd22a9f0a20d2641b8f5e5</id>
<content type='text'>
Perform kmap once (or twice if the buffer is not aligned correctly)
per page in crypt() instead of the current code which does it once
per block.  Consequently it will yield once per page instead of once
per block.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Eliminate most calls to scatterwalk_copychunks from crypt()</title>
<updated>2005-03-23T04:08:48Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:08:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=6fbd22fb37baa71fdb90e9efe095d6edabd24858'/>
<id>urn:sha1:6fbd22fb37baa71fdb90e9efe095d6edabd24858</id>
<content type='text'>
Only call scatterwalk_copychunks when the block straddles a page boundary.
This allows crypt() to skip the out-of-line call most of the time.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Split src/dst handling out from crypt()</title>
<updated>2005-03-23T04:08:10Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:08:10Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=88649bf71ba78fe64e69a18ab62c17599b52f38f'/>
<id>urn:sha1:88649bf71ba78fe64e69a18ab62c17599b52f38f</id>
<content type='text'>
Move src/dst handling from crypt() into the helpers prepare_src,
prepare_dst, complete_src and complete_dst.  complete_src doesn't
actually do anything at the moment but is included for completeness.

This sets the stage for further optimisations down the track without
polluting crypt() itself.

These helpers don't belong in scatterwalk.[ch] since they only help
the particular way that crypt() is walking the scatter lists.
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Handle in_place flag in crypt()</title>
<updated>2005-03-23T04:07:31Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:07:31Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=9f65cfe66595d0944bfb2d75b163845664807a1e'/>
<id>urn:sha1:9f65cfe66595d0944bfb2d75b163845664807a1e</id>
<content type='text'>
Move the handling of in_place into crypt() itself.  This means that we only
need two temporary buffers instead of three.  It also allows us to simplify
the check in scatterwalk_samebuf.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Do scatterwalk_whichbuf inline.</title>
<updated>2005-03-23T04:06:51Z</updated>
<author>
<name>Herbert Xu</name>
<email>herbert@gondor.apana.org.au</email>
</author>
<published>2005-03-23T04:06:51Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=6c42e471856770ee7c6ff28a5c60c37a3844c181'/>
<id>urn:sha1:6c42e471856770ee7c6ff28a5c60c37a3844c181</id>
<content type='text'>
scatterwalk_whichbuf is called once for each block which could be as
small as 8/16 bytes.  So it makes sense to do that work inline.

It's also a bit inflexible since we may want to use the temporary buffer
even if the block doesn't cross page boundaries.  In particular, we want
to do that when the source and destination are the same.

So let's replace it with scatterwalk_across_pages.

I've also simplified the check in scatterwalk_across_pages.  It is
sufficient to only check len_this_page.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[CRYPTO]: Fix sparse warnings in tea</title>
<updated>2005-03-21T07:36:54Z</updated>
<author>
<name>Domen Puncer</name>
<email>domen@coderock.org</email>
</author>
<published>2005-03-21T07:36:54Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux-bitkeeper.git/commit/?id=a08c93261904fedc79b0dc3e72c8b421ac8fdcd6'/>
<id>urn:sha1:a08c93261904fedc79b0dc3e72c8b421ac8fdcd6</id>
<content type='text'>
Signed-off-by: Domen Puncer &lt;domen@coderock.org&gt;
Signed-off-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
</content>
</entry>
</feed>
