Thread (4 messages) 4 messages, 2 authors, 2014-03-18

[PATCH] arm64/lib: add optimized implementation of sha_transform

From: Ard Biesheuvel <hidden>
Date: 2014-03-18 07:26:02
Also in: linux-crypto

On 17 March 2014 22:18, Marek Vasut [off-list ref] wrote:
On Friday, March 14, 2014 at 04:02:33 PM, Ard Biesheuvel wrote:
quoted
This implementation keeps the 64 bytes of workspace in registers rather
than on the stack, eliminating most of the loads and stores, and reducing
the instruction count by about 25%.

Signed-off-by: Ard Biesheuvel <redacted>
---
Hello all,

No performance numbers I am allowed to share, unfortunately, so if anyone
else (with access to actual, representative hardware) would care to have a
go, I would be very grateful.

This can be done by building the tcrypt.ko module (CONFIG_CRYPTO_TEST=m),
and inserting the module using 'mode=303' as a parameter (note that the
insmod always fails, but produces its test output to the kernel log). Also
note that the sha_transform() function will be part of the kernel proper,
so just rebuilding the sha1_generic module is not sufficient.

Cheers,
Won't the function sha_transform() collide with the one in lib/sha1.c ? Or will
the one in lib/sha1.c be overriden somehow ?
No, this works pretty well, in fact: arch/*/lib has precedence over
lib/, and objects (declared with lib-y +=)  are only included to
satisfy unresolved dependencies. So the second (generic) sha1.o will
not get linked.
Otherwise:

Reviewed-by: Marek Vasut <marex@denx.de>
Thanks. I did send a v2 which is actually a lot different from the
version you reviewed, so I won't carry over your reviewed-by without
your acknowledgement.

Cheers,
Ard.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help