We are using OCF on top of HW crypto drivers which are implemented as Linux struct crypto_alg and registered via crypto_register_alg().

OCF cryptosoft is used as a bridge between OCF and Linux crypto APIs. Using this infrastructure, we expect the crypto will not take too much CPU load since crypto is done by the HW, but it looks like CPU load is higher than what we expected. Our typical data size is ~1500 bytes.

Did anybody have similar CPU load concern using OCF? We are wondering if avoid using copy_from_user() and copy_to_user() in cryptodev.c will help improve the performance. If anybody can share experience or suggestions on this, it will be highly appreciated.


Thanks a lot,