Changed locking schema, coding style, symbol exporting.
HIFN driver is ready and is waiting the latest test.
It works several hours on a 4-way system without any problem
(test crypto_provider and crypto consumer are also in patch).
BTW, little note:
System crypts with 128 bits aes in ecb mode, since only one CPU in a
time performs
crypto operations(crypto_provider is a wrapper over synchronous crypto
layer)
numbers are not so exciting: about 250-350 sessions per second, each one
works
with 32 bytes block. Test crypto consumer injects new session each 3
milliseconds.
An interesting note about linux work_queues: when I inject new
crypto_session each 2
msecs - work_queue's threads for 2 of 4 CPUs are loaded about the same
3-10% of
the CPU time, but when I inject sessions each 3 or 1 msec - only one
queue's thread
gets all sessions callbacks and takes about 100% of the CPU time.
With 2msec delay I get about 500 sessions per second, with 1msec -
little more than 1000.
pcix$ cat /sys/class/acrypto/crypto_provider/scompleted && sleep 1
&&cat /sys/class/acrypto/crypto_provider/scompleted
7044717
7045728
Please test, review and comment.
Signed-off-by: Evgeniy Polyakov <johnpol@xxxxxxxxxxx>
--
Evgeniy Polyakov
Crash is better than data corruption -- Arthur Grabowski
acrypto.patch
Description: Text Data
connector.patch
Description: Text Data
Kconfig.connector.patch
Description: Text Data
Kconfig.crypto.patch
Description: Text Data
Makefile.connector.patch
Description: Text Data
Makefile.crypto.patch
Description: Text Data
signature.asc
Description: This is a digitally signed message part
|